Release Notes
0.4.4_1.8.7 [2026-08-21]
Enhancements:
- Added HPC compatibility via
check_and_link_dirsto ensure BIDS app directories are writable and FreeSurfer environment is properly configured before execution - Added
autoupdate.pyutility script to automate BIDS algorithm version updates inDockerfileandmanifest.json - Added
platform_test.pyto support automated platform testing after gear updates - Added
output_configurationwithenforce_file_version_matchtomanifest.json
Fixes:
- Fixed FreeSurfer license installation to explicitly target the writable directory when
gear_context.writable_diris available, settingFS_LICENSEaccordingly - Fixed
validate_setupsignature to remove redundantgear_contextparameter - Fixed bare
exceptclause in__init__.pyto catchExceptionexplicitly
Maintenance:
- Migrated from
poetrytouvfor dependency management and build system - Upgraded base Docker image from
python:3.10-slimtoflywheel/python:3.12-debian - Refactored
Dockerfileto use multi-stage build with separatebuild,dev, andprodstages; addedflywheeluser for non-root execution in production - Removed manual
Python 3.10compilation frombids_runnerstage by leveraging the new multi-stage build approach - Updated
manifest.jsonsuite fromBIDS AppstoImage Processingand removedcomponentsandkeywordsclassification fields - Updated
archived_runsinput description inmanifest.jsonto referencebids-cpacinstead ofqsiprep - Updated
manifest.jsongear description to include FSL licensing note inline - Updated CI pipeline to use
flywheel-io/tools/etc/qa-ciwithsseref and added large runner override with6htimeout fortest:gear - Updated pre-commit hooks to add
pyproject_export,hadolint,jsonlint,linkcheck,markdownlint,ruff_tests; removedpoetry_export,docker_build - Updated
pyproject.tomlto PEP 621 format withhatchlingbuild backend and updated dev dependency versions forpytestandpytest-cov - Added
.gitignorewith standard Python, macOS, and editor exclusions - Updated
.dockerignoreto includerequirements-dev.txt - Simplified mock
side_effectassignments in test fixtures and test files
Documentation:
- Updated
CONTRIBUTING.mdto replacepoetryinstructions withuvequivalents and added documentation for new pre-commit hooks - Updated
README.mdto move algorithm update instructions to a dedicated section, fix anchor links, and apply markdown style improvements - Updated
docs/changelog.mdto add entry for0.4.4_1.8.7release
0.4.3_1.8.7 [2024-07-23]
Enhancements:
- Updated C-PAC base image from
fcpindi/c-pac:release-v1.8.6tofcpindi/c-pac:release-v1.8.7
Documentation:
- Added comprehensive instructions for updating BIDS algorithm version, including Docker image updates, manifest changes, and merge request process
Maintenance:
- Updated gear-builder image reference from
flywheel/bids-cpac:0.4.3_1.8.6toflywheel/bids-cpac:0.4.3_1.8.7 - Removed
/usr/local/miniconda/binfromPATHenvironment variable - Added
PWDenvironment variable set to/flywheel/v0
0.4.3_1.8.6 [2024-05-29]
Enhancements:
- Added metadata tags for function (Image Processing - Functional, Image Processing - Structural), organ (Brain), species (Human), and therapeutic area (Neurology, Psychiatry/Psychology)
Fixes:
- Fixed
.bidsignorefile handling to useshutil.copydirectly from input location instead of deprecatedcopy_bidsignore_filefunction
Maintenance:
- Pinned
flywheel-bidsdependency to tag1.2.14instead ofmasterbranch - Removed
pyzmq<26.0.0version constraint - Removed
yamllinthook from pre-commit configuration - Updated
ruffconfiguration to use newlint.*namespace format for settings (lint.ignore,lint.fixable,lint.unfixable,lint.dummy-variable-rgx,lint.ignore-init-module-imports)
0.4.2_1.8.6 [2024-04-26]
Enhancements:
- Added
gear-FREESURFER_LICENSEconfiguration option for FreeSurfer license text input - Added
show-job: trueflag to gear custom configuration
Fixes:
- Fixed command argument parsing to properly handle flags with equals signs (e.g.,
--equals=sign xnow correctly splits into--equals sign x) - Pinned
pyzmq<26.0.0to avoid broken versions26.0.1and26.0.2
Maintenance:
- Updated
flywheel-bidsdependency to usedevelop = falseinstead ofdevelop = true - Added
ruff_formatpre-commit hook for code formatting - Removed
markdownlintpre-commit hook - Removed custom
publish:dockerjob configuration (now uses default) - Removed security scanning variable configurations from CI
- Applied code formatting improvements (blank lines after docstrings)
0.4.1_1.8.6 [2024-03-06]
Enhancements:
- Initial release of BIDS C-PAC gear for Flywheel platform
- Added support for C-PAC version
1.8.6for preprocessing and analysis of functional connectomes data - Implemented participant-level analyses with configurable pipeline options
- Added support for custom pipeline configuration files via YAML input
- Added support for archived runs to resume analysis from previous outputs
- Implemented tracking opt-out configuration to disable participant count reporting
Maintenance:
- Added multi-stage
Dockerfileto isolate Flywheel dependencies from BIDS App image - Configured
python3.10runtime environment for Flywheel dependencies - Added
.dockerignoreto optimize Docker build context - Configured GitLab CI pipeline with pre-commit hooks for automated testing and validation
- Added
poetryfor dependency management - Integrated
flywheel-gear-toolkitandflywheel-bidspackages for BIDS data handling - Added
rufffor Python linting and code formatting - Configured security scans including SAST, dependency scanning, and secret detection
- Set pytest coverage requirement to 80%
Documentation:
- Added comprehensive
README.mdwith usage instructions, configuration options, and workflow diagrams - Added
CONTRIBUTING.mdwith development setup and guidelines - Added
FAQ.mdfor common questions and troubleshooting - Added
LICENSEfile (MIT license) - Added changelog in
docs/changelog.md