Skip to content

Releases: aces/Loris

LORIS Release v24.1.3

24 Mar 12:48
488bec8
Compare
Choose a tag to compare

This releases fixes bugs that were discovered since the v24.1.2 release. Most notably:

  • [issue_tracker] Make Comments and History easier to read #8370
  • [document_repository] Fix download path to correct user #8378
  • [media] add feedback to dropdown field when is empty #8402
  • [imaging_browser] Fix control panel positioning #8424
  • [examiner] Remove link to edit examiner if certification is not enabled #8425
  • [SQL] Fix 23 Cleanup patches #8430
  • [Build] apt deps issue #8431
  • [dqt] Fix loading saved query #8436
  • [SQL] 24.0.0 release patch fix truncation error #8438
  • [Genomic Browser] UserSiteMatch fix #8468
  • [SQL] Fix hardcoded parent ID for IssueTrackerDataPath in patches #8475

LORIS Release v24.1.2

08 Mar 14:31
fc90747
Compare
Choose a tag to compare

This releases fixes bugs that were discovered since the v24.1.1 release. Most notably:

  • [SQL] Reorder release patches for 24.0 release #8390
  • [Performance] Do not load module logger from constructor #8200
  • Download NIfTI file from imaging browser when a NIfTI file is available in addition to a MINC file #8206
  • [behavioural_qc] Fix critical error #8245
  • [issue tracker] Email watchers when issue is updated or created #8248
  • [core] return error message on invalid dob (rebase 24.1) #8279
  • [core] Fix incorrect message/error for instrument access #8284
  • [tools] Fix path in recreate_conflict #8292
  • [issue tracker] Fix emailing bug found in HBCD #8300
  • [issue_tracker] make assignee drop down not required #8301
  • [issue tracker] Fix issue description #8351
  • [imaging browser] Fix download of JSON, Bval and Bvec files when they are on s3 #8354
  • [imaging browser] Fix Human dangling out of nowhere #8363
  • [NDB_BVL_Instrument] Add get function to access protected selectMultipleElements #8381
  • [CSS/instruments] Fix control panel position when scrolling #8383
  • [MRI Violations] Fixes links to BrainBrowser from the MRI violations module #8392
  • Update CONTRIBUTING.md #8421

Full Changelog: v24.1.1...v24.1.2

Upgrade Process from version 23.X.Y to 24.1.2 (amendments)

Note: The instructions below REPLACE the instructions in the release notes of released versions 24.0.0 AND 24.1.0. The instructions in those releases should be disregarded.

23.x.y to 24.0.0

  1. Get the 24.1.2 source code
  2. Source the SQL/Release_patches/23.0_To_24.0_upgrade_A.sql SQL file into your database.
  3. Run the following scripts:
    1. php tools/configuration_check.php
      This script is used to validate the configuration of LORIS. It checks configuration settings and server paths to make sure that the application and underlying architecture are set up to allow LORIS to run properly.
    2. php tools/single_use/SaveUserIDToInstrumentData.php confirm
      This script is intended for a one-time use only to restore the value of the UserID column of instrument tables and the UserID key of the instrument JSON Data in the flag table.
    3. php tools/single_use/remove_publication_users_edit_perm_rel_duplicates.php
      This script deletes duplicate rows in publication_users_edit_perm_rel to make sure the patch '2020-01-07-publication_users_edit_perm_rel_pk.sql' will execute successfully
    4. php tools/single_use/Cleanup_Special_Chars_Document_Repository.php
      This script is written to clean up the files with special characters from the document repository data table as well as clean up the quotes appearing as %22 in the file names in the file system
    5. php tools/single_use/Cleanup_Special_Chars_Media.php
      This script is written to clean up the files with special characters from the media data table as well as clean up the quotes appearing as %22 in the file names in the file system
    6. php tools/single_use/Remove_duplicate_examiners.php
      This script is written to clean up duplicate userIDs in the examiners table
  4. Make sure the RegistrationProjectID column in the candidate table of the dataabse does not contain any NULL values. If it does, either assign an existing project to the candidate/scanner or create a new project for these entries before running the release patch (see "Notes for existing projects" for more details).
  5. Source the SQL/Release_patches/23.0_To_24.0_upgrade_B.sql SQL file into your database.
  6. Run the following scripts:
    1. php tools/single_use/populate_visits.php
      This script populates the visits table based on the config.xml, session table and Visit_Windows table.
    2. php tools/single_use/Set_Required_elements_completed_flag.php confirm
      This script is written to migrate the Data_entry_completion_status field from the instrument table (or Data column of the flag table) to it's own column in the flag table called Required_elements_completed. Note that this script can take a long time to complete on large projects.
  7. Run make all on the LORIS root directory
  8. OPTIONAL: Source SQL patches from the SQL/Archive/24.0/Cleanup directory at your discretion to remove superfluous or deprecated entries in the database.
  9. OPTIONAL: Run the tools/single_use/Remove_Data_entry_completion_status_instr_column.php PHP script to generate an SQL patch containing all DROP COLUMN statements for the now unused Data_entry_completion_status field in instruments. This script will generate the SQL patch and store it in the SQL/Archive/autogenerated/single_use/ directory under the name Remove_Data_entry_completion_status.sql.
  10. OPTIONAL: Remove the <visitLabel subprojectID="X"> tags in the Config.xml file

