What’s New in Revision 0.9.2

These are the changes in SpectroChemPy-0.9.2. See Release notes for a full changelog, including other versions of SpectroChemPy.

Bug Fixes

  • Implemented decode_datetime64 for CF-style datetime metadata generated by encode_datetime64.

Breaking Changes

  • Removed deprecated compatibility kwargs in EFA, PCA, and NMF: used_components (use n_components).

  • Removed deprecated compatibility kwargs in SIMPLISMA: verbose (use log_level), n_pc (use n_components), max_components (use n_components).

  • Removed deprecated compatibility kwargs in detrend: type (use order), dim (no longer needed), inplace (no longer supported).

  • Removed deprecated parameters method (use params instead).

  • Removed deprecated n_pc fallback in transform and inverse_transform (use n_components instead).

Deprecations

  • Removed IRIS.plotdistribution() from the spectrochempy-iris plugin (target removed="0.9.0" was reached). Use IRIS.f[index].plot() instead.

  • Added explicit removed="0.10.0 to all remaining API deprecations that did not yet specify a removal version : Baseline.show_regions, PCA.screeplot, PCA.scoreplot, DecompositionAnalysis.reduce, DecompositionAnalysis.reconstruct, MCRALS.St_unconstrained, MCRALS.S_soft, concatenate(force_stack=...), read_jdx, read_dx, trapz, multiplot_stack, multiplot_map, multiplot_image, Project.remove_all_dataset, Project.remove_all_project, Project.remove_all_script, restore_rcparams, get_import_time_rcparams, and legacy plot-method aliases

    (stacklines, mapcontour, imagecontourf).

Developer

  • FEATURE: Added plugin lifecycle tests for spectrochempy-hypercomplex, spectrochempy-carroucell, spectrochempy-nmr, and spectrochempy-iris covering import, metadata, compatibility, registration, lifecycle state, reader/accessor registration, and isolated harness behaviour.

  • FIX: Added _ensure_carroucell_filetype_registered() to register the carroucell filetype with the legacy FileTypeRegistry, fixing TypeError: Filetype '.carroucell' is unknown when reading CarrouCELL data.

  • FIX: Fixed test isolation in spectrochempy-iris tests: monkeypatched sys.modules cleanup ensures each test uses its own harness when validating the scp.iris namespace.

  • FIX: Fixed missing import sys in docutils that caused NameError when validating docstrings with Examples sections (the root cause of “docstring checker unstable in CI” skips).

  • FIX: Fixed docstring examples in plot_score and plot_scree.

  • FIX: Fixed docstring examples in reshape.

  • FIX: Fixed See Also entries in plot.

  • FIX: Resolved %(analysis_fit.parameters.X)s docrep template leftovers in fit.

  • FIX: Reactivated 4 docstring validation tests for PLSRegression, PCA, NDDataset, and IRIS that had been disabled as “unstable in CI”.

  • MAINT: Removed stale commented-out @pytest.mark.skipif blocks from 5 reader test files.

  • FIX: Reworked network resilience in test_py_in_docs.py: scripts and examples requiring external network access (eigenvector.com) are now executed normally and only skipped when the failure is confirmed to be network-related.

  • MAINT: Tightened isolated test debt: converted broad 3D plotting skips to waterfall-specific xfail handling and clarified remaining quarantined tests.

  • FIX: Reactivated the project comparison utility test by using independent deep copies of nested projects.

  • DOC: Restructured changelog to separate user-facing entries from developer changes (tests, CI, refactoring) with keyword prefixes (FEATURE:, FIX:, MAINT:, CI:, DEV:) in a new Developer section at the end.

  • DOC: Updated contributing guide and PR template to document the new changelog convention and the Developer section.

  • CI: Replaced hardcoded 0.9.0 stable docs build with a dynamic loop over all spectrochempy-v* core tags, so new releases (e.g. 0.9.1) are automatically included in the version dropdown.