Skip to content

fix(deps): update h2 and defer SQLite until SQLx release - #5392

Merged
alangou merged 3 commits into
mainfrom
fix/dependency-maintenance-20261109/alangou
Nov 9, 2026
Merged

alangou merged 3 commits into
mainfrom
fix/dependency-maintenance-20261109/alangou

Conversation

@alangou

@alangou alangou commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Update the E2E harness from h2 0.4.15 to 0.4.16 to fix RUSTSEC-2026-0258
(unbounded buffering of empty HTTP/2 DATA frames). Temporarily acknowledge the
SQLite advisory RUSTSEC-2026-0459 while waiting for a compatible SQLx release.

Related Issue

No linked issue, per the maintainer's instruction for this dependency update.

Changes

  • Update h2 in e2e/rust/Cargo.lock. Cargo also resolves three existing broad
    windows-sys dependency references to the already locked 0.52.0 entry.
  • Add a temporary, specifically documented ignore for RUSTSEC-2026-0459 in
    deny.toml. Remove it when a published SQLx release permits upgrading to
    patched libsqlite3-sys >=0.39.0.

SQLx 0.9.0 is the latest published release; its SQLite driver requires
libsqlite3-sys <0.38.0. The upstream constraint change
is merged but unreleased. SQLite remains at its existing affected versions
(0.30.1/0.37.0); this exception does not fix that vulnerability.

Release Notes

Testing

  • Full root mise run rust:deny, including nine crypto-policy cases, passes
    with the explicitly accepted SQLite exception and the existing RSA exception.
  • All 12 tracked Cargo lockfiles and five alignment rules pass.
  • Locked advisory scans of all 12 Cargo workspaces pass with those exceptions.
  • E2E library tests: 23 passed; maintained E2E Clippy passes with -D warnings.
  • E2E Rust formatting and complete diff checks pass.
  • Local Docker OTLP tests: two passed on the h2-only runtime contents in
    1e8843aeb. The final contents differ from that tested revision only in
    deny.toml, so the runtime validation remains applicable.
  • Remote test:e2e CI passes on the current PR head.

The existing RSA advisory exception and yanked-package warnings remain. The RSA
exception's no-patched-release rationale needs a separate review: RSA 0.10.0 is
now released, but current consumers still require older versions.

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • Architecture docs updated (not applicable)

Update h2 from 0.4.15 to the first patched release, 0.4.16, in the
standalone e2e/rust lockfile. This addresses GHSA-q83h-524g-xf6h,
which permits unbounded buffering of empty HTTP/2 DATA frames.

Cargo also resolves the existing broad Windows API requirements of
errno, rustix, and tempfile to the already locked windows-sys 0.52.0.
No other package versions change, and no source changes are required.

Signed-off-by: Adrien Langou <alangou@nvidia.com>
Backport SQLx's upstream libsqlite3-sys upper-bound change into the
published sqlx-sqlite 0.9.0 driver. Require a patched SQLite binding and
select libsqlite3-sys 0.39.1 (SQLite 3.54.1) in all ten affected lockfiles.

Keep the upstream Rust sources and SQLx API unchanged. Include the full
upstream licenses, verified archive provenance, and removal instructions
for the temporary path patches. Preserve upstream rustdoc line breaks
and exclude third-party sources from NVIDIA header rewriting.

No security-policy exception is added. Cargo also resolves tempfile's
broad getrandom requirement to the existing 0.3.4 entry in E2E and the
V8 example; no other package versions change in this commit.

Signed-off-by: Adrien Langou <alangou@nvidia.com>
@alangou alangou added the test:e2e Requires end-to-end coverage label Nov 9, 2026
@copy-pr-bot

copy-pr-bot Bot commented Nov 9, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions

github-actions Bot commented Nov 9, 2026

Copy link
Copy Markdown

Label test:e2e applied, but pull-request/5392 does not exist yet. A maintainer needs to comment /ok to test 471027afd7564c3b1c552fbc1ff3c4cf786370d1 to mirror this PR. Once the mirror exists, re-apply the label or re-run Branch E2E Checks from the Actions tab.

@alangou

alangou commented Nov 9, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test 471027a

Remove the vendored SQLx SQLite driver and its workspace patches.
Keep the released dependency graph while waiting for SQLx to accept
patched libsqlite3-sys >=0.39.0.

Record a temporary RUSTSEC-2026-0459 exception with the upstream fix
and an explicit removal condition. Preserve the h2 remediation.

Signed-off-by: Adrien Langou <alangou@nvidia.com>
@alangou alangou changed the title fix(deps): address h2 and SQLite security advisories fix(deps): update h2 and defer SQLite until SQLx release Nov 9, 2026
@alangou

alangou commented Nov 9, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test bf05bc6

@alangou
alangou enabled auto-merge November 9, 2026 16:11
@alangou
alangou added this pull request to the merge queue Nov 9, 2026
Merged via the queue into main with commit 5e3cb25 Nov 9, 2026
342 of 348 checks passed
@alangou
alangou deleted the fix/dependency-maintenance-20261109/alangou branch November 9, 2026 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants