Release Notes
2.2.18_1.2.33 [2026-01-29]
Maintenance:
- Updated
flywheel-bidsfrom1.2.32to1.2.33 - Added automated release notes generation using Claude Code CI integration
2.2.17_1.2.32 [2025-12-08]
Fixes:
- Updated
urllib3to>=2.6.0to address security vulnerabilities - Fixed unit tests to work with new dev instance (
sse-latest-azure)
Maintenance:
- Migrated from
poetrytouvfor dependency management - Updated
pythonfrom3.12.11to3.12.12 - Removed
.python-versionfile
2.2.16_1.2.32 [2025-09-03]
Maintenance:
- Updated
flywheel-bidsfrom1.2.29to1.2.32
2.2.15_1.2.29 [2025-07-02]
Enhancements:
- Migrated from
python3.11to3.12in Docker base image - Added
uvpackage manager for faster dependency installation - Implemented multi-stage Docker build (base, build, dev, final)
- Added non-root
flywheeluser for improved container security - Added
VALIDATE_CLASSIFICATIONenvironment 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
FileNotFoundErrorwhen sidecar files are not found andsave_sidecar_as_metadataisFalse - Fixed inconsistent import ordering in multiple modules
Maintenance:
- Updated
.gitlab-ci.ymlreference from specific SHA tossebranch - Updated
.pre-commit-config.yamlreference from specific SHA tossebranch - Increased
PYTEST_COV_FAIL_UNDERfrom0to61in CI configuration - Cleared
DEBUGvariable in CI configuration (previously set to"3") - Upgraded
flywheel-bidsfrom^1.2.28to^1.2.29 - Upgraded
flywheel-sdkfrom^17.0to^20.1.4 - Upgraded
pandasfrom^1.3.3to^2.1.0 - Added
flywheel-gear-toolkit^0.6as explicit dependency - Moved development dependencies from
[tool.poetry.dev-dependencies]to[tool.poetry.group.dev.dependencies] - Excluded
stand_alone/andnotebooks/directories in.dockerignore - Added
eolfix,jsonlint, andruff_formathooks to pre-commit configuration - Reordered
ruffandruff_formathooks in pre-commit configuration - Removed setuptools from Docker image
- Moved
fw_curate_bids/save_bids_curation.pytostand_alone/save_bids_curation.py - Moved
tests/test_save_bids_curation.pytostand_alone/test_save_bids_curation.py - Created new
fw_curate_bids/utils.pymodule withmake_file_name_safefunction - Added
test_utils.pywith comprehensive tests formake_file_name_safe - Refactored
tests/test_main.pyinto individual test functions for better maintainability - Added
noqacomments to suppress specific ruff warnings for complex functions - Removed trailing whitespace from
public/.keepfile
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.mdfrom/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.mdfrom/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-bidsdependency from^1.2.27to^1.2.28
2.2.13_1.2.27 [2025-03-28]
Maintenance:
- Updated
flywheel-bidsfrom^1.2.24to^1.2.27 - Added
flywheel-sdk^17.0as an explicit dependency
2.2.12_1.2.26 [2024-12-17]
Maintenance:
- Updated
flywheel/bids-clientto version1.2.26
2.2.11_1.2.24 [2024-12-06]
Fixes:
- Fixed
IntendedForfield population in file metadata for projects curated using legacy methods
Maintenance:
- Updated
pythonfrom3.11.10to3.11.11 - Removed
jsonlinthook 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-bidsdependency from1.2.23to1.2.24
2.2.9_1.2.23 [2024-09-27]
Fixes:
- Corrected documentation for ignore pattern from
_ignore_BIDSto_ignore-BIDSin README.md:77
Maintenance:
- Updated
flywheel-bidsfrom1.2.22to^1.2.23
Documentation:
- Added release notes for versions
2.2.8and2.2.9referencing BIDS Client releases1.2.22and1.2.23 - Improved formatting and line wrapping in
CONTRIBUTING.mdanddocs/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-bidsfrom1.2.21to1.2.22
2.2.7_1.2.21 [2024-09-11]
Enhancements:
- Added support for reading
IntendedForlists 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_treeto ensuresession["info"]is complete
Maintenance:
- Updated
flywheel-bidsfrom1.2.19to1.2.21 - Updated
pythonfrom3.11.9to3.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-bidsfrom1.2.18to1.2.19
2.2.5_1.2.18 [2024-08-21]
Enhancements:
- Updated
flywheel-bidsfrom1.2.17to1.2.18
Maintenance:
- Updated
.gitlab-ci.ymlto referenceflywheel-io/tools/etc/qa-ci(fromflywheel-io/scientific-solutions/etc/sse-qa-ci) - Changed
.pre-commit-config.yamlhookdocker_buildtohadolintfor Dockerfile linting - Updated
Dockerfileto useLABEL maintainerinstead of deprecatedMAINTAINERdirective - Reformatted multiple JSON files for improved consistency
2.2.4_1.2.17 [2024-08-01]
Enhancements:
- Added
intended_for_regexesconfiguration 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-bidsfrom1.2.14to1.2.17to fix IntendedFor field handling for ignored files
Maintenance:
- Added
numpy<2.0.0version constraint to prevent compatibility issues - Updated
PYTHON_GET_PIP_SHA256andPYTHON_GET_PIP_URLenvironment 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-toolkitfor 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
pythonruntime from3.8to3.11.9 - Updated dependency management configuration in
pyproject.toml - Added development dependencies:
pytest8.1.1,pytest-cov>=4.0.0,pytest-mock>=3.0.0,coverage7.4.4,pluggy1.4.0 - Set
PYTEST_COV_FAIL_UNDERto0in CI configuration
Documentation:
- Added comprehensive
README.mdwith usage instructions and prerequisites - Added
CONTRIBUTING.mdwith development setup and workflow guidance - Added
FAQ.mdfor common questions and errors - Added merge request template in
.gitlab/merge_request_templates/default.md - Added
LICENSEfile (MIT)
Enhancements:
- Uses BIDS Client release
1.2.14 - Added configuration option
save_sidecar_as_metadatawith auto-detection of existing curation format (old metadata-based vs new sidecar-based) - Added configuration option
use_or_save_configto 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
verbosityconfiguration option (INFOorDEBUG)