Repository navigation
Stoner 0.12.0a4
Pre-releaseStoner 0.12.0a4 adds convenient plotting properties, shorter practical guides and a backwards-compatible fix for fitting INI CSV layouts.
Changes
- Read, assign and call Matplotlib properties through
Data.plot: for example,data.plot.xlabel = "Field / T",data.plot.xlabel()anddata.plot.title("Run", loc="left"). Lookup prefers the recent live Axes, then its Figure; existing accessor attributes retain precedence. Explicit.get(...)and.set(...)support more complex signatures. Property access does not create figures, and drawing still returns Axes. - Split the data, plotting and curve-fitting User Guides into shorter task-focused pages, beginning with practical examples for novice developers. Remove outdated embedded videos and retain the cached example figures.
- Update documentation samples and analysis scripts to use the plotting properties where appropriate, retaining explicit Axes for separate panels and artist controls. Extend regression coverage for the VSM helper.
- Fix #41: forward fitting INI CSV layout settings to the registered CSV loader. Modern
header_line/data_lineuse zero-based rows; historicalstart_lineconfigurations withoutdata_lineretain one-based header/start numbering. Preserveseparatoras a fallback and omitted loader defaults; explicit modern settings and Python loader keywords take precedence. Add coverage for headerless files, delimiters, precedence, validation and historical PCAR configurations.
Requirements and validation limits
Python 3.12 or newer and stonerplots 1.9.8 or newer remain required. There are no dependency changes from 0.12.0a3. The pandas/xarray storage contracts and plotting Axes return values are unchanged.
Local Windows Python 3.14 validation passed 1,436 tests, with three network/OCR deselections; the affected network example also passed separately. All 82 rendered examples were exercised during the sample/API update. The cached documentation audit found no new warnings or lost API entries. Native GenX/wxPython UI and real mouse/dialog interactions were not manually validated.
Hosted validation
Release source: a96e4bcce70bc96ebfdd68a2efba96f976422ac0.
- Full Linux Python 3.12–3.14/macOS Python 3.14 test matrix.
- Supported lower dependency suite.
- Fresh wheel and sdist installations on Python 3.12 and 3.14.
- Cached Sphinx documentation build.
All required release-commit gates passed. Each full-matrix cell passed 1,439 tests; lower dependencies passed 1,438 with one expected skip. The first slow macOS attempt was cancelled for diagnostics; the fresh complete matrix passed. No gate was waived.
Publication
- PyPI wheel and sdist are public. The published wheel passed numerical, resource, loader, image, plotting/context/folder and new property checks from its installed location.
- PyPI/Conda deployment passed, including the installed Conda import/version test and verified upload of
noarch/stoner-0.12.0a4-py_0.condatophygbu. - Release documentation CI passed. Read the Docs detected the correct tag/SHA; maintainer activation and a versioned build are still pending.
- Zenodo archive: 10.5281/zenodo.23677984.