Skip to content

Pin tinystoragedrivers v2.1.3 and move to Rust 1.89 - #103

Merged
M3gA-Mind merged 1 commit into
tinyhumansai:mainfrom
M3gA-Mind:fix/tsd-2.1.3-rustsec-0459
Nov 11, 2026
Merged

M3gA-Mind merged 1 commit into
tinyhumansai:mainfrom
M3gA-Mind:fix/tsd-2.1.3-rustsec-0459

Conversation

@M3gA-Mind

Copy link
Copy Markdown
Contributor

Summary

Supply chain is red on main. cargo-deny reports RUSTSEC-2026-0459 (CVE-2026-119375): libsqlite3-sys 0.38.2 bundles SQLite older than 3.54. It reaches this workspace only through the tinystoragedrivers testkit dev-dependency, via rusqlite 0.40.

  • tinystoragedrivers: pins the v2.1.3 release (f5a33025b9feaa36fea522cce764fe8c796e5139, tag v2.1.3), which moves to rusqlite 0.41.1 / libsqlite3-sys 0.39.1.
  • rust-version: 1.88 → 1.89, because rusqlite 0.41 requires Rust 1.89.
  • rustix: 1.1.6 and xattr 1.6.1 → 1.7.0 (the release built for rustix 1.1.6's change), for RUSTSEC-2026-0486 (rustix 1.0–1.1.5 xattr functions mark a zero-length buffer as filled; patched in 1.1.6). Nothing in this workspace calls those functions directly, so 1.1.6's changed zero-length behaviour doesn't affect our code.
  • Removes the deny.toml ignores for RUSTSEC-2026-0367, 0368 and 0369, with their comment. They no longer match any crate in the graph (cargo-deny reported advisory-not-detected), so they would only hide a future advisory with the same ids.

Lockfile: +30/-30, limited to the tinystoragedrivers crates, rusqlite / libsqlite3-sys, rustix / xattr. tinybus does not move: the workspace patches it to its vendored checkout.

Related issue

None. The failing check is Supply chain on main.

API or behavior changes

None in the public API. The minimum supported Rust version rises from 1.88 to 1.89.

Validation

Run on our Linux CI runner, on this exact tree, checked out from main d424749:

  • cargo deny --locked check all: exit 0 (RUSTSEC-2026-0459 and RUSTSEC-2026-0486 no longer reported)
  • cargo build --locked --all-targets --all-features: pass
  • cargo test --locked --all-features: 733 passed, 0 failed
  • cargo clippy --locked --all-targets --all-features -- -D warnings: pass
  • cargo +1.89 build --locked --workspace --all-targets --all-features: pass at the new minimum
  • cargo fmt --all -- --check: not run; no Rust source changes

Documentation

Not needed beyond rust-version.

cargo-deny fails Supply chain on main with RUSTSEC-2026-0459
(CVE-2026-119375): libsqlite3-sys 0.38.2 bundles SQLite older than
3.54. It arrives through the tinystoragedrivers testkit dev-dependency
(via rusqlite 0.40). tinystoragedrivers v2.1.3 (f5a33025b9) moves to
rusqlite 0.41.1 / libsqlite3-sys 0.39.1, so pin that release.

rusqlite 0.41 needs Rust 1.89, so rust-version moves from 1.88 to
1.89.

Also move rustix to 1.1.6 and xattr 1.6.1 -> 1.7.0
(xattr 1.7.0 is the release built for rustix 1.1.6's change), for RUSTSEC-2026-0486 (rustix 1.0-1.1.5
xattr functions unsound on a zero-length buffer). Nothing in this
workspace calls those functions directly.

Also drop the deny.toml ignores for RUSTSEC-2026-0367, 0368 and 0369.
They no longer match anything (cargo-deny warned
advisory-not-detected), so they only hid what a future zip advisory
would look like.
@coderabbitai

coderabbitai Bot commented Nov 11, 2026

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 25431c3f-3bd8-4d72-a625-2d09e7b60a27
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@tinysweeper

tinysweeper Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

Tiny Sweeper review

Reviewed head: b1c921e8d4f5dac5cec027a07ab871451641acfc

Verdict: Ready for maintainer review · Priority: none
Coverage: Reviewed 1 of 3 files; not reviewed: Cargo.lock, deny.toml.
Pull request purpose (title): Pin tinystoragedrive…

Diagnostics and supporting details

Full summary

Pull request purpose (title): Pin tinystoragedrivers v2.1.3 and move to Rust 1.89. This pull request fixes the red `Supply chain` check on `main` by pinning the four `tinystoragedrivers` git dependencies (types, api, busproxy, testkit) to the v2.1.3 commit `f5a33025b9feaa36fea522cce764fe8c796e5139`, raising the workspace `rust-version` from 1.88 to 1.89, and dropping three stale advisory ignores from `deny.toml`. The stated driver is RUSTSEC-2026-0459 (CVE-2026-119375): `libsqlite3-sys` 0.38.2 bundled SQLite older than 3.54 and reached the workspace only through the testkit dev-dependency via `rusqlite` 0.40; v2.1.3 moves to `rusqlite` 0.41.1 / `libsqlite3-sys` 0.39.1, whose Rust 1.89 requirement is the reason for the MSRV bump. The lockfile also picks up rustix 1.1.6 with xattr 1.7.0 for RUSTSEC-2026-0486. There are no public API changes. The critique lane noted it could not inspect the new upstream revision itself, so compatibility with the workspace's `[patch]` for tinybus is unverified, and that the code index trails this pull request.

Unreviewed paths

  • Cargo.lock
  • deny.toml

Review snapshot

Change surface Files Review signal Count
Production 0 Active findings 0
Tests 0 Noted findings 0
Documentation 0 Resolved findings 0
Configuration 2 Pending checks/questions 0

Completeness: Complete
Test assessment: No supported feature-to-test mapping was available; this does not mean tests are absent or passed.

What changed

Workspace MSRV moves 1.88 → 1.89 in `Cargo.toml`. All four `tinystoragedrivers-{types,api,busproxy,testkit}` git dependencies move from rev `6226b9484c8bd01c58741718cd89ba90a13a36bb` to the v2.1.3 rev `f5a33025b9feaa36fea522cce764fe8c796e5139`, which transitively upgrades `rusqlite` to 0.41.1 / `libsqlite3-sys` to 0.39.1 and rebuilds against rustix 1.1.6 with xattr 1.7.0. `deny.toml` loses its ignore list for RUSTSEC-2026-0367, RUSTSEC-2026-0368 and RUSTSEC-2026-0369 together with the `zip`/tinybus explanatory comment, since those advisories no longer match anything in the dependency graph. The lockfile churn is confined to the tinystoragedrivers crates, rusqlite / libsqlite3-sys and rustix / xattr; tinybus stays patched to the vendored checkout.

Features

  • Modified — Workspace minimum supported Rust version: Raises the MSRV from 1.88 to 1.89 across the workspace, required by the newer rusqlite pulled in through the tinystoragedrivers bump; consumers and CI toolchains must be at 1.89 or later. (Cargo.toml)
  • Modified — tinystoragedrivers git dependency pin: The four tinystoragedrivers crates (types, api, busproxy, testkit) move together to the v2.1.3 revision `f5a33025b9feaa36fea522cce764fe8c796e5139`, which drags rusqlite to 0.41.1 and libsqlite3-sys to 0.39.1, clearing RUSTSEC-2026-0459 from the dev-dependency graph; keeping all four on one rev preserves their internal consistency. (Cargo.toml)
  • Removed — Stale cargo-deny advisory ignores: Removes the `deny.toml` ignore entries for RUSTSEC-2026-0367, RUSTSEC-2026-0368 and RUSTSEC-2026-0369 and their explanatory comment, since no crate in the graph matches them anymore; leaving them would silently suppress any future advisory reusing those ids. (deny.toml)
  • Modified — rustix / xattr resolution for RUSTSEC-2026-0486: The dependency update resolves rustix 1.1.6 alongside xattr 1.7.0, addressing RUSTSEC-2026-0486; the workspace does not call the affected xattr functions directly, so the changed zero-length-buffer semantics do not alter this codebase's behaviour. (Cargo.toml)
  • Internal refactor — Lockfile resolution: The lockfile is re-resolved in step with the manifest changes and, at the reviewed commit, is already consistent with the new rev and the removal of the old one, so `--locked` builds remain reproducible. (Cargo.toml)

Tests

No supported feature-to-test mapping was produced. Test execution is not inferred.

Findings

No active actionable findings.

Before merge

None.

Agent review details

critique

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Positive: Answered with no findings: the MSRV bump and the unified move of all four tinystoragedrivers entries to one new rev are consistent, and the reviewed lockfile already carries the new rev without the old one, so `--locked` builds stay coherent.
  • Positive: Caveat carried by the answered lane: the upstream revision itself was not inspectable, so its own MSRV and its tinybus source leave compatibility with the workspace's tinybus `[patch]` section unverified; the lane also notes the code index trails this pull request.
  • Lane summary: The change raises the workspace MSRV to 1.89 and moves all four tinystoragedrivers entries (types, api, busproxy, testkit) to the same new git rev; the checked-in Cargo.lock at the reviewed commit already carries that rev and no longer references the old one, so `--locked` builds stay consistent. I could not inspect the new upstream rev itself (its own MSRV and its tinybus source), so the bump's compatibility with the `[patch."https://github.com/tinyhumansai/tinybus"]` section is unverified, but nothing in the diff is wrong on its face. _The code index is behind this pull request (indexed at `18eabe050445`), so retrieved context may be out of date._

security

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Positive: Answered with no findings: the change moves the four git dependencies to a single newer revision already reflected in the lockfile, and no CI or documentation pin to the old 1.88 toolchain or the old rev remains; the upstream revision's contents are out of scope for this review.
  • Lane summary: No findings. The change bumps the workspace `rust-version` to 1.89 and moves the four `tinystoragedrivers` git dependencies to a single newer revision, with the lockfile already resolved to that same revision in the tree, and no CI or docs pin to the old 1.88 toolchain or old rev remains. The content of the new upstream revision is a different repository and not reviewable here. _The code index is behind this pull request (indexed at `18eabe050445`), so retrieved context may be out of date._

tests

  • Conclusion: Neutral
  • Scope reviewed: all assigned evidence
  • Lane summary: No behavioural change: nothing outside documentation, configuration and tests.

commits

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Positive: Answered with no findings: no sensitive content in the committed files.
  • Lane summary: No sensitive content in committed files. _The code index is behind this pull request (indexed at `18eabe050445`), so retrieved context may be out of date._

description

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Positive: Answered with no findings: the body matches the diff — the four revs move to v2.1.3, `rust-version` goes 1.88 → 1.89, and the three stale RUSTSEC ignores plus their comment are removed as written up, with the reviewed lockfile state (libsqlite3-sys 0.39.1, rustix 1.1.6) agreeing.
  • Lane summary: The body matches the diff: the four tinystoragedrivers revs move to the v2.1.3 commit, `rust-version` goes 1.88 → 1.89, and the three stale RUSTSEC ignores and their explanatory comment are removed from `deny.toml`, all as described. The lockfile state at the reviewed commit agrees with the write-up (libsqlite3-sys 0.39.1, rustix 1.1.6), and nothing significant in the diff is left unmentioned; the description is accurate enough to merge behind. _The code index is behind this pull request (indexed at `18eabe050445`), so retrieved context may be out of date._
Evidence and run details
  • Models: ladder/vectors-oai3, deepseek-v4.1-flash
  • Spend: $0.006244
  • Tokens: 178220 input · 23615 output · 88448 cached · 157 embedding
  • Updated: 2026-11-11T12:18:32Z
Head State Pass summary
b1c921e8d4f5 ready for maintainer review 0 active finding(s), 0 resolved finding(s) (at 2026-11-11T12:18:32Z)

tinysweeper 0.1.2

@tinysweeper tinysweeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tinysweeper found nothing blocking. Approving.

Diagnostics

Total spend: $0.0062

@M3gA-Mind
M3gA-Mind merged commit 3a68265 into tinyhumansai:main Nov 11, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant