Skip to content

chore(usb-forensic): release v0.3.1 — ship the widened disk-forensic requirement - #30

Merged
h4x0r merged 1 commit into
mainfrom
chore/release-usb-forensic
Aug 6, 2026
Merged

chore(usb-forensic): release v0.3.1 — ship the widened disk-forensic requirement#30
h4x0r merged 1 commit into
mainfrom
chore/release-usb-forensic

Conversation

@h4x0r

@h4x0r h4x0r commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

The published usb-forensic 0.3.0 requires disk-forensic = "0.9", and
disk-forensic 0.9 requires ewf ^0.3, which requires lru ^0.12 — the version
window covered by RUSTSEC-2026-0002 (IterMut violating Stacked Borrows,
patched >= 0.16.3).

main already widened that to "0.11" and cleared the chain locally, but a fix on
main is not a fix for consumers. issen reaches this exact lru through
issen-usb -> usb-forensic, and nothing issen can do escapes a requirement that
lives in OUR published manifest. Publishing is the delivery mechanism.

release-plz did not propose the bump — the third instance of the same gap today,
after winevt-carver and ext4fs-core. It evaluates release_commits PER PACKAGE
by which commits touched that package's directory, and the widening changed the
root workspace manifest, which the crate inherits from. A workspace-inherited
dependency change is invisible to a path-scoped release trigger, so in a
dependency-inheriting workspace these bumps have to be cut by hand.

Verified rather than assumed: cargo package -p usb-forensic on this commit
produces a tarball whose Cargo.toml reads
[dependencies.disk-forensic] version = "0.11", against "0.9" in the
published 0.3.0, and this workspace now resolves a single lru 0.18.2 with no
vulnerable copy.

10 test suites pass, fmt clean, cargo deny check passes.

…requirement

The published usb-forensic 0.3.0 requires `disk-forensic = "0.9"`, and
disk-forensic 0.9 requires `ewf ^0.3`, which requires `lru ^0.12` — the version
window covered by RUSTSEC-2026-0002 (`IterMut` violating Stacked Borrows,
patched >= 0.16.3).

main already widened that to "0.11" and cleared the chain locally, but a fix on
main is not a fix for consumers. issen reaches this exact lru through
issen-usb -> usb-forensic, and nothing issen can do escapes a requirement that
lives in OUR published manifest. Publishing is the delivery mechanism.

release-plz did not propose the bump — the third instance of the same gap today,
after winevt-carver and ext4fs-core. It evaluates `release_commits` PER PACKAGE
by which commits touched that package's directory, and the widening changed the
root workspace manifest, which the crate inherits from. A workspace-inherited
dependency change is invisible to a path-scoped release trigger, so in a
dependency-inheriting workspace these bumps have to be cut by hand.

Verified rather than assumed: `cargo package -p usb-forensic` on this commit
produces a tarball whose Cargo.toml reads
`[dependencies.disk-forensic] version = "0.11"`, against `"0.9"` in the
published 0.3.0, and this workspace now resolves a single lru 0.18.2 with no
vulnerable copy.

10 test suites pass, fmt clean, `cargo deny check` passes.
@h4x0r
h4x0r merged commit baa4780 into main Aug 6, 2026
13 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