Skip to content

v0.0.2

Choose a tag to compare

@BabaSanfour BabaSanfour released this 14 Sep 13:53
· 15 commits to main since this release
f3215e3

Highlights

mne-denoise 0.0.2 substantially expands the package beyond DSS and ZapLine, while tightening the public API, MNE-Python integration, packaging, testing, and documentation.

New and expanded denoising methods

  • Added ICanClean, including global, sliding, calibrated, hybrid, pseudo-reference, and null-threshold workflows.
  • Added ASR and Riemannian ASR, plus AdaptiveASR, JugglerASR, and experimental GuidedASR.
  • Added SpectrumInterpolation for FFT-based line-noise removal.
  • Added SOUND and SSP-SIR for forward-model-based denoising.
  • Added BSS-CCA, SSA, and Sensor Noise Suppression (SNS).
  • Added TimeShiftDSS and an explicit cardiac-cleaning DSS workflow.
  • Expanded adaptive DSS and ZapLine with segmentation, smoothing, component-selection, whitening, and cross-fading support.

API and MNE-Python integration

  • Standardized NumPy and MNE Raw/Epochs/Evoked handling across methods.
  • Added structured progress callbacks and an optional tqdm adapter.
  • Added the canonical mne_denoise.qa and refactored mne_denoise.viz namespaces.
  • SSP-SIR now delegates Forward-based source-informed reconstruction to MNE-Python.
  • DSS Evoked covariance handling now uses public MNE-Python APIs where appropriate.

Packaging and compatibility

  • Python 3.12+ is now required.
  • MNE-Python is now optional for NumPy-only workflows.
  • Optional integrations are available through:
    • mne-denoise[mne]
    • mne-denoise[viz]
    • mne-denoise[progress]
  • The base runtime dependency contract is NumPy >=1.26,<3, SciPy >=1.13, scikit-learn >=1.5, and joblib >=1.4.
  • Packaging now uses Hatchling with Git-derived versions and Trusted Publishing.

Documentation and validation

  • Refactored the examples gallery around scientifically motivated denoising workflows.
  • Expanded scientific documentation and API guidance.
  • Added stricter scientific, compatibility, lower-bound, packaging, and documentation validation across CI.

Notable compatibility changes

Because mne-denoise is still pre-1.0, this release also cleans up parts of the public surface:

  • Python 3.11 support was removed.
  • Obsolete DSS aliases and utility paths were removed.
  • Development-only test, docs, dev, and all extras were replaced by dependency groups.
  • ZapLine(min_select=..., max_prop_remove=...) was removed from the public constructor; adaptive equivalents remain configurable through adaptive_params.

For the complete list of changes, fixes, removals, and internal improvements, see the project changelog.

Full changelog: CHANGELOG.md at v0.0.2

Full comparison: v0.0.1...v0.0.2