Repository navigation
fix(deps): clear rustls and zip advisories on main - #131
Merged
Merged
Conversation
cargo deny check advisories, which the blocking cargo-audit job runs, failed on main with eight advisories and one unmaintained crate. - rustls 0.23.45 -> 0.23.46 (RUSTSEC-2026-0346..0349) - zip 2 -> 9 (RUSTSEC-2026-0367..0369). The binary action extracts downloaded zips, so the symlink and permission escapes were live. No source change was needed. - tealr default-features off, keeping derive. Its default embed_compiler_from_download pulled a second zip 2 and ureq 2 through tealr_derive; etch never calls embed_compiler. - unsafe-libyaml (RUSTSEC-2024-0449) ignored with a dated reason: serde_yaml_ng 0.10.0 is the latest release and still uses it. - Allow licence bzip2-1.0.6, which arrives with zip 9 via libbz2-rs-sys. zip 2 already linked the same bzip2 code through bzip2-sys. - The scheduled cargo audit ignore list was missing RUSTSEC-2026-0249, which deny.toml already ignored. Added it together with RUSTSEC-2024-0449. - quinn-proto 0.11.15 -> 0.11.19, which clears five advisories that only raw cargo audit sees. Two more remain and are in the backlog. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Aux8gVLuPWbaZnmeza37Mu
Two findings from the advisory PR's gates, recorded rather than fixed here: a pre-existing partial-write on zip extract failure, and optional narrowing of zip's default features. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Aux8gVLuPWbaZnmeza37Mu
4 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
mainfailscargo deny check advisories. The blockingcargo-auditjob runs it, so no PR can auto-merge (8 advisories plus 1 unmaintained crate; the lockfile was untouched since fix(deps): bump rustls to 0.23.45 for RUSTSEC-2026-0285 #130).bzip2-1.0.6licence is now allowed.Changes
lib/Cargo.toml:zip = "9".tealrnow hasdefault-features = falseand keepsderive. This turns offcompileas well asembed_compiler_from_download. etch uses neithercompile_inline_teal!norembed_compiler!, and both features only gate those macros.Cargo.lock: rustls 0.23.46, zip 9.0.5, quinn-proto 0.11.19. quinn-proto is a lockfile-only crate, and this bump clears 5 raw-cargo auditadvisories. ureq 2, webpki-roots 0.26 and bzip2-sys are gone.deny.toml: added an ignore for RUSTSEC-2024-0449, because serde_yaml_ng 0.10.0 is the latest release and still depends on unsafe-libyaml. Allowed thebzip2-1.0.6licence, which comes in through libbz2-rs-sys; zip 2 already linked the same bzip2 code through bzip2-sys.cargo-audit-scheduled.yml: added RUSTSEC-2026-0249 to the ignore list. It was already ignored indeny.tomlbut missing here, so the two lists had drifted. Also added RUSTSEC-2024-0449.cargo auditstill reports RUSTSEC-2026-0306 and -0205, whichcargo denydoes not.deflatefeature only.Test Plan
make teston Linux: 1129/1129 nextest and 64 pytest passed.cargo deny check: advisories, bans, licenses and sources all ok.cargo build --releaseok, and thebinarytests passed 59/59.Risk
Low. No
.rschange.extract.rsreads one named entry throughZipArchive::new,by_nameandio::copy, and never callsextract. zip 9's default compression methods include everything zip 2's did. perf-regression passed: the worst ratio was 1.01x after re-runs.Definition of Done
Phase 3 gates: perf PASS, security PASS, dependency-review PASS, test-quality SKIP (no testable code), diff-scope PASS, bug-scan PASS (forced, because its trigger misses
lib/Cargo.toml; the gap is backlogged in ai-config), migration-classifier code-only, maintainability SKIP, pr-review PASS.Spec alignment
SKIP: no plan or spec (dependency-CVE fix via bug-fix-cycle).
Related
Blocks the
file.flagschflags fix PR, which follows.🤖 Generated with Claude Code
https://claude.ai/code/session_01Aux8gVLuPWbaZnmeza37Mu