7. Release History

7.1. Release 1.2.1 (2019-05-13)

  • Allow quick removal of all output columns using a delete all button.

  • Allow customisation of status texts.

7.2. Release 1.2.0 (2019-04-29)

  • Multiple queries can now be selected in the project screen. This allows the user to request approval or export for multiple queries in one go.

  • Query approval requests now include details about the query: the query project; the number of rows in the query result; the populations and their sizes in the query result; the source tables accessed by the query.

  • Query approvals are now scheduled as asynchronous jobs, to aid in responsiveness for the ui, while allowing full analysis options for query detail determination.

  • Highlight query authorisation and export status conforming to AA accessibility standards.

  • Show the size of underlying source tables in the query ui.

  • Allow quick removal of all query filters using a delete all button.

  • Allow ENTER press in IE11 to run a filter.

  • Using new DAS API call for multiple contexts in allowed operations.

  • Enable searchable dropdown boxes for queries and attributes.

  • Added option to disable filtering on PII attributes.

  • Disable caching of dropdowns in IE11.

  • Add insert list modal for in/not in queries.

  • Allow customisation of approval and export button and modal texts.

  • Run programs within container as non-root user. Note that this requires setting the user in stack.yml: ‘user: mgrid’.

  • Allow running the container in read-only mode. The /etc/mgrid and /tmp directories need to be writable. In stack.yml: ‘read_only: true’ and under volumes ‘- /etc/mgrid’ and ‘- /tmp’.

7.3. Release 1.1.2 (2019-01-21)

  • Fix ‘results could not be loaded’ error.

  • More robust handling of deid batch sizes.

  • Renaming a query updates its name in DAS.

  • Autosize dropdown boxes for dataset items.

  • Fixed ability to override default CA certificates.

7.4. Release 1.1.1 (2019-01-14)

  • Fix filter list not displaying the full set of options.

7.5. Release 1.1.0 (2019-01-11)

  • Fix IE11 “is within date in dataset” and “is within date”.

  • MGRID branding update. Added CONTACT_EMAIL setting.

7.6. Release 1.0.9 (2018-12-31)

  • More robust handling of output column deletions.

  • Disallow two queries to share the same name.

  • Document model database upgrade procedure.

  • Improved database connection handling.

7.7. Release 1.0.8 (2018-12-11)

  • Fix IE11 caching of queries, sample and population.

  • Disallow simultaneous session logins for the same user.

  • Make session cookies harder to copy.

  • Disallow requesting approval on an empty query.

  • Improved test coverage of interaction between QueryBuilder and DAS.

  • Fix for data not refreshing correctly in the project page. If the user stayed on the project page when a request was approved, the export button was clickable, but did not perform the action.

7.8. Release 1.0.7 (2018-11-22)

  • Added ability to set the application log level.

  • Disable action on request approval and export buttons when they are grayed out.

  • Fix dragging and dropping into output column in IE11.

  • Fix new query being ready for export.

  • Improved job error handling. If a job fails, the user is informed in the UI and the job is not automatically retried.

  • An SFTP key error or mkdir error now closes the SFTP transport.

7.9. Release 1.0.6 (2018-11-14)

  • The SFTP session was not closed when an export finished, resulting in Paramiko logging about unhandled channel request keepalive@openssh.com.

  • When a user logs in and has no access to projects, a warning is shown instead of redirecting to the login page.

  • When generating the query for a join using multiple implicit keys now sort the implicit key names to ensure deterministic generation.

  • Gray out request approval button when user is already authorised and gray out export button when user is not allowed to export.

7.10. Release 1.0.5 (2018-11-08)

  • Allow query definitions that return 0 rows because of empty source tables.

  • Validate project creation and updating parameters more strictly to avoid incomprehensible errors on wrong content-type of client. For creation ‘name’ and ‘authgroup’ are mandatory, for updating at least one field must be present.

  • Improved ‘is within dates’ operator that also allows qualifiers for before/after boundaries. The filter description needs to be changed for old filters using between_dates. An database upgrade will remove these filters from existing query definitions.

  • If an empty database is found at startup, the database is initialized and stamped with the current source revision.

  • Screen height was fixed for tables, projections and filters, rendering the ui unusable if one of the three started getting large. Removed height restriction.

  • Allow list retrieval for all queries, even if a query has structural problems like broken filter specification. This allows users to still edit such queries.

  • Relax CSP style-src to allow jquery modifications to HTML elements.

  • Better client side validation; textually point out what filter attribute is wrong, do not attempt to load results if client side filter validation fails.

  • Improved error reporting for management API. Getting, putting and deleting an unknown project now results in 404 status and descriptive message in JSON.

7.11. Release 1.0.4 (2018-10-22)

  • Always retrieve displayName for AD users at AD login. This displayName will be stored as the users’ fullname, and be used to display ‘Signed in as fullname’ in all ui screens. If no displayName can be retrieved, we fall back to the part of the upn leading up to the first at sign.

  • Add management API documentation.

  • Fix incorrect handling of multiple schemas. This bug resulted in Querybuilder thinking that a table should also be present in schemas other than the one it is actually in.

  • Fix permission denied error on flask_session directory. The default setting now uses a subdirectory of /tmp.

7.12. Release 1.0.3 (2018-09-26)

  • Added two factor authentication using DUO

7.13. Release 1.0.2 (2018-09-11)

  • Ensure that a particular population is only counted once, even if multiple accessors (same population identifier, from different source tables) are available.

7.14. Release 1.0.1 (2018-08-09)

  • Increased font size to work better on small screens

  • Renamed query screen panes to ‘Output Columns, Filter Conditions, Preview Results’

  • Renamed ‘Overview’ screen to ‘Home’.

  • Allow drag-and-drop of tables into Output Columns for quick table selection

  • New dataset operator ‘between days around date’. Allows dates for current query to be compared to within a range on a different event query. E.g. allows first to select for a specific event in one query, and then to select items around that date in a second query.

  • Improved client side validation of filter values. This allows users to explore inputs and makes for a more intuitive ui.

  • Added default deidentification. World definition allows identification of sensitive attributes. During export these are deidentified, during preview they are shown in ui as ‘deidentified’.

  • Added default export destination. Export destination is set on a per provisioned project basis and allows users to simply export by pressing export with no further selection.

  • Added population counts for current query. Within the world definition the administrator can mark certain fields as identifiers for a population. E.g. patient_id identifies patient, or hadm_id identifies hospital_admission. If available these populations are tallied and displayed on the ‘Results preview’.

  • Authorisation via DAS now operates on the SQL query as posed by the user. This allows a data steward insight in the query that the users wishes to execute for export.

7.15. Release 1.0.0 (2018-06-09)

  • First release