Skip to content

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-fixer gear qc namespace to unfold events data
  • 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-slim to python:3.12-bullseye
  • Migrated from flywheel-gear-toolkit to fw-gear library
  • Updated fw-client from ^0.4.0 to ^0.8.6
  • Updated pandas from ^1.5.3 to ^2.2.3
  • Updated python from ^3.8 to ^3.11
  • Updated CI configuration to use qa-ci project with ci/gear.yml file
  • Updated pre-commit hooks configuration with additional linters and replaced black/isort with ruff
  • Moved QC configuration classes to dedicated qc_config.py module
  • Updated ruff configuration to use lint.select format
  • Removed unnecessary empty regression test files

Documentation:

  • Removed changelog entry section from CONTRIBUTING.md
  • Created new docs/release_notes.md file with consolidated release notes

0.3.1 [2024-01-12]

Enhancements:

  • Added hardcoded configuration for dicom-qc's dciodvfy field to unfold data automatically

Fixes:

  • Updated test expectations to account for new dicom-qc configuration 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=True from dataview gathering
  • Optimized dataframe concatenation using itertools.chain to 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_num parameter to get_dataview() for logging context
  • Added df_num parameter to process_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_fail parameter
  • Added field-specific configuration overrides for state_name, fail_names, and true_means_fail parameters
  • Added support for custom state key names in QC results via state_name configuration option
  • Added dataclass-based configuration system (QCResultConfig and QCResultFieldConfig) 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-rules for jsonschema-validation data expansion
  • Clarified that metadata-rules input 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 (csv and json) 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)