Summary
The Python package metadata and lockfile are out of sync with the main Rust crate.
Evidence
root crate version is 0.9.5 in Cargo.toml
Python crate version is still 0.9.3 in python/Cargo.toml
running cargo test --manifest-path python/Cargo.toml updates python/Cargo.lock substantially, which indicates the checked-in lockfile is stale
Why this matters
the Python extension's reported package version can drift from the main crate/release notes
stale lockfiles create noisy diffs and reduce confidence in release reproducibility
release/debugging work for issue Python package publish failing #48 gets harder when versioning state is ambiguous
Relevant files
Cargo.toml:3
python/Cargo.toml:3
python/Cargo.lock
python/src/lib.rs uses env!("CARGO_PKG_VERSION") for __version__
Suggested direction
decide which manifest is the source of truth for Python package versioning
keep the Python crate version aligned with the intended released package version
refresh and commit python/Cargo.lock
document when the Python lockfile should be regenerated and whether CI should enforce it
Acceptance criteria
Python package versioning is intentionally aligned with the release process
python/Cargo.lock is current and stable in CI
building the Python extension reports the expected version
release docs/workflows reflect the chosen source of truth
Summary
The Python package metadata and lockfile are out of sync with the main Rust crate.
Evidence
0.9.5inCargo.toml0.9.3inpython/Cargo.tomlcargo test --manifest-path python/Cargo.tomlupdatespython/Cargo.locksubstantially, which indicates the checked-in lockfile is staleWhy this matters
Relevant files
Cargo.toml:3python/Cargo.toml:3python/Cargo.lockpython/src/lib.rsusesenv!("CARGO_PKG_VERSION")for__version__Suggested direction
python/Cargo.lockAcceptance criteria
python/Cargo.lockis current and stable in CI