Skip to content

Release Notes

2.1.3_24.0.2 [2024-10-18]

Enhancements:

  • Added HPC (High Performance Computing) capabilities with directory linking and writability checks
  • Added setup directory to .dockerignore for improved Docker build context

Fixes:

  • Fixed FreeSurfer license installation to use writable directory when available for HPC environments
  • Fixed test assertion methods to use assert_called_once() instead of called_once property

Maintenance:

  • Updated flywheel-bids dependency from git reference to versioned package ^1.2.25
  • Removed override of test:gear that used larger runner in .gitlab-ci.yml
  • Reorganized Dockerfile stages with improved reprozip installation placement
  • Updated Dockerfile base image stage naming and comments for clarity
  • Consolidated apt-get operations in base image for better layer efficiency

Documentation:

  • Converted CONTRIBUTING.md formatting from HTML-style bold/italic to markdown (__text__**text**, *text*_text_)
  • Standardized list markers from * to - throughout CONTRIBUTING.md and README.md
  • Fixed indentation and formatting inconsistencies in README.md
  • Added missing blank line in FAQ.md for proper markdown formatting
  • Improved code block formatting and removed trailing spaces in documentation

2.1.2_24.0.2 [2024-09-25]

Enhancements:

  • Added autoupdate.py module for automated Dockerfile and manifest synchronization
  • Added platform test script for automated gear testing on Flywheel instance

Maintenance:

  • Upgraded python from 3.9 to 3.12 in CI pipeline and Docker image
  • Updated base Docker image to flywheel/python:3.12-debian
  • Updated nipreps/mriqc from 24.0.0 to 24.0.2
  • Updated flywheel-bids to use latest from master branch
  • Upgraded pytest from ^6.1.2 to ^7.0
  • Upgraded pytest-cov from ^3.0.0 to ^4.0
  • Upgraded pytest-mock to ^3.11
  • Removed pyzmq version constraint workaround
  • Added linux-libc-dev security upgrade to Dockerfile
  • Updated environment variables: added MAMBA_ROOT_PREFIX, NUMEXPR_MAX_THREADS, TEMPLATEFLOW_HOME, and UV_USE_IO_URING
  • Updated LD_LIBRARY_PATH and PATH environment variables for new Python version
  • Migrated Ruff configuration to new lint.* prefix format

2.1.2_24.0.0 [2024-08-12]

Enhancements:

  • Updated MRIQC BIDS algorithm from version 23.1.0 to 24.0.0
  • Added instructions in README for updating the BIDS algorithm version

Fixes:

  • Fixed FSL license documentation link from fsldownloads_registration to fsl/docs/#/license

Maintenance:

  • Migrated CI configuration from sse-qa-ci to qa-ci project
  • Updated .gitlab-ci.yml to use gear-specific CI template with medium runner
  • Updated .pre-commit-config.yaml hooks including hadolint, jsonlint, linkcheck, markdownlint, and yamllint
  • Added --no-cache-dir flag to pip install commands in Dockerfile
  • Updated Python symlink in Dockerfile to use /usr/local/bin/python3.9
  • Updated flywheel-bids from git source to version 1.2.17
  • Added development dependencies: packaging, ordered-set, more_itertools, importlib_resources, importlib_metadata, tomli, wheel, platformdirs

Documentation:

  • Fixed markdown formatting indentation in CONTRIBUTING.md

2.1.1_23.1.0 [2024-05-29]

Enhancements:

  • Added gear-FREESURFER_LICENSE configuration option to accept FreeSurfer license text as space-separated input
  • Added gear-expose-all-outputs configuration option to retain all extra output files created during the run
  • Added gear-intermediate-files configuration option to specify individual files to retain from intermediate work directory
  • Added gear-intermediate-folders configuration option to specify folders to retain from intermediate work directory
  • Added gear-save-intermediate-output configuration option to save all intermediate output as {{bids_app_binary}}_work.zip
  • Added validation pipeline to check gear-dependent configuration options before downloading BIDS data or running algorithms
  • Added support for parsing input files from manifest to make filepaths available for BIDS app commands
  • Added automatic copying of .bidsignore file from input directory to BIDS directory for validator runs

Fixes:

  • Fixed argument parsing to split --equals=sign x format into separate arguments instead of keeping them combined
  • Added pyzmq<26.0.0 version constraint to avoid broken builds in 26.0.1 and 26.0.2

Maintenance:

  • Updated flywheel-gear-toolkit from git reference to version ^0.6
  • Updated flywheel-bids from git reference to tag 1.2.14
  • Changed bids-app-modalities to bids-app-data-types throughout codebase
  • Added ruff_format pre-commit hook for code formatting
  • Updated Flywheel classification with function, modality, organ, species, and therapeutic area metadata
  • Changed gear suite from "BIDS Apps" to "Quality Assurance"
  • Updated PATH environment variable to prioritize /opt/ants and /opt/afni before conda
  • Added PWD environment variable set to /flywheel/v0
  • Changed api-key input from read-only to read-write
  • Refactored setup_bids_env to accept app_context as parameter instead of returning it
  • Applied code formatting improvements throughout codebase using ruff_format
  • Updated CI configuration from ci/default.yml to ci/large-default.yml
  • Added CI variables: APT_INSTALL, PUBLISH_POETRY, and CACHE_CLEAR
  • Cleared DEBUG variable default value in CI configuration

2.0.0_23.1.0 [2024-01-30]

Enhancements:

  • Added BIDS MRIQC gear for automatic prediction of quality and visual reporting of MRI scans
  • Added support for extracting no-reference Image Quality Metrics (IQMs) from T1w, T2w, and BOLD images
  • Added metadata storage of IQMs under file.info.derived.IQM field for analyzed files
  • Added HTML quality report generation for individual scans and group-level analyses
  • Added support for project, subject, session, and acquisition level analyses
  • Added group-level TSV summary file generation
  • Added anonymized quality metrics submission to MRIQC repository (opt-out available via no-sub config)
  • Added post-processing-only mode to regenerate reports from archived results
  • Added archived runs input support for reprocessing previous analyses

Maintenance:

  • Integrated MRIQC 23.1.0 algorithm from nipreps
  • Added flywheel-gear-toolkit and flywheel-bids dependencies
  • Added CI/CD pipeline with .gitlab-ci.yml configuration
  • Added pre-commit hooks for gearcheck, poetry_export, docker_build, ruff, and pytest
  • Set up testing framework with pytest, pytest-cov, and pytest-mock
  • Added python 3.9 support
  • Added multi-stage Dockerfile to isolate Flywheel dependencies from BIDS App image
  • Added .dockerignore to optimize Docker build context

Documentation:

  • Added README.md with gear overview, usage instructions, and workflow diagrams
  • Added CONTRIBUTING.md with development setup and contribution guidelines
  • Added FAQ.md for common questions and errors
  • Added LICENSE (MIT)