Skip to content

Releases: aces/Loris

LORIS Release v20.2.0

01 Feb 17:08
Compare
Choose a tag to compare

This release of fixes bugs, adds new permissions, and does various cleanup to different LORIS modules. For a complete list of features see here.

New Features

  • [Data Release] New permissions, cleanup and batch permission assignment (#3062)
  • [Login] Log bad password attempts (#3949)
  • [Data Release] Two new permissions added to this module (#4280)

Bug Fixes

  • [API] Fix bugs accessing /login and /projects/ endpoints (#4101)
  • [MediaUpload] Restrict file upload to candidate who has visited user's site (#4084)
  • [Data Dictionary] Fix multi-select filtering (#3922)
  • [MRI Violations] Fix duplication of MRI violations when multiple subprojects per candidate (#3860)
  • [Media] Restrict file upload to candidate who has visited user's site (#4084)

Notes

  • This release contains much general clean-up and Reactification of the code, as well as re-factoring javascript in some modules to use ES6 standards.

Upgrade process

  1. Update the code
  2. Source the SQL patch:
  • SQL/Release_patches/20.1_To_20.2_upgrade.sql

Known issues

  • [Media] "Please fill all required fields" error (Issue #4287)
  • [Issue Tracker] Wrong redirection when trying to edit an issue (Issue #4288)

LORIS Release v20.1.2

17 Dec 18:51
Compare
Choose a tag to compare

This release fixes two bugs found in the v20.1.1 release. In particular:

  • [instrument_list] A bug that could prevent users from accessing the instrument_list page is fixed (#4193)
  • [SQL] A typo in one of the optional SQL cleanup patches is fixed (#4205)

LORIS Release v20.1.1

07 Dec 19:45
Compare
Choose a tag to compare

This release fixes bugs found since the 20.1.0 release and creates the release SQL patches omitted in the 20.1.0 release.

  • [Imaging Uploader] Prevent duplicate insertions #4024
  • [Feedback MRI Popup] Don't call functions that don't exist! #4092
  • [Statistics] Fix PHP Notices on Imaging Statistics #4129
  • [Core: Utility] Add code comment on calculateAge() #4137
  • [Configuration] Clarify warning when creating new subprojects #4152
  • [ImgBrowser, DicomArchive] Prepend PatientName to DICOM download filename #4157
  • [Core: Middleware] Restore 403 page to its former beauty #4166

Due to the change in the SQL patches, the new release procedure becomes:

  1. Update your code
  2. Source the SQL release patch SQL/Release_patches/20.0_To_20.1_upgrade.sql
  3. [Optional] Source the clean-up patch SQL/Archive/20.1/Cleanup/2018-08-20_remove_duplicate_incoming_path_from_config_tables.sql

LORIS Release v20.1.0

03 Dec 18:52
Compare
Choose a tag to compare

This release of LORIS cleans up PHP notices and security fixes and improves parts of the documentation. In addition to that, it adds a few new features. For a complete list of features see here

New Features

  • [Core: Login, User Accounts] Allow certain users to access the system in a time window basis (either accounts that don't activate until the future, or accounts that expire.)
  • [Imaging Uploader] Validate filename in front-end before attempting upload.

New Development Features

  • [React] Added loader component to standardize loading messages
  • [Database ] Added On Duplicate Update Function to Database Class

Deprecations

  • [tools] The excelDump script was moved into the tools/deprecated/excelDump as it depended on an old and deprecated library which is no longer maintained.

Upgrade process:

  1. Update the code
  2. Source the SQL files:
  • SQL/New_patches/2018-08-22_user_activeFrom-activeTo.sql
  • SQL/New_patches/2018-08-20_relabelling_MRI-Upload_Directory_to_MRI_incoming_Directory.sql
  • SQL/New_patches/2018-08-16_make_config_lookup_center_a_drop_down.sql

(Note this release was accidentally published on GitHub before the concatenated patch was ready. A v20.1.1 bugfix release should simplify the upgrade.)

LORIS Release v20.0.2

05 Nov 15:00
Compare
Choose a tag to compare

This fixes minor bugs found since the v20.0.1 release. In particular:

  • [Upgrade Tools] Fix a bug in the DB_date_zeros_remove.php script to handle non-nullable fields (#3709)
  • [Document Repo] Add an error message if no data is available to download (#3888)
  • [Security] Better sanitization of commands in Server Processes Manager (#3944)
  • [Docs] The README now specifies Apache 2.4 is requires (#3976)
  • [Security] Fixes a possible XSS exploit in error pages (#4026)
  • [Media] the media_write permission is now sufficient for accessing the media module (#4028)

Various warnings are also fixed in different modules throughout LORIS.

LORIS Release v20.0.1

27 Aug 18:58
Compare
Choose a tag to compare

This fixes minor bugs which didn't have fixes ready in time for v20.0.0. In particular:

  • [API] Header formatting is more consistent in v0.0.3 documentation in documentation (#3758)
  • [BVL Feedback] CSS is adjusted to make it possible to close entries with very large titles (#3715)
  • [Instruments] A 401 error is returned instead of a 500 error when the user is not logged in 500 (#3665)
  • [Error Template] The text "Go to login page" is replaced by "Go to main page" so that it's accurate for logged in users who are sent to the dashboard.
  • [SQL schema] Some keys are made more explicit in order to make it possible to install LORIS in clustered environments (#3767)
  • [UI] Remove the scroll bar that incorrectly appears under frozen headers (#3605)

LORIS Release v20.0.0

11 Aug 12:38
0e6abdc
Compare
Choose a tag to compare

LORIS v20.0 is the next major release of LORIS. This release contains several bug fixes and user interface improvements as well as a some new features and a lot of code clean-up.

New Features

  • DICOM download has been added to the [API], and to the [Imaging Browser] and [DICOM Archive] modules. Users can download a package (.tar) of all DICOMs from a single upload/session in one click. Increase the memory_limit parameter in your php.ini to enable larger downloads.
  • [Core] Multiple CouchDB databases now supported in CouchDB.class.inc
  • [Media] Search by language on uploaded files

Updates and Improvements

  • [Create Timepoint] Visit labels must be selected from pre-defined list, instead of entered manually, when creating a new timepoint (#3209)
  • [API] Users affiliated with multiple sites can now create candidates and timepoints at any of those sites
  • [ImagingPipeline] Specific scan types can now be excluded from the insertion pipeline (including DICOM-to-MINC conversion) via the Configuration module.
  • [Core] New data framework for separation of data access and permission layers
  • [Core] New HTTP Server Request Handlers conform to PSR15 standards
  • [Candidate Parameters] re-organization of tables for storing consent information

Documentation

  • Readmes added inside more module directories -- documenting the Purpose, intended users, Scope, Permissions, configurations and interaction of the module with the rest of LORIS

Notes for Existing Projects

Several scripts should be run -- See details under Upgrade Process -- for:

  • Bugfix in the [Imaging Browser] script
  • mri_protocol table (script)
  • Consent architecture update (script)

Upgrade Process

Several steps are involved in this LORIS release upgrade, due to database schema constraints.

Your LORIS must be updated to 19.1.0 or higher before beginning this upgrade.

Procedure A : recommended for production machines.

  1. Get the latest release code (download and extract)
  2. Run composer install --no-dev from the Loris root directory to update PHP dependencies.
  3. Source the 19.1_To_20.0_upgrade.sql SQL file into the database
  4. Run the script Normalize_Consent_Data.php from the tools/single_use directory
  5. Run the script Normalize_protocol_split_rows.php from the tools/single_use directory
  6. Run the script Update_scan_type_of_mri_violations_log_when_manual_caveat.php from the tools/single_use directory

Optional: Cleanup

  1. First, verify that all data has been successfully transferred to the new consent, candidate_consent_rel and candidate_consent_history tables. Any data not transferred will be erased in the next step.
  2. Run the SQL/Archive/autogenerated/single_use/delete_old_consent_tables.sql to delete the previous consent columns in the participant_status and consent_info_history tables.

Procedure B : recommended for development installations

These commands serve as an example and might vary from machine to machine. These were tested on a Ubuntu 16.04 VM

  1. Get the latest release code (download and extract OR git pull)
  2. Run composer install from the Loris root directory to update PHP dependencies.
    • If errors occur you are probably missing phan dependency, follow the steps below:
      • Run apt-get install php-ast to install ast required for phan
      • Run composer install again to confirm everything was properly set up
    • If no errors occur, continue to Step 3
  3. Source the 19.1_To_20.0_upgrade.sql SQL file into the database
  4. Run the script Normalize_Consent_Data.php from the tools/single_use directory
  5. Run the script Normalize_protocol_split_rows.php from the tools/single_use directory
  6. Run the script Update_scan_type_of_mri_violations_log_when_manual_caveat.php from the tools/single_use directory
  • See Optional: Cleanup step above

LORIS Release 19.1.2

08 Aug 19:27
Compare
Choose a tag to compare

This a bug that was discovered after the 19.1.1 release. In addition to a number of PHP warnings being fixed, the following bug fixe is included:

  • Prevent deletion or granting of permissions to a user if the editor (individual modifying the permission of another user) does not own the permission in question themself.

LORIS Release 19.1.1

14 Jun 14:15
Compare
Choose a tag to compare

This fixes bugs that were discovered after the 19.1.0 release. In addition to a number of PHP warnings being fixed, the following bug fixes are included:

  • Links to incomplete forms on the dashboard now work
  • The installer is more robust in detecting whether it's being run behind HTTP or HTTPS (including when run behind a proxy using HTTP)
  • Fixes the retrieval of file QC info in the API, and now allows hyphens in file names.
  • Fixes a bug where filenames that have a "+" could not be downloaded from the document repository

LORIS Release 19.1

03 May 19:42
Compare
Choose a tag to compare

This release primarily improves the technical documentation of LORIS modules, by adding a README.md file to each module which describes the scope, use, and configurations which affect the module.

In addition to that, it adds a configuration option which permits the instrument links in the Imaging Browser to be customized, and begins work on a (still under-development) v0.0.3 version of the API. The development version adds support for an endpoint which allows you to get all images that have been uploaded to a LORIS instance, optionally filtered by date.

Upgrade Notes

To upgrade LORIS from 19.0, you must do the following:

  • Upgrade the code
  • Run the SQL patch SQL/Release_patches/19.0_To_19.1_upgrade.sql