Skip to content

Fix post-0.4.0 release issues - #6

Merged
jeremy-wayland merged 1 commit into
mainfrom
fix/v0.4.1-patches
Oct 9, 2026
Merged

jeremy-wayland merged 1 commit into
mainfrom
fix/v0.4.1-patches

Conversation

@jeremy-wayland

Copy link
Copy Markdown
Member

Fixes from testing the published 0.4.0 crates and pypasteur wheel against the synthetic-cohort sandbox models.

Fixes

  1. JitterSimulator.transform before fit silently did nothing. feature_std started at 0.0, so an unfitted simulator returned the data unchanged, which an evaluation would score as perfect jitter stability. It is now Option<f64> and transform errors when it is unset. In Python this raises ValueError. The behaviour dates from 0.3.0. The CLI always fits first, so CLI results are unchanged.
  2. pasteur-model README example didn't compile against 0.4.0. It passed 1 where from_file now takes Option<usize>. That README is the crates.io page.
  3. Smaller issues:
    • pasteur-cli --version now works.
    • pypasteur.__version__ is exposed. It is listed in __all__, because maturin's generated __init__.py re-exports with import *, which skips dunder names.
    • Positive-class-index errors from the library now name the parameter as well as the CLI flag.

Changelog entries are under Unreleased. The workspace version is unchanged.

Testing

  • cargo fmt --all --check, cargo clippy --workspace --locked -- -D warnings and cargo test --workspace --locked --exclude pypasteur-bindings all pass, run in a glibc 2.41 container. New tests: jitter_transform_before_fit_is_an_error and version_flag_prints_crate_version.
  • Built a wheel from this branch. The updated tests/smoke.py passes; it now also checks __version__ and that an unfitted transform raises. A 13-check script covering the README's claims also passes.
  • The 0.4.0 release itself passed the 78-check sandbox oracle suite (CLI from crates.io). The library crates' predictions matched onnxruntime to about 1e-15.

🤖 Generated with Claude Code

- core: JitterSimulator::transform before fit is an error instead of
  applying zero noise (which scored as perfect jitter stability).
- model: README example passes Some(1) for the Option<usize> positive
  class index; from_file errors name the parameter, not only the CLI flag.
- cli: add --version.
- pypasteur: expose __version__ (listed in __all__ so maturin's
  `import *` re-export picks it up).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jeremy-wayland
jeremy-wayland merged commit fc57133 into main Oct 9, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant