Skip to content

refactor(nmr): migrate infrastructure to nmr 0.1.0 - #98

Merged
nmrtist merged 1 commit into
mainfrom
refactor/nmr-library-migration
Sep 20, 2026
Merged

nmrtist merged 1 commit into
mainfrom
refactor/nmr-library-migration

Conversation

@nmrtist

@nmrtist nmrtist commented Sep 20, 2026

Copy link
Copy Markdown
Owner

Summary

Replace PlotX’s in-house NMR readers and spectral processing kernels with the pinned nmr = 0.1.0 library across desktop, CLI, and automation workflows.

  • Preserve native signal components, calibration evidence, sampling order, and provenance throughout import, processing, analysis, and export. Missing calibration and digital-filter delay remain explicitly unknown.
  • Unify import and reset defaults, retain complex components in 2D slices, and surface processing failures without replacing the last successful display.
  • Add validated sampling-table declarations for supported Bruker and JEOL acquisitions through the desktop UI, CLI, and workflow tools, alongside automatic NUS noise estimation and reconstruction controls.
  • Store native NMR snapshots within the v1 project format so projects reopen without the original vendor files.
  • Add regression fixtures and tests for import semantics, group delay, phase quality, NUS reconstruction, CLI behavior, and offline project round trips.
  • Update English and Simplified Chinese documentation with supported formats, calibration requirements, sampling declarations, and processing limitations.

Validation

  • cargo pr-check.

Limitations

JEOL and Bruker NUS support remains experimental. Repeated sampling coordinates can be imported and persisted but cannot currently be reconstructed. Unsupported acquisition layouts and insufficient calibration produce explicit diagnostics.

Replace in-house NMR readers and spectral kernels with the pinned library. Retain native datasets, calibration evidence, component semantics, and snapshot v1 across desktop and CLI workflows.

Unify import and reset defaults, propagate processing failures, and cover sampling declarations, phase quality, NUS reconstruction, and offline snapshots with regression tests. Remove migration probes and synchronize English and Chinese documentation.

Update rustls to 0.23.45 and rustls-webpki to 0.103.15 to resolve RUSTSEC-2026-0285 without adding an advisory exception.

Validation: full cargo pr-check passes, including formatting, source sizes, dependency policy, default frontend builds, Clippy, and reference-backend tests (local sccache bypassed due to a cache-service permissions error). Documentation build passed in the prior validation; documentation is unchanged by the dependency fix.
@nmrtist
nmrtist merged commit 7bd1147 into main Sep 20, 2026
11 checks passed
@nmrtist
nmrtist deleted the refactor/nmr-library-migration branch September 20, 2026 09:23
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 20, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant