Skip to content

ci: build, lint and cover on Rust 1.99.1 - #2096

Merged
yvgude merged 5 commits into
mainfrom
chore/rust-1.99.1
Oct 16, 2026
Merged

yvgude merged 5 commits into
mainfrom
chore/rust-1.99.1

Conversation

@yvgude

@yvgude yvgude commented Oct 16, 2026

Copy link
Copy Markdown
Owner

Moves every pinned Rust toolchain in the public repo to the current stable, 1.99.1.

  • CI: build, lint and test on 1.99.1.
  • Coverage: the 1.98.1 pin is gone. The Nom(Satisfy) parser failure came from cargo-tarpaulin 0.35.2, not from Rust; the job now installs cargo-tarpaulin@0.37.5 (taiki-e/install-action v2.87.28), which reads the 1.99 profile format. Verified on a filtered run; the first full Coverage run happens here.
  • One new clippy 1.99 lint fixed in code (workspace_config test: assert_eq! on the empty roots list), no blanket #[allow].

Local preflight: 8 passed, 1 skipped (CCR check, no CCR files changed).

🤖 Generated with Claude Code

yvgude and others added 5 commits October 16, 2026 12:06
Rust 1.99.1 (2026-10-13) is the newest stable. Every GitHub job that
follows `stable` already uses it; the two pins that did not now do.

Coverage: the 1.98.1 pin was a workaround, not a tarpaulin limit. The
SHA-pinned taiki-e/install-action (v2.75.20, April) still resolved
cargo-tarpaulin to 0.35.2, which cannot parse LLVM 23 raw profiles
(v11). Reproduced on pounce: 0.35.2 + 1.99.1 fails with "consistency
check for reading counts failed" / "parser failure: Nom(Satisfy)";
0.37.5 + 1.99.1 parses the lean-ctx lib-test profile and writes the
cobertura report. The job now pins install-action v2.87.28 and
cargo-tarpaulin@0.37.5 together with toolchain 1.99.1.

GitLab: both jobs move from rust:1.88.0-bookworm to rust:1.99.1-bookworm
(the runtime job still installs `stable` on top, as before).

frozen-hashes.json: ci.yml and ci/gitlab-ci.yml hashes updated
(precedent 82b44a3); verify-team-seat-value-v1.py passes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…clippy)

clippy 1.99 adds `assert_is_empty`: `assert!(v.is_empty())` hides the
value on failure. The pre-commit test clippy (`--tests`) flagged the one
occurrence in the lib; compare against an empty Vec instead so a failure
prints the leaked roots.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
crates.io yanked zip 8.4.0 through 8.6.0, so cargo-deny, the standalone
Evidence Verifier build, the licensing gate and the security scan fail on
every branch. zip 9 returns the entry name as Result<Cow<str>, ZipError>;
an undecodable name is now an error on each path that reads one (updater,
evidence and verify commands, selection evidence, the standalone
verifier) instead of a lossy string.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The zip 9 bump changes lzma-rust2 (0.16.5 -> 0.22.0) and ppmd-rust
(1.4.0 -> 1.5.0) and adds constant_time_eq 0.6.1 (CC0-1.0 OR MIT-0 OR
Apache-2.0). SBOM, asset-manifest digests and the notices are
regenerated with scripts/generate-sbom.sh and
scripts/generate-third-party-notices.py; no existing license or notice
text changes. The owner approved the new content on 2026-10-16; the
approval record binds its SHA-256.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tarpaulin 0.37 with the LLVM engine applies --timeout to the whole test
run, not to each test. 180 s stopped the serial lib suite after about
1,450 of 12,962 tests ("Timed out waiting for test response").

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@yvgude
yvgude merged commit b30edf2 into main Oct 16, 2026
34 checks passed
@yvgude
yvgude deleted the chore/rust-1.99.1 branch October 16, 2026 14:49
@github-actions github-actions Bot locked and limited conversation to collaborators Oct 16, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant