Skip to content

Release Notes

2.2.18_1.2.33 [2026-01-29]

Maintenance:

  • Updated flywheel-bids from 1.2.32 to 1.2.33
  • Added automated release notes generation using Claude Code CI integration

2.2.17_1.2.32 [2025-12-08]

Fixes:

  • Updated urllib3 to >=2.6.0 to address security vulnerabilities
  • Fixed unit tests to work with new dev instance (sse-latest-azure)

Maintenance:

  • Migrated from poetry to uv for dependency management
  • Updated python from 3.12.11 to 3.12.12
  • Removed .python-version file

2.2.16_1.2.32 [2025-09-03]

Maintenance:

  • Updated flywheel-bids from 1.2.29 to 1.2.32

2.2.15_1.2.29 [2025-07-02]

Enhancements:

  • Migrated from python 3.11 to 3.12 in Docker base image
  • Added uv package manager for faster dependency installation
  • Implemented multi-stage Docker build (base, build, dev, final)
  • Added non-root flywheel user for improved container security
  • Added VALIDATE_CLASSIFICATION environment variable to CI configuration

Fixes:

  • Fixed indentation and formatting issues in fw_curate_bids/BIDSCuration.py:filter_intended_fors
  • Fixed missing sidecar error handling to raise FileNotFoundError when sidecar files are not found and save_sidecar_as_metadata is False
  • Fixed inconsistent import ordering in multiple modules

Maintenance:

  • Updated .gitlab-ci.yml reference from specific SHA to sse branch
  • Updated .pre-commit-config.yaml reference from specific SHA to sse branch
  • Increased PYTEST_COV_FAIL_UNDER from 0 to 61 in CI configuration
  • Cleared DEBUG variable in CI configuration (previously set to "3")
  • Upgraded flywheel-bids from ^1.2.28 to ^1.2.29
  • Upgraded flywheel-sdk from ^17.0 to ^20.1.4
  • Upgraded pandas from ^1.3.3 to ^2.1.0
  • Added flywheel-gear-toolkit ^0.6 as explicit dependency
  • Moved development dependencies from [tool.poetry.dev-dependencies] to [tool.poetry.group.dev.dependencies]
  • Excluded stand_alone/ and notebooks/ directories in .dockerignore
  • Added eolfix, jsonlint, and ruff_format hooks to pre-commit configuration
  • Reordered ruff and ruff_format hooks in pre-commit configuration
  • Removed setuptools from Docker image
  • Moved fw_curate_bids/save_bids_curation.py to stand_alone/save_bids_curation.py
  • Moved tests/test_save_bids_curation.py to stand_alone/test_save_bids_curation.py
  • Created new fw_curate_bids/utils.py module with make_file_name_safe function
  • Added test_utils.py with comprehensive tests for make_file_name_safe
  • Refactored tests/test_main.py into individual test functions for better maintainability
  • Added noqa comments to suppress specific ruff warnings for complex functions
  • Removed trailing whitespace from public/.keep file

Documentation:

  • Fixed markdown formatting and trailing whitespace in CONTRIBUTING.md
  • Fixed markdown link syntax in CONTRIBUTING.md (changed from "Here" to "poetry options")
  • Updated broken documentation link in README.md from /Developer_Guides/dev_bids_curation_4_curation_report/ to /Developer_Guides/bids/curation_tutorial/dev_bids_curation_4_curation_report/
  • Updated broken documentation link in README.md from /Developer_Guides/dev_bids_curation_3_curation_gear_v2/ to /Developer_Guides/bids/curation_tutorial/dev_bids_curation_3_curation_gear_v2/

2.2.14_1.2.28 [2025-04-08]

Maintenance:

  • Updated flywheel-bids dependency from ^1.2.27 to ^1.2.28

2.2.13_1.2.27 [2025-03-28]

Maintenance:

  • Updated flywheel-bids from ^1.2.24 to ^1.2.27
  • Added flywheel-sdk ^17.0 as an explicit dependency

2.2.12_1.2.26 [2024-12-17]

Maintenance:

  • Updated flywheel/bids-client to version 1.2.26

2.2.11_1.2.24 [2024-12-06]

Fixes:

  • Fixed IntendedFor field population in file metadata for projects curated using legacy methods

Maintenance:

  • Updated python from 3.11.10 to 3.11.11
  • Removed jsonlint hook from .pre-commit-config.yaml

Documentation:

  • Updated Flywheel BIDS documentation links to new URL structure (/User_Guides//user/bids/)

2.2.10_1.2.24 [2024-10-03]

Maintenance:

  • Updated flywheel-bids dependency from 1.2.23 to 1.2.24

2.2.9_1.2.23 [2024-09-27]

Fixes:

  • Corrected documentation for ignore pattern from _ignore_BIDS to _ignore-BIDS in README.md:77

Maintenance:

  • Updated flywheel-bids from 1.2.22 to ^1.2.23

Documentation:

  • Added release notes for versions 2.2.8 and 2.2.9 referencing BIDS Client releases 1.2.22 and 1.2.23
  • Improved formatting and line wrapping in CONTRIBUTING.md and docs/release_notes.md

2.2.8_1.2.22 [2024-09-12]

Maintenance:

  • Version increment for maintenance release

2.2.7_1.2.22 [2024-09-12]

Maintenance:

  • Updated flywheel-bids from 1.2.21 to 1.2.22

2.2.7_1.2.21 [2024-09-11]

Enhancements:

  • Added support for reading IntendedFor lists from JSON sidecar files when not stored in NIfTI metadata

Fixes:

  • Fixed run counter for remaining reproin file types to ensure all files associated with a single scan are assigned the same run number
  • Applied temporary fix for force reloading session in project_tree.py:set_tree to ensure session["info"] is complete

Maintenance:

  • Updated flywheel-bids from 1.2.19 to 1.2.21
  • Updated python from 3.11.9 to 3.11.10

2.2.6_1.2.19 [2024-09-09]

Fixes:

  • Fixed curation error when attempting to add "Ignore" field to non-existent file BIDS metadata object

Maintenance:

  • Updated flywheel-bids from 1.2.18 to 1.2.19

2.2.5_1.2.18 [2024-08-21]

Enhancements:

  • Updated flywheel-bids from 1.2.17 to 1.2.18

Maintenance:

  • Updated .gitlab-ci.yml to reference flywheel-io/tools/etc/qa-ci (from flywheel-io/scientific-solutions/etc/sse-qa-ci)
  • Changed .pre-commit-config.yaml hook docker_build to hadolint for Dockerfile linting
  • Updated Dockerfile to use LABEL maintainer instead of deprecated MAINTAINER directive
  • Reformatted multiple JSON files for improved consistency

2.2.4_1.2.17 [2024-08-01]

Enhancements:

  • Added intended_for_regexes configuration support for filtering IntendedFor field mappings in BIDS metadata
  • Enhanced Dockerfile build process to install package as a proper Python package instead of copying files directly

Fixes:

  • Updated flywheel-bids from 1.2.14 to 1.2.17 to fix IntendedFor field handling for ignored files

Maintenance:

  • Added numpy<2.0.0 version constraint to prevent compatibility issues
  • Updated PYTHON_GET_PIP_SHA256 and PYTHON_GET_PIP_URL environment variables to newer versions

2.2.3_1.2.14 [2024-05-29]

Maintenance:

  • Initial release consolidating codebase from previous location in flywheel-apps
  • Updated to flywheel-gear-toolkit for gear context management
  • Updated to latest Flywheel SDK
  • Migrated project structure to use modern skeleton template
  • Added comprehensive test suite with pytest
  • Added CI/CD pipeline configuration with .gitlab-ci.yml
  • Added pre-commit hooks for code quality (ruff, yamllint, pytest)
  • Added Docker build optimization with .dockerignore
  • Updated python runtime from 3.8 to 3.11.9
  • Updated dependency management configuration in pyproject.toml
  • Added development dependencies: pytest 8.1.1, pytest-cov >=4.0.0, pytest-mock >=3.0.0, coverage 7.4.4, pluggy 1.4.0
  • Set PYTEST_COV_FAIL_UNDER to 0 in CI configuration

Documentation:

  • Added comprehensive README.md with usage instructions and prerequisites
  • Added CONTRIBUTING.md with development setup and workflow guidance
  • Added FAQ.md for common questions and errors
  • Added merge request template in .gitlab/merge_request_templates/default.md
  • Added LICENSE file (MIT)

Enhancements:

  • Uses BIDS Client release 1.2.14
  • Added configuration option save_sidecar_as_metadata with auto-detection of existing curation format (old metadata-based vs new sidecar-based)
  • Added configuration option use_or_save_config to save and reuse gear configurations across runs
  • Added support for running gear at project, subject, or session level
  • Added duplicate BIDS path detection and reporting in CSV outputs
  • Added five CSV report files for detailed curation analysis: acquisitions, acquisitions details (2 files), IntendedFors, and NIfTI mappings
  • Added verbosity configuration option (INFO or DEBUG)