Release Notes
1.3.2 [2025-12-17]
Maintenance:
- Updated
tomcat-catalinafrom9.0.106to9.0.109
1.3.1 [2025-10-24]
Enhancements:
- Added multi-stage build in
Dockerfileto reduce final image size - Implemented non-root user (
flywheel) for improved container security
Fixes:
- Patched vulnerable Java libraries in MATLAB MCR installation including
commons-beanutils,commons-collections,commons-io,dom4j,log4j-core,log4j-api,commons-compress, and multipletomcatcomponents - Replaced deprecated
pydicom.read_file()withpydicom.dcmread()inutils/physio.py:559 - Updated DICOM extraction to use
gear_context.work_dirinstead of hardcoded/tmpdirectory inrun.py:154
Maintenance:
- Upgraded base image from
flywheel/python:3.9-debiantodebian:bookworm-slim - Updated minimum Python version from
3.13to3.11inpyproject.toml:7 - Added explicit Python dependencies:
flywheel-sdk==10.0.1,matplotlib>=3.10.7,numpy>=2.3.4,pydicom>=3.0.1,scipy>=1.16.2 - Changed
pip3 installtopip install --break-system-packagesinDockerfile:85 - Re-enabled
pyproject_export,linkcheck, andmarkdownlinthooks in.pre-commit-config.yaml - Added
show-job: true,uid: 31337, andgid: 31337configuration tomanifest.json - Updated environment variables:
PYTHON_VERSIONto3.9.24,COMMIT_SHAtobe94c083
Documentation:
- Reformatted
README.mdwith improved line wrapping and readability - Updated BIDS specification URL from legacy format to current specification URL in
README.mdandutils/physio.py:535 - Fixed relative image paths in
README.mdfrom GitHub URLs to local paths - Corrected shebang in
run.py:1from#!/usr/bin/env python3to#!/usr/bin python3
1.3.0 [2025-03-31]
Enhancements:
- Added CI/CD pipeline configuration with
.gitlab-ci.ymlfor automated testing and Docker builds - Added pre-commit hooks configuration for code quality checks including
ruff,gearcheck,hadolint, andyamllint - Added comprehensive QA visualization with plots showing physiological signals, trigger markers, and scan start/end indicators
- Added support for multiple data processing strategies for handling missing samples:
gap_fill,uniform,upsample, andnone - Added configurable interpolation methods including
linear,cubic,nearest,fill, andnanoptions - Added automatic file metadata classification for BIDS export with custom classifications for Physio, ECG, Trigger, and Info file types
- Added BIDS-compliant output generation with
.tsv.gzand.jsonfiles for physiological recordings
Documentation:
- Added comprehensive
README.mdwith gear functionality, configuration options, and QA validation examples - Added example QA images demonstrating good and problematic physiological data (signal clipping, dropout)
Maintenance:
- Added
.dockerignoreto optimize Docker build context - Added
.gitignorefor Python cache files and temporary directories - Added
Dockerfilewithpython3.9and MATLAB Compiler Runtime R2015b - Added
pyproject.tomlwith project metadata andpoetry-corebuild backend - Added
manifest.jsondefining gear inputs, configuration options, and Flywheel metadata - Added CMRR physio extraction binary
extractCMRRPhysio_b81371d - Added utility modules:
Common.py,futils.py,physio.py, andphysiotools.py - Added main gear execution script
run.pywith full processing pipeline