Problem
This project depends on the Rust crate tiberius which has security problems and maintenance problems. Specifics below.
Solution
There are two recent forks of the crate that provide the security updates and PRs.
mssql — maintained by Joel Henderson (me)
tiberius-ng — maintained by Matt Jackson
Either fork is fine IMHO. You'll want to test them because they're both quite new. I prefer the name mssql because I work with Microsoft extensively and I'm working with their security teams; Matt prefers tiberius-ng name because it's similar.
Dependency chain note
Unlike a plain tiberius-using project, this isn't a same-repo drop-in rename. prqlc's SQL Server
support goes through connector_arrow
(prqlc/prqlc/Cargo.toml:114), and connector_arrow::tiberius::TiberiusConnection<S> hardcodes
client: tiberius::Client<S> — the concrete tiberius crate type, not a generic. prqlc also
depends on tiberius directly (prqlc/prqlc/Cargo.toml:126), but only to construct the
tiberius::Client it hands to that connector in the integration test runner
(prqlc/prqlc/tests/integration/dbs/runner.rs).
So switching prqlc alone from tiberius to mssql won't compile — mssql::Client<S> and
tiberius::Client<S> are different Rust types even though their APIs match. The fix needs to land
in connector_arrow first: a new mssql module mirroring its existing tiberius one (the two
crates' APIs are compatible, so this is a mechanical port, not a rewrite).
I've opened that as a PR: aljazerzen/connector_arrow#81. Once it's merged and published,
prqlc's change becomes the same small rename this project already does for its other drivers
(feature name + Cargo.toml version bump + tiberius:: → mssql:: in the test runner).
Security specifics
- Three unpatched RUSTSEC advisories — RUSTSEC 2026-0098, 2026-0099, 2026-0104
- Unmerged fixes: prisma/tiberius#419 fixes this yet has been open since 2026-05-12 with no maintainer response.
- Reachable panics from untrusted server input: #424 and #425 document 11 sites in the TDS decoder where a malformed/malicious server response aborts the client process rather than returning
Err. Tracked by the RustSec working group at advisory-db#3148.
- Maintenance appears stalled: no commits since 2026-03-06, 140 open issues, and a maintainer-handover request (#427) went unanswered for 11 days.
Drafted with Claude Code; I reviewed and take responsibility for the content.
🤖 Generated with Claude Code
https://claude.ai/code/session_01HmakCYmBF3qUgiW7ctoFJm
Problem
This project depends on the Rust crate
tiberiuswhich has security problems and maintenance problems. Specifics below.Solution
There are two recent forks of the crate that provide the security updates and PRs.
mssql— maintained by Joel Henderson (me)tiberius-ng— maintained by Matt JacksonEither fork is fine IMHO. You'll want to test them because they're both quite new. I prefer the name
mssqlbecause I work with Microsoft extensively and I'm working with their security teams; Matt preferstiberius-ngname because it's similar.Dependency chain note
Unlike a plain
tiberius-using project, this isn't a same-repo drop-in rename.prqlc's SQL Serversupport goes through
connector_arrow(
prqlc/prqlc/Cargo.toml:114), andconnector_arrow::tiberius::TiberiusConnection<S>hardcodesclient: tiberius::Client<S>— the concretetiberiuscrate type, not a generic.prqlcalsodepends on
tiberiusdirectly (prqlc/prqlc/Cargo.toml:126), but only to construct thetiberius::Clientit hands to that connector in the integration test runner(
prqlc/prqlc/tests/integration/dbs/runner.rs).So switching
prqlcalone fromtiberiustomssqlwon't compile —mssql::Client<S>andtiberius::Client<S>are different Rust types even though their APIs match. The fix needs to landin
connector_arrowfirst: a newmssqlmodule mirroring its existingtiberiusone (the twocrates' APIs are compatible, so this is a mechanical port, not a rewrite).
I've opened that as a PR: aljazerzen/connector_arrow#81. Once it's merged and published,
prqlc's change becomes the same small rename this project already does for its other drivers(feature name +
Cargo.tomlversion bump +tiberius::→mssql::in the test runner).Security specifics
Err. Tracked by the RustSec working group at advisory-db#3148.Drafted with Claude Code; I reviewed and take responsibility for the content.
🤖 Generated with Claude Code
https://claude.ai/code/session_01HmakCYmBF3qUgiW7ctoFJm