feat: deprecate TDS 7.1 support - #1768
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
ReviewOverall this is a small, well-scoped change with solid test coverage (a real socket-based integration-style test rather than mocks). A few notes: Code quality
Correctness
Test coverage
Docs
Nothing blocking here — the string-comparison point is the only thing I'd actually push back on before merging, and it's a one-line fix. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1768 +/- ##
==========================================
+ Coverage 80.71% 80.86% +0.15%
==========================================
Files 90 90
Lines 4880 4887 +7
Branches 927 929 +2
==========================================
+ Hits 3939 3952 +13
+ Misses 643 638 -5
+ Partials 298 297 -1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
TDS 7.1 is only spoken by SQL Server 2000, which left extended support in April 2013, and it is the only protocol version that requires the pre-7.2 legacy paths (client-side emulated transaction state, 32-bit row counts, and other wire format differences). Every other maintained SQL Server driver has already dropped it. Emit a deprecation warning (once per process, with the warning code `TEDIOUS_DEP_TDS71`) when a connection negotiates TDS 7.1, so remaining users are surfaced before support is removed in the next major version. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
bfaedde to
34b0ce6
Compare
|
Review: deprecate TDS 7.1 support (#1768) Nice, focused change. I traced through the login flow and the version-comparison logic; overall it's correct and well tested. A few notes: Correctness
Code quality
Test coverage
Docs
Security / performance
Overall this looks safe to merge; only minor nits above (test-state encapsulation, optional boundary test at exactly 7.2). |
|
🎉 This PR is included in version 20.1.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
TDS 7.1 is only spoken by SQL Server 2000, which left extended support in April 2013, and it is the only protocol version that requires the pre-7.2 legacy paths (client-side emulated transaction state, 32-bit row counts, and other wire format differences). Every other maintained SQL Server driver has already dropped support for servers this old.
This PR emits a deprecation warning - once per process, typed as
DeprecationWarningwith the codeTEDIOUS_DEP_TDS71- when a connection negotiates TDS 7.1, so remaining users are surfaced before support is removed in the next major version:The warning is keyed off the version negotiated in the server's
LOGINACKresponse rather than the configuredtdsVersionoption, so it fires both when7_1is configured explicitly and when a server downgrades the connection. Being a properDeprecationWarningmeans--trace-deprecation,--throw-deprecation, and--no-deprecationall apply, andprocess.on('warning')handlers can filter onwarning.code.The README and the
tdsVersionoption documentation are updated to mark7_1as deprecated.Rollout
🤖 Generated with Claude Code