Skip to content

fix(ci): resolve clippy 1.97 lints and RUSTSEC advisories - #107

Merged
Zethson merged 1 commit into
scverse:mainfrom
BenjaminDEMAILLE:bd/ci-green
Jul 23, 2026
Merged

fix(ci): resolve clippy 1.97 lints and RUSTSEC advisories#107
Zethson merged 1 commit into
scverse:mainfrom
BenjaminDEMAILLE:bd/ci-green

Conversation

@BenjaminDEMAILLE

@BenjaminDEMAILLE BenjaminDEMAILLE commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

CI is currently red on main for reasons unrelated to any single change, which blocks all PRs. This fixes both the lint and audit gates.

Clippy (-D warnings)

CI's clippy advanced to 1.97, adding lints that now fail on existing code:

  • src/index/suffix_array.rsassert!(x == 0)assert_eq! (manual_assert_eq)
  • src/io/sam.rs, tests/alignment_features.rs — byte-slice literals → byte strings, e.g. [b'S', b'M']*b"SM" (byte_char_slices)
  • src/quant/transcriptome.rsif let … else { return None }? (question_mark)

Security audit (Cargo.lock only, no manifest change)

  • memmap2 0.9.10 → 0.9.11 — RUSTSEC-2026-0186 (out-of-bounds pointer offset to madvise/msync)
  • crossbeam-epoch 0.9.18 → 0.9.20 — RUSTSEC-2026-0204 (invalid pointer deref in fmt::Pointer)
  • anyhow 1.0.102 → 1.0.104 — RUSTSEC-2026-0190 (unsound downcast_mut)

The memmap2/anyhow bumps overlap with dependabot #100/#101; this PR additionally fixes the clippy 1.97 breakage and the crossbeam-epoch advisory, so the whole gate goes green in one shot. Happy to close in favour of the dependabot PRs + a clippy-only PR if the team prefers.

No behavioural change. Verified locally with cargo clippy --all-targets -- -D warnings, cargo fmt --check, and cargo test.

🤖 Generated with Claude Code

CI's clippy advanced to 1.97 (new lints fail the `-D warnings` gate) and rustsec
flagged several advisories in the dependency tree. Both block all PRs.

Clippy:
- src/index/suffix_array.rs: assert!(x == 0) -> assert_eq! (manual_assert_eq)
- src/io/sam.rs, tests/alignment_features.rs: byte-slice literals -> byte
  strings, e.g. [b'S', b'M'] -> *b"SM" (byte_char_slices)
- src/quant/transcriptome.rs: if-let/else-return-None -> `?` (question_mark)

Security audit (Cargo.lock only, no manifest change):
- memmap2 0.9.10 -> 0.9.11 (RUSTSEC-2026-0186, out-of-bounds pointer offset)
- crossbeam-epoch 0.9.18 -> 0.9.20 (RUSTSEC-2026-0204, invalid pointer deref)
- anyhow 1.0.102 -> 1.0.104 (RUSTSEC-2026-0190, unsound downcast_mut)

No behavioural change. Unblocks CI for open and future PRs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@BenjaminDEMAILLE BenjaminDEMAILLE changed the title fix(ci): resolve clippy 1.97 lints and memmap2 RUSTSEC-2026-0186 fix(ci): resolve clippy 1.97 lints and RUSTSEC advisories Jul 23, 2026
@Zethson
Zethson merged commit 96bbb8e into scverse:main Jul 23, 2026
10 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.

2 participants