Skip to content

fix(deps): patch 13 RustSec advisories - #677

Open
Alex Shabalin (alex-sparus) wants to merge 1 commit into
alex/drop-deprecated-depsfrom
alex/bump-deps-security
Open

fix(deps): patch 13 RustSec advisories#677
Alex Shabalin (alex-sparus) wants to merge 1 commit into
alex/drop-deprecated-depsfrom
alex/bump-deps-security

Conversation

@alex-sparus

@alex-sparus Alex Shabalin (alex-sparus) commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Summary

cargo audit reported 16 vulnerabilities and 29 warnings over the lockfile, none in a declared crate. Certificate validation (rustls-webpki) and archive unpacking (tar) were both affected. The libsqlite3-sys = "0.28" pin additionally held sqlx at 0.8.0, which carries RUSTSEC-2024-0363 — links = "sqlite3" permits one version graph-wide, and sqlx-sqlite 0.8.1+ requires ^0.30.1.

This PR moves the eleven affected crates to patched versions, leaving 3 vulnerabilities and 25 warnings:

  • libsqlite3-sys goes to 0.30, the only range diesel and sqlx-sqlite share, which bundles SQLite 3.46.0 in place of 3.45.0.
  • plist 1.10 collapses two quick-xml copies into one 0.41.0.
  • What remains has no fix reachable here and compiles into no macOS build: two quick-xml advisories behind a windows-gated tauri-winrt-notification, and rsa with no upstream patch.

cargo audit joins the dev shell so those counts are reproducible.

Test Plan

  • cargo audit before/after: 16 vulnerabilities / 29 warnings → 3 / 25, with the remainder accounted for above
  • Every Cargo.lock hunk traced to one of the eleven intended bumps; no unrelated churn, and no bumped or added crate introduces a new advisory
  • cargo test: 1204 passed, 0 failed
  • cargo clippy --all-targets: clean
  • cargo check --locked (CI's exact command): clean
  • App booted against a pre-upgrade nixmac.db: the 3.45-era file opens in place under bundled SQLite 3.46.0, user_version unchanged, no recreate. (Between 0.28 and 0.30.1 the only compile-flag delta is the obsolete no-op -DSQLITE_ENABLE_STAT2.)
  • Rust Check + Rust Tests CI green on this PR

Docs

  • No docs update needed

@alex-sparus

Copy link
Copy Markdown
Contributor Author

This stack of pull requests is managed by jj-ryu.

@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

📋 PR Overview

Lines changed 218 (+115 / -103)
Files 0 added, 3 modified, 0 deleted
Draft / WIP no
Has Test Plan yes
Linear issue yes
No Test Plan Needed no
New UI components no
New Storybook stories no
New Rust modules no
New TS source files no
New tests no
package.json touched no
Cargo.toml touched yes
Infra / CI touched no

🔬 Coverage

Report Lines Statements Functions Branches
apps/native/coverage/coverage-summary.json 34.3% 33.8% 29.0% 29.2%

Generated by 🚫 dangerJS against fe2e696

@darkmatter

darkmatter Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

🎨 Storybook preview

Open Storybook preview

Updated for 02c1268


⚠️ Detected UI changes (5)

These stories' HTML snapshots changed. I've added screenshots + links to the changed stories below. Review them carefully then accept the changes to regenerate baselines and include them in this PR:

Flows/Evolve › Playground

Flows/Evolve › Playground

Flows/Evolve › 1. Begin (idle)

Flows/Evolve › 1. Begin (idle)

Flows/Evolve › 2. Evolving (progress)

Flows/Evolve › 2. Evolving (progress)

Flows/Evolve › Evolving With Error Event

Flows/Evolve › Evolving With Error Event

Flows/Evolve › 3. Review (changes generated)

Flows/Evolve › 3. Review (changes generated)


Accept UI changes

  • Click here to accept these changes

Alternatively, you can run bun run test:update-snapshots locally to re-generate the baselines and then push the changes to this PR.

What does this do?

The screenshots above show UI changes detected by the Storybook
snapshot tests run on this PR. Each image is the rendered output of
a Storybook story from the code in this PR branch; the snapshot
test compared it against the committed baseline in
__snapshots__/ and flagged the difference.

Checking the box tells the darkmatter[bot] to regenerate the
baselines from this PR's current code and commit them directly to
this branch. The new baselines become the source of truth for
future runs — only accept after confirming the visual changes are
intentional.

Comparison baseline: the committed __snapshots__/ files on this
PR branch (carried forward from develop). Accept updates them in
place on this branch.

@alex-sparus

Copy link
Copy Markdown
Contributor Author

Problem: `cargo audit` reported 16 vulnerabilities and 29 warnings over
the lockfile, none in a declared crate. Certificate validation
(`rustls-webpki`) and archive unpacking (`tar`) were both affected. The
`libsqlite3-sys = "0.28"` pin additionally held `sqlx` at 0.8.0, which
carries RUSTSEC-2024-0363 — `links = "sqlite3"` permits one version
graph-wide, and `sqlx-sqlite` 0.8.1+ requires `^0.30.1`.

Solution: move the eleven affected crates to patched versions, leaving
3 vulnerabilities and 25 warnings. `libsqlite3-sys` goes to 0.30, the
only range diesel and `sqlx-sqlite` share, which bundles SQLite 3.46.0
in place of 3.45.0. `plist` 1.10 collapses two `quick-xml` copies into
one 0.41.0. What remains has no fix reachable here and compiles into no
macOS build: two `quick-xml` advisories behind a windows-gated
`tauri-winrt-notification`, and `rsa` with no upstream patch.

`cargo audit` joins the dev shell so those counts are reproducible.
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