v0.12.0#

Numerous CI/CD improvements, documentation improvements, a few new OTF perturbers, and an additional ImageMetric implementation.

Updates / New Features#

New Features

  • Implemented functionallity for computing the NIIRS metric as a ImageMetrics implementation

  • Added name property to ImageMetrics implementation

  • Implemented Circular Aperture OTF perturber

  • Modified to optionally return thetas as floats or ints

  • Implemented Detector OTF perturber

  • Implemented Turbulence Aperture OTF perturber

CI/CD

  • Added checks and tests for OpenCV perturbers to ensure image is in channel-last format.

  • Added a mirroring job to replace builtin gitlab mirroring due to LFS issue.

  • Removed an old opencv version check script.

  • Added syrupy dependency for snapshot-based regression testing.

  • Numerous changes to help automated the CI/CD process.

  • poetry.lock file updated for the dev environment.

  • Updates to dependencies to support the new CI/CD.

  • Updated config for black to set max line length to 120

  • Bumped pybsm to 0.7.0.

  • Changed opencv-python to an optional dependency.

  • Added opencv-python-headless as an optional dependency.

  • Added two extras (graphics and headless) for opencv-python and opencv-python-headless compatibility.

  • Changed CI to use headless extra.

Documentation

  • Updated the readthedocs required packages.

  • Removed lfs objects that were in docs to allow readthedocs to render.

  • Added sphinx’s autosummary template for recursively populating docstrings from the module level down to the class method level.

Fixes#

  • Remove Optional from pyBSM sensor/scenario parameters which shouldn’t be None