Skip to content

v0.3.0 — Comprehensive Origin file handling

Choose a tag to compare

@pquarterman17 pquarterman17 released this 07 Jul 02:08

Quantized 0.3.0 — Comprehensive Origin file handling

This release makes Quantized read arbitrary OriginLab project files (.opj and .opju) — not just a couple of sample shapes — via a clean-room, GPL-free reverse-engineered reader. It also adds magnetometry hysteresis background subtraction and reflectometry plotting defaults. 40 commits since v0.2.8.

Origin project reader (.opj / .opju)

Worksheets, graphs, and their styling now decode faithfully from both container formats, verified against a live-Origin COM oracle (268 axis-range values exact, 0 drift; 105 positioned annotations; zero stray exceptions across the whole corpus):

  • Worksheet data & metadata — columns (including 120k-row worksheets via correct LEB128 varint record framing), all six column designations (X / Y / Y-error / Label / Z / X-error), long-names, units, and comments. UTF-8 labels now decode correctly — a degree sign, Ångström, micro, ohm, or Greek letter in a real column name survives intact (previously rejected or mojibaked).
  • Graphs — axis ranges and log/linear scale in both record forms plus a newly-decoded hybrid form (a plotted-then-customized graph), tick increments, per-curve style (color, line width, symbol kind & size, scatter/line), auto/increment curve colors, legend position, axis titles and legend labels, and positioned floating-text annotations including rotated peak labels.
  • Layout geometry — per-layer frame quads and page size in both containers (the data a future multi-panel canvas needs).
  • Notes windows — free-form user notes recover whole, including long (multi-paragraph) notes and content with Windows paths and inequalities.
  • Project dates — created/modified timestamps.
  • Graceful degradation — anything undecodable (e.g. matrix pages, a distinct out-of-domain codec) fails closed: a mixed project still decodes its worksheets exactly, and a fully-undecodable project raises a clean error with viewer guidance — never silently-wrong data.

A genericity audit this cycle replaced corpus-fit thresholds with grammar- and geometry-based rules throughout, so decoding generalizes to files outside the test corpus.

Analysis

  • Magnetometry — hysteresis (M–H) linear background subtraction with loop centering.
  • Reflectometry — sensible default columns and quick line/scatter/error-bar toggles.

Notes

  • Cross-OS desktop installers (Windows .exe, macOS .dmg, Linux .deb) and a standalone server archive are attached below.
  • Auto-update is Windows-only for now.
  • The Origin reader is a clean-room implementation with no GPL dependencies.

Full Changelog: v0.2.8...v0.3.0

Full Changelog: v0.2.8...v0.3.0

Full Changelog: v0.2.8...v0.3.0