Skip to content

v0.7.7

@opticsWolf opticsWolf tagged this 17 Sep 18:45
The multi-environment series (F2.1-F3.1) plus review PB's two P1 fixes.

  0.7.1  F2.1  environment segment schema and compile
  0.7.2  F2.2  K assemblies, K solves, joint merit
  0.7.3  F2.3  the joint needle
  0.7.4  F2.4  the Python surface and the program sections
  0.7.5  F3.1  docs, worked examples, exposure re-audit
  -      PBR   review PB: M2/M3/M4/M5 applied, no bump
  0.7.6  M1    a per-film override cannot free a surrounding
  0.7.7  M7    the merit spec remembers its roster

One design shared by K surroundings, optimized against one merit over
all of them: `run_needle(design={...}, environments=[...])` and a
program document's `design:` / `environments:` sections describe the
same request in the same words, and land on the same bits.

Both review P1s were refusal holes rather than arithmetic defects -
requests that were accepted and then answered a different question.
M1: a `per_film_flags` entry, applied after the row and keyed by
material code, could undo the forced false on a fixed surrounding
(measured 500.0 -> 534.0298 nm, no error). M7: a demand's environment
is a POSITION in the roster, and the compiled spec kept only a COUNT,
so a permuted roster scored every demand against the wrong
surroundings (measured 8523.676912295265 against the correct
19876.13664037235). Both now refuse at compile, both with twins for
the spellings that must keep working.

Battery at this tag: fmt; clippy -D warnings on the workspace and on
each of opt-minpack-lm / opt-argmin / --all-features; 590 lib + 22
parity + 15 py + 15 doc tests, feature variants 595 / 599 / 604;
pytest 797 passed 1 skipped; five check tools; ten review harnesses;
three examples; both bit-exactness fingerprints; bench merit
bit-equal to the F2.1 baseline (44dc154d6946ee40).
Assets 2
Loading