NOTE: The tools/single_use/SaveUserIDToInstrumentData.php can take several hours up to a day to run depending on the size and age of the databse and number of instruments used

24.0.0 to 24.1.2

  1. Source the SQL/Release_patches/24.0_To_24.1_upgrade.sql SQL file into your database.
  2. If you have LORIS-MRI installed, make sure to upgrade LORIS-MRI to 24.1.0 since the SQL changes will affect the MRI insertion scripts.

LORIS Release v24.1.1

10 Nov 18:44
4211ddb
Compare
Choose a tag to compare

This releases fixes bugs that were discovered since the v24.1.0 release. In particular,

  • [instrument_manager] Fix page load by @driusan in #8183
  • [EEG Browser] Make fix [v24.1] by @laemtl in #8186
  • fix generic_includes for 24.1 by @cmadjar in #8192
  • [RB] fix instrument scoring and alot of whitespaces by @ridz1208 in #8189
  • [Imaging Uploader] Replace 'MINC' string by 'Files' in the imaging uploader column since imaging files created and inserted are not necessarily MINC files anymore by @cmadjar in #8205
  • [SQL] Make release patch compatible with mariadb 10.3 by @ridz1208 in #8225

Full Changelog: v24.1.0...v24.1.1

LORIS Release v24.1.0

05 Oct 19:42
af2c9b1
Compare
Choose a tag to compare

Important Note: The release instructions below may result in an exception caused by a circular dependency. In order to resolve the error we suggest upgrading directly to LORIS version 24.1.2 and running the instructions recommended in that release. All other information in the release note below are still accurate

LORIS 24.1 (Release Date: 2022-10-05)

Core

Updates and Improvements

  • Addition of PhaseEncodingDirection and EchoNumber columns to the mri_protocol
    and mri_protocol_violated_scans tables to allow for better discrimination between some
    MRI sequences.
  • Addition of PhaseEncodingDirection and EchoNumber columns to the files, files_qcstatus
    and feedback_mri_comments tables to ensure uniqueness keys for specific GE sequences for
    which the SeriesUID/EchoTime combination is not enough (PR #8152).
  • Addition of image_type, PhaseEncodingDirection and EchoNumber fields to the tables
    present in the "Could not identify scan" page of the MRI violation module (PR #8156)
  • Modification of the list of headers displayed in the image panel headers table (PR #8157)

Bug Fixes

  • Bug fix to the imaging uploader so that when clicking on an upload row, the row is
    highlighted and the proper log is being displayed in the log viewer (PR #8154)
  • Remove SNR label from the image panel of the imaging browser when no SNR values can
    be found for the image (PR #8155)
  • Add the missing download buttons for BVAL, BVEC and JSON files that comes with BIDS/NIfTI
    dataset/images. In addition, the "Download MINC" button has been renamed to a more generic
    label "Download Image" (PR #8159)
  • Fix ConfigurationException bug (PR #8107)
  • Fix PHP fatal error when running the LORIS installation script (PR #8108)
  • Add psr/log to composer (PR #8109)
  • Fixed broken DB calls in assign_missing_instruments and instruments (PR #8162)
  • Add support for PHP 8.1 (PR #7989)

Modules

API

  • Ability to use PSCID instead of the CandID in the candidates API (PR #8138)

Upgrade Process

(See https://github.com/aces/Loris/releases/tag/v24.1.2)

  1. Get the 24.1.0 source code
  2. Source the SQL/Release_patches/24.0_To_24.1_upgrade.sql SQL file into your database.
  3. If you have LORIS-MRI installed, make sure to upgrade LORIS-MRI to 24.1.0 since the SQL changes will affect the MRI insertion scripts.

LORIS Release v24.0.3

14 Jul 21:45
926fac1
Compare
Choose a tag to compare

This release fixes some installation dependencies issues found after 24.0.2 and ass the "file" type to the data dictionary list of types.

  • [instruments] fixes getDataDictionary() not support the 'file' type (#8119)
  • [Composer] fix composer and error (#8115)

It also incorporates the changes from v23.0.12:

  • [DQT] Fix dictionary builder and dictionary display issues (#8116)
  • [user_accounts] Revert #2018 - Sanitization before validation of email falsifies validity (#8137)
  • [user_accounts] Prevent crash when one user has no site/project affiliations (#8139)

LORIS Release v23.0.12

14 Jul 20:09
87f29a9
Compare
Choose a tag to compare

This release fixes some bugs found in 23.0.11.

For additional information on any of these changes feel free to consult the list below:

  • [DQT] Fix dictionary builder and dictionary display issues (#8116)
  • [user_accounts] Revert #2018 - Sanitization before validation of email falsifies validity (#8137)
  • [user_accounts] Prevent crash when one user has no site/project affiliations (#8139)

LORIS Release v24.0.2

06 Jun 14:57
03f4440
Compare
Choose a tag to compare

This release fixes a bug found in v24.0.1 as well as updates some documentation and messages on the user interface. For additional information on any of these changes feel free to consult the list below:

  • [WIKI] datadict trait and version update #8098
  • [canidate_list/timepoint_list] Do not filter sites with access_all_profiles permission #8096
  • [timepoint_list] Update error message when no access to timepoints #8095

LORIS Release v23.0.11

06 Jun 14:25
d04ad08
Compare
Choose a tag to compare

This release fixes mainly known issues with the functionality of LINST instruments. For more detailed changes, visit the link below:

  • [LINST/Instruments] Backporting fixes from 24 + group errors #8091

LORIS Release v24.0.1

04 May 18:58
8bf4632
Compare
Choose a tag to compare

This fixes a problem with compiling the v24.0.0 build in some environments by adding some dependencies so that types can be properly resolved.

LORIS Release v24.0.0

24 Mar 19:28
d2f2684
Compare
Choose a tag to compare

Important Note: The release instructions below may result in an exception caused by a circular dependency. In order to resolve the error we suggest upgrading directly to LORIS version 24.1.2 and running the instructions recommended in that release. All other information in the release note below are still accurate

This release contains user interface improvements, code clean up, bug fixes and new features across all modules in LORIS.

Full list of changes

Some of the major changes in this release are:

Core

Features

  • Data tables may now stream data as they're loading rather than waiting
    until all data has loaded. (PR #6853)
  • Added support for Amazon S3 (PR #7963)
  • Added ability for scripts to bulk load instrument data (PR #6869)
  • New data dictionary framework and module (PR #6936)
  • New classes to describe a data dictionary (PR #6938)

Updates and Improvements

  • Module-specific permissions added for Survey Accounts, Imaging Behavioural
    Quality Control, and Behavioural Quality Control. (PR #6041)
  • Addition of a new account_request_date in users table that will be used when
    requesting a new account and will be displayed in the User Accounts module (PR #6191)
  • Candidate's age can be retrieved from the Candidate class in days, months, or years (PR #5945)
  • Addition of autoSelect property to React SelectElement allows for auto-selection of
    only available select option (PR #6156)
  • An AcquisitionDate field has been added to the files table (PR #6892)
  • Field Data_entry_completion_status given its own column in flag, and renamed to
    Required_elements_completed (PR #6876)
  • Addition of changeProject and resetProject helper functions to the
    LorisIntegrationTest class to help test project permissions (PR #6912)
  • Unit tests added for the NDB_BVL_Instrument, NDB_Page, NDB_Factory,
    User, and UserPermissions libraries (PR #6819, PR #6804, PR #6776, PR #6765)
  • The name of a Standard Date field in a LINST instrument must now end with the
    string _date. Otherwise, a LORIS exception is thrown. There is no restriction
    on the naming format of a Basic Date or MonthYear field. (PR #6923)
  • React Form Select Element now has the ability to set an option in the element
    as a disabled option. (PR #7306)
  • Pending accounts in Dashboard now includes DCC users (PR #7054)
  • Subproject filter added to Behavioural QC module (PR #7430)
  • Addition of date_format as a DataType in ConfigSettings (PR #6719)
  • Addition of new tables to store PET HRRT data (PR #6142)
  • Modification of the parameter_file table's Value field type to longtext (PR #7392)
  • Addition of 4 configuration settings for the minc2bids converter (PR #7488)
  • A PSR3 compatible logging interface was added (PR #7509)
  • Multiple classes of errors flagged by phan are now fixed (multiple PRs)
  • A LorisInstance class was added to represent an installed LORIS instance (PR #6118)
  • Validation for DateElement (JS). (PR #7266)
  • Session Current_stage default value changed for Not Started (PR #7102)
  • Permissions were reorganized and categorized in the user accounts module (PR #7327)
  • The EchoTime field has been added to the following tables: MRICandidateErrors,
    and mri_violations_log. EchoTime is necessary to distiguish MINC files for
    multi-echo aquisitions (PR #7515).- The Center_name field in the mri_protocol table has been replaced by CenterID
    from the psc table. The default value of CenterID is NULL. Previously, the
    default for Center_name was AAAA or ZZZZ. (PR #7525)

Bug Fixes

  • A LINST instrument Date field name now appears correctly (not truncated) on the
    instrument if it includes the string _date. (PR #6923)
  • A subtest with only static and/or static score fields (i.e. no values to submit)
    can be saved with no errors so that the instrument scoring script can be called. (PR #7124)
  • When a superuser edits another user, the labels for each permission is correctly
    displayed (PR #7451)
  • The imaging insertion pipeline (LORIS-MRI scripts) now starts automatically if you have the imaging uploader
    auto-launch set to true and your current upload overwrites an existing file (PR #7084).
  • Script CouchDB_MRI_Importer now computes the correct names from the data dictionary
    entries associated to MRI comments (PR #7082).
  • Candidate library now allows a null sex in the select() function to accommodate
    scanner candidates. This prevents an error from being thrown in the candidate parameters module. (PR #7058)
  • Fix public pages with missing title (PR #7121)
  • Fix "Go to main page" broken link (PR #7258)
  • Download CSV fix to remove duplicates and entries that partially match the filtering criteria (PR #7242)
  • Partially fix instrument escaping issues by reloading instrument and its data upon successful save (PR #7776)
  • Fix recognition of null sessionID in NDB_BVL_Instrument (PR #8031)

Modules

API

  • Creation of a new version of the API under development (v0.0.4-dev) (PR #6944)
  • Deletion of support for the oldest version of the API (v0.0.2) (PR #6944)
  • Addition of a PATCH request for /candidates/$CandID/$VisitLabel to start next
    stage when the payload contains a "Visit" stage with "In Progress" as Status,
    when the current status of the Visit stage is "Not Started". (PR #7479)
  • Handle characters that must be urlencoded (such as a space) in the API path for
    visit labels and projects. (PR #7478 & #7463)
  • Markdown API documentation was moved into the module docs directory (PR #6151)

API Documentation (New Module)

  • New module mostly intended for developers, this module provides a user
    interface to inspect and try LORIS modules API.

Behavioural QC

  • Fix a fatal error if the datatable is filtered with "All instruments" (PR #6945)
  • Fix for the Instrument filter to keep track of the selected value (PR #6945)

BrainBrowser

  • Now uses Loris API to download imaging files (PR #7824)

Candidate Parameters

  • Consents may now be grouped in UI of consent tab (PR #6042, PR #6044)
  • Fix to prevent titles cut off (PR #6731)

Candidate Profile

  • New integration test class to test project permissions (PR #6912)

Configuration

  • Addition of configuration settings for the DICOM to BIDS insertion pipeline (PR #7937)
  • Addition of configuration settings for the MINC to BIDS converter script (PR #7488)

Conflict Resolver

  • Changes are now saved automatically, one by one. Once a conflict is resolved
    the cell that contains the input field will glow green. It is possible to change
    the resolved conflicts to a new value until the page is refreshed. (PR #7558)
  • This module's API is now described in a Open API Specification file (schema.yml)
    that can be loaded in the new API Documentation module.
  • Change the display of multi select values from "value1{@}value2" to "value1, value2"
    in the Correct Answer column of Unresolved and Resolved Conflicts. (PR #7239)

Create timepoint

  • Fix a reindexing of the languages array which caused a database insert error. (PR #7145)
  • Reorganization of the fields on the page to a more logical order, clean up of
    inefficient code and conditional display of select options based on previous selections (PR #7825)

Data Dictionary

  • Changed instrument filter to multiselect (PR #7040)

DQT

  • The dataquery module user interface has been completely redesigned. (PR #6908)

EEG Browser

  • Signal Visualization, Events and Electrode map (PR #7387)
  • Site/Project/subproject filters only displays entries user has permission for. (PR #7400)
  • Addition of tables in the SQL schema, a filter on the main page of the module, and a download button
    on the session page to support new annotation features (PR #7345)
  • New integration test class added to this module (PR #6922)

Genomic Browser

  • CNV/CPG records added for candidates to view and test the CNV and Methylation tabs in the Genomic Browser (PR #6900)

Help Editor

  • Cleaned up the deprecated column Parent Topic (PR #7025)

Imaging Uploader

  • Fixed a bug that would prevent the imaging uploader from starting automatically even if you had the imaging uploader
    auto-launch set to true and your current upload overwrote an existing file (PR #7084)
  • Use Loris API to view files (PR #7816)

Instrument Builder

  • Fix for error 'Max value must be larger than min value' when clicking 'Add Row'. (PR #6810)

Instruments

  • General help text added for instrument data entry (PR #6902)
  • Fix to avoid select with required option in group fields to display as multiselect (PR #7254)
  • Fixes to insert JSON instruments (PR #7155)

Issue Tracker

  • Readability of comments and history was improved. (PR #6138)
  • Update validation to allow NULL Site (For All Sites issues) (#6526)
  • Fixing redirect and error reporting when creating a new issue (PR #7323)
  • Show inactive users in the list of assignees as a disabled option. If the
    inactive user had already been previously assigned the issue, the disabled option
    appears but cannot be reselected. Inactive users can no longer be assigned new
    issues. (PR #7306)

Login

  • Add option to toggle visibility on password input types. (PR #6210, #7043)

Media

  • Fix to display the file name when editing a file (PR #7381)

Publication

  • Display all filterable columns in datatable (#7277)
  • Fix for file deletion (PR #7284)

User Accounts

  • Fix a false positive validation error when a new LORIS user is added with "Make
    user name match email address" and "Generate new password". (PR #6803)
  • Fix to allow a superuser to create new users with customizable permissions. (#6770)
  • Indicate required fields (#6617)
  • Fix to show superuser the labels of each permission when editing a user ...
Read more