Skip to content

rs-v0.4.1

Choose a tag to compare

@md-mt md-mt released this 21 Aug 05:16
· 3 commits to main since this release

TermProof 0.4.1 — Rust.

A patch release that carries breaking changes, on purpose. The project's rule is that a
breaking change under 0.x bumps the minor digit; this release deliberately does not, and
cargo semver-checks is waived for exactly the two breaks below rather than the version being
moved. Read these before upgrading from 0.4.0.

Breaking:

  • evidence::collector::EvidencePublisher gained a fifth public field, so struct-literal
    construction no longer compiles. Use the builder.
  • Recipe now holds its descriptive fields in a RecipeMeta and flattens it. The serialised
    form and the schema are unchanged — this is a source-level break only.

Added:

  • EvidenceCollector::record_session — the whole-session recording sequence 0.4.0 shipped the
    pieces for and never wired together: save the cast, append the captured checkpoint screens,
    convert, upload, and record the outcome including which step failed, with no step allowed to
    fail the run.
  • EvidencePublisher::with_video_converter, the seam that sequence needs.
  • append_checkpoint_frames, so a recording ends by replaying the evidence rather than stopping
    on whatever the last keystroke painted.
  • RecipeMeta, constructible without adopting the declarative runner.
  • A clap layer behind an opt-in feature that fills in a RunConfig and applies the
    pick(flag, configured, builtin) precedence once instead of per flag. One documented
    exception: Requirements.uploaded_media is a bool with no unset state, so its three layers
    are ORed.
  • score_from, so the fraction-of-assertions-held rule — including what an empty assertion set
    scores — is decided once by the library rather than by each caller.

See CHANGELOG.md for the full list.