Repository navigation
0.75.0
A seed says it does not serve a set move's filter, and the workspace compiles on rust 1.85.
1 changed, 4 fixed.
Changed
- In the
ess-conformancelibrary,Note::CrossCallerUnswapped'sreasonis now aStringand the variant has a new fieldmixed: bool, andChangedRowCausehas a new variantSetMoveOnly. - The workspace compiles on its declared
rust-version(1.85) again, as an adopter's MSRV job reported against 0.72.0. Two borrows iness-conformanceonly rustc 1.88 accepted are now bound to locals, andCargo.lockholds instability 0.3.10 and darling 0.20.11, which ratatui reaches, instead of releases that need rustc 1.88. A newmsrvCI job checks every target with the toolchainrust-versionnames, andGateneeds it.Cargo.lockdoes not travel with the crates: a consumer on rustc 1.85 that resolves its own lock may need the same two pins (cargo update -p instability --precise 0.3.10andcargo update -p darling --precise 0.20.11). ess verify conform synthesize --synthesis-seednow says when a seed cannot serve a refusal of a set move's filter (instances:or anaffects:entry), as an adopter reported against 0.74.0. The refusal is still ESS-SYNTH-001 and keeps its cause. It now names each selected seed row of the filtered entity and says that seeds do not serve a set move's filter, and its help points to an authored scenario (ess-scenario/1). Before, a seeded run printed the unseeded refusal and recorded the seed as selected and never applied. The--synthesis-seedhelp names the two obligations a seed serves. Without such a seed row the refusal keeps its text, and suite bytes change only in the refusal message.- A per-row binding refusal (
ChangedRowUnarranged) and anaffects:entry refusal now name a state that only a set move reaches, with the same help as theinstances:refusal of 0.74.0. Before, they gave the remedy for a filter key that no input writes. A refusal whose filter is unmet in every state keeps its text. Codes, occurrence counts and synthesized suites are unchanged. - A seeded scenario on a model whose actors carry caller attributes now carries a
CrossCallerUnswappednote when it is not run again with the callers swapped or reversed. The note names the seed rows it establishes and the rows that fix the caller of its seeded run. A seeded scenario sent as one caller is noted as running once without that run, not as retaining a mixed-caller witness. Suite bytes are unchanged.
Every change: CHANGELOG.md § 0.75.0
Replay before release (local, run by ess; the adopters' own replay follows)
- The release head was replayed against the 0.74.0 binary on 23 runs of neutral reduced reproductions of adopter reports. No scenario count, refusal count, refusal code or interpreted result moved.
- The only text change is the seeded set-move refusal of gap R, which now names the seed row. That suite equals the 0.74.0 suite once refusal messages are removed.
- The adopters' full replay runs against 0.75.0. A regression it finds ships as 0.75.1.