Skip to content

chore(deps): upgrade rustls stack to 0.23 - #1

Merged
phillipleblanc merged 2 commits into
spiceaifrom
phillip/rustls-0.23
Jun 24, 2026
Merged

chore(deps): upgrade rustls stack to 0.23#1
phillipleblanc merged 2 commits into
spiceaifrom
phillip/rustls-0.23

Conversation

@phillipleblanc

@phillipleblanc phillipleblanc commented Jun 24, 2026

Copy link
Copy Markdown

Upgrade rustls stack to 0.23 (port of tiberius-rs#419)

Cherry-picks the rustls-upgrade commit from upstream prisma/tiberius#419 onto the spiceai branch:

  • tokio-rustls 0.240.26, rustls0.23, rustls-native-certs 0.60.8; drops rustls-pemfile
  • Migrates the TLS stream to the rustls 0.23 API; switches the crypto provider to aws-lc-rs via builder_with_provider (avoids the dual-provider conflict tokio-rustls 0.26 hits when ring is also in the graph)
  • Pins TLS 1.2 to avoid a TLS 1.3 KeyUpdate UnexpectedEof on macOS CI
  • Resolves RUSTSEC-2024-0421 and RUSTSEC-2025-0010

Why we need this

Tiberius 0.12.3 pins tokio-rustls 0.24rustls 0.21rustls-webpki 0.101.7, which keeps the patched rustls-webpki 0.103.13 from being the only copy downstream (GHSA-82j2-j2ch-gfr8 / RUSTSEC-2026-0104, plus the LOW name-constraint advisories). Upstream tiberius has no rustls-0.23 release, so we carry the fix on this fork's spiceai branch until it lands upstream.

Validation

cargo check --no-default-features --features tds73,rustls,chrono (the exact feature set the consumer enables) passes; the resolved tree now uses tokio-rustls 0.26.4 and rustls-webpki 0.103.13 — no rustls 0.21 / rustls-webpki 0.101.7.

Upgrade tokio-rustls to 0.26, rustls to 0.23, and rustls-native-certs to
0.8 to resolve RUSTSEC-2024-0421 and RUSTSEC-2025-0010.

Migrate the TLS stream to the rustls 0.23 API. Switch the crypto provider
to aws-lc-rs via builder_with_provider to avoid the dual-provider conflict
that tokio-rustls 0.26 introduces when ring is also in the dependency graph.

Pin to TLS 1.2 to prevent TLS 1.3 KeyUpdate messages from triggering
UnexpectedEof on the macOS CI runner.
Copilot AI review requested due to automatic review settings June 24, 2026 03:35
@phillipleblanc phillipleblanc self-assigned this Jun 24, 2026
@phillipleblanc phillipleblanc changed the title chore(deps): upgrade rustls stack to 0.23 (port of prisma/tiberius#419) chore(deps): upgrade rustls stack to 0.23 Jun 24, 2026

Copilot AI 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.

Pull request overview

Upgrades the crate’s Rustls/Tokio-Rustls TLS stack to the Rustls 0.23 API surface (via tokio-rustls 0.26), aligning this fork with upstream’s security/compatibility fixes while keeping the change scoped to TLS-related updates.

Changes:

  • Bumps TLS dependencies and removes rustls-pemfile from the rustls feature set.
  • Ports the rustls TLS stream implementation to the rustls 0.23 API, selecting the aws-lc-rs provider and pinning TLS 1.2.
  • Adds cargo-audit configuration to ignore specific dev-dependency-only advisories.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/tds/codec/header.rs Adds TLS-feature gating around PacketHeader::set_type to match where it’s used.
src/client/tls.rs Adds TLS-feature gating around imports/types used only during TLS handshake packet wrapping.
src/client/tls_stream/rustls_tls_stream.rs Migrates Rustls stream implementation to rustls 0.23 types/APIs and aws-lc provider; updates certificate loading/parsing paths.
examples/aad-auth.rs Adjusts the AAD auth example to use raw env var strings and minor string handling updates.
Cargo.toml Updates TLS dependency versions and removes rustls-pemfile from the rustls feature.
.cargo/audit.toml Introduces audit ignore configuration for specified advisories (documented as dev-dependency-only).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/client/tls_stream/rustls_tls_stream.rs
Comment thread .cargo/audit.toml Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@phillipleblanc
phillipleblanc requested a review from a team June 24, 2026 03:40
@phillipleblanc
phillipleblanc merged commit 9ae93c6 into spiceai Jun 24, 2026
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.

4 participants