Release Notes
0.3.3 [2024-12-05]
Fixes:
- Updated manifest environment variable configuration
0.3.2 [2024-12-03]
Enhancements:
- Added default configuration for
dicom-fixergearqcnamespace to unfoldeventsdata - Added suite classification metadata to
manifest.json
Fixes:
- Improved error handling when an empty list is returned from QC data retrieval
Maintenance:
- Updated Dockerfile base image from
python:3.8-slimtopython:3.12-bullseye - Migrated from
flywheel-gear-toolkittofw-gearlibrary - Updated
fw-clientfrom^0.4.0to^0.8.6 - Updated
pandasfrom^1.5.3to^2.2.3 - Updated
pythonfrom^3.8to^3.11 - Updated CI configuration to use
qa-ciproject withci/gear.ymlfile - Updated pre-commit hooks configuration with additional linters and replaced
black/isortwithruff - Moved QC configuration classes to dedicated
qc_config.pymodule - Updated
ruffconfiguration to uselint.selectformat - Removed unnecessary empty regression test files
Documentation:
- Removed changelog entry section from
CONTRIBUTING.md - Created new
docs/release_notes.mdfile with consolidated release notes
0.3.1 [2024-01-12]
Enhancements:
- Added hardcoded configuration for
dicom-qc'sdciodvfyfield to unfolddataautomatically
Fixes:
- Updated test expectations to account for new
dicom-qcconfiguration entry
0.3.0 [2023-06-30]
Enhancements:
- Added progress logging for dataview execution stages (launching, downloading, completion)
- Added progress tracking for dataframe processing with percentage completion indicators
Fixes:
- Improved memory efficiency by accumulating dataframes in a list instead of repeatedly concatenating
- Fixed error handling by removing
return_exceptions=Truefrom dataview gathering - Optimized dataframe concatenation using
itertools.chainto flatten nested lists
Maintenance:
- Refactored
process_fields()to use list accumulator instead of returning dataframe - Refactored
process_qc_results()to use list accumulator pattern - Updated
process_df()to return list of dataframes instead of single concatenated dataframe - Added
dv_numparameter toget_dataview()for logging context - Added
df_numparameter toprocess_df()for logging context
0.2.0 [2023-06-04]
Enhancements:
- Added support for boolean-valued QC results with configurable pass/fail interpretation via
true_means_failparameter - Added field-specific configuration overrides for
state_name,fail_names, andtrue_means_failparameters - Added support for custom state key names in QC results via
state_nameconfiguration option - Added dataclass-based configuration system (
QCResultConfigandQCResultFieldConfig) for improved type safety and structure
Fixes:
- Fixed handling of non-string state values in QC results to support boolean types
Documentation:
- Expanded README with detailed examples for boolean-valued QC results configuration
- Added comprehensive documentation for field-specific configuration overrides
- Added example demonstrating how to configure
metadata-rulesforjsonschema-validationdata expansion - Clarified that
metadata-rulesinput file is optional - Reorganized documentation structure with separate sections for global options, field options, and examples
- Added note that nested field configurations beyond one level are not currently supported
Maintenance:
- Refactored configuration parsing to separate global and field-specific settings
- Updated function signatures with explicit type hints throughout codebase
- Improved separation of concerns by splitting report options from QC processing configuration
- Enhanced test coverage for boolean QC results and field-specific overrides
0.1.0 [2023-04-26]
Enhancements:
- Initial release of QC Reporter gear for generating reports on metadata QC results across project, subject, session, and acquisition levels
- Added support for custom field definitions via YAML configuration for controlling how QC results are unfolded and processed
- Added configurable output formats (
csvandjson) for generated reports - Added option to include or exclude intermediate containers in reporting
- Added option to report on successful QC results in addition to failures
- Added option to include or exclude analysis-level QC results
- Added support for filtering QC results by custom excluded result names
- Implemented dataview-based data collection for efficient querying of QC metadata across the Flywheel hierarchy
Documentation:
- Added comprehensive README with gear overview, usage instructions, input/ output specifications, and workflow examples
- Added CONTRIBUTING guide with dependency management, linting, testing, and release procedures
- Added merge request template with checklist for release notes, changelog, tests, and test data requirements
- Added FAQ markdown file for common questions and errors
- Added LICENSE file (MIT)