Skip to content

fix(deps): clear the Rust advisory audit (RUSTSEC-2026-0381/0382) - #729

Merged
TheOrcDev merged 1 commit into
mainfrom
deps/rustsec-2026-10
Oct 21, 2026
Merged

TheOrcDev merged 1 commit into
mainfrom
deps/rustsec-2026-10

Conversation

@TheOrcDev

@TheOrcDev TheOrcDev commented Oct 21, 2026 •

Copy link
Copy Markdown
Owner

Main's Rust advisory audit is red on macOS and Windows CI. This clears it.

  • rustls-webpki 0.103.15 → 0.103.16 (RUSTSEC-2026-0382: certificate verification may accept distrusted intermediates).
  • webpki-roots 1.0.7 → 1.0.10 (RUSTSEC-2026-0381: bundled roots trusted distrusted emSign intermediates).
  • zvariant, zbus_names and zvariant_derive are flagged unmaintained (RUSTSEC-2026-0370/0371/0372) because they were folded into zbus 6. They come in only through ashpd 0.13, the Linux screencast portal, and no ashpd release uses zbus 6 yet. scripts/audit-rust.mjs now ignores exactly those three informational notices. Each one names the dependency that pulls it in, so it can be dropped when ashpd moves.

Verified locally: node scripts/audit-rust.mjs exits 0, node --test scripts/lib/audit-rust.test.mjs passes 3/3, and cargo check -p videorc-backend passes.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Updated Rust dependency auditing to recognize three reviewed, informational advisories associated with existing dependencies.
    • Existing audit safeguards, including locked dependency fetching and warning enforcement, remain enabled.
    • Added validation to ensure the accepted advisories remain explicitly documented and limited to the intended entries.

Bump rustls-webpki 0.103.15 -> 0.103.16 (distrusted intermediates could
be accepted) and webpki-roots 1.0.7 -> 1.0.10 (distrusted emSign roots).

zvariant, zbus_names and zvariant_derive are now flagged unmaintained
because they were folded into zbus 6. They reach us only through ashpd
0.13 (Linux screencast portal), and no ashpd release uses zbus 6 yet, so
the audit ignores exactly those three informational notices, each named
with the dependency that pulls it in.

Co-Authored-By: Claude <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ff69bbd8-0a2e-4a02-9846-8647d325737f
📥 Commits

Reviewing files that changed from the base of the PR and between 3894ab8 and cecc5ea.

⛔ Files ignored due to path filters: 1
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing: 2
  • scripts/audit-rust.mjs
  • scripts/lib/audit-rust.test.mjs

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.

📝 Walkthrough

The Rust audit script now ignores three listed unmaintained advisories. Tests verify the advisory entries and the updated audit command arguments.

Changes: Rust audit advisory handling

Layer / File(s) Summary
Define and apply accepted advisories
scripts/audit-rust.mjs, scripts/lib/audit-rust.test.mjs
The script exports three accepted RustSec advisory entries and adds their IDs as cargo audit --ignore arguments. Tests validate the entries and update expectations for fresh and cached databases.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to cecc5

No merge-blocking issue is established; the dependency audit update is ready for normal checks.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 2 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title accurately identifies the dependency and Rust advisory audit changes. It names the two fixed advisories and remains concise, although it does not mention the three accepted unmaintained advi…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

The title accurately identifies the dependency and Rust advisory audit changes. It names the two fixed advisories and remains concise, although it does not mention the three accepted unmaintained advisories.

✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Some tools did not complete. Review the errors below.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

scripts/audit-rust.mjs

typescript-eslint does not support TS 7.0.
Please see https://devblogs.microsoft.com/typescript/announcing-typescript-7-0/#running-side-by-side-with-typescript-6.0 to run typescript-eslint using the TS 6 API.
See also typescript-eslint/typescript-eslint#10940 for tracking typescript-eslint's support for TS >=7.1

Oops! Something went wrong! :(

ESLint: 10.13.0

Error: typescript-eslint does not support TS 7.0.
at Object. (/.eslint-tmp/node_modules/.pnpm/typescript-eslint@8.72.0_eslint@10.13.0_typescript@7.0.2/node_modules/typescript-eslint/dist/index.js:52:11)
at Module._compile (node:internal/modules/cjs/loader:1830:14)
at Object..js (node:internal/modules/cjs/loader:1961:10)
at Module.load (node:internal/modules/cjs/loader:1553:32)
at Module._load (node:internal/modules/cjs/loader:1355:12)
at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
at loadCJSModuleWithModuleLoad (node:internal/modules/esm/translators:326:3)
at ModuleWrap. (node:internal/modules/esm/translators:231:7)
at ModuleJob.run (node:internal/modules/esm/module_job:437:25)
at async node:internal/modules/esm/loader:639:26

scripts/lib/audit-rust.test.mjs

ESLint skipped: the matched ESLint configuration already failed (config-incompatibility).

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@TheOrcDev
TheOrcDev merged commit 512cbd9 into main Oct 21, 2026
8 of 12 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