CHORE: Accept stable ABI Rust wheels and mssql-python-rs 0.3.0 - #804
Conversation
PR Performance Report✅ No regression detectedNo consistent slowdowns detected across all 2 environments. 0 IMPROVEMENTS 0 SLOWDOWNS 2/2 ENVIRONMENTS Coverage: 2 of 2 environments completed. Advisory result; does not block merging. Performance diagnosticsPhase times are inclusive diagnostics and must not be added together. They identify where measured time changed, not why it changed. No affected phases or call-count changes were recorded. All database tasks and timingsUnix / SQL Server 2022
Unix / SQL Server 2025
Build and measurement detailsPR head:
A consistent change requires more than 20% median paired movement, at least 1 ms between the median runtimes, and at least 80% of pairs exceeding the relative threshold in the same direction. A slowdown without enough pair agreement is reported as inconsistent. The displayed change is the median of paired before-and-after ratios. It is not recalculated from the two displayed median runtimes. Both revisions use profiling-enabled builds on the same agent and database, with alternating order and discarded warmups. Results are diagnostic and do not represent production-wheel latency. Raw samples and logs are attached to the ADO run as |
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
No unresolved review issues were identified.
Review effort: Lite
Findings: None
What changed in this PR
Updates mssql-python-rs installers to select stable-ABI cp310-abi3 wheels across supported platforms.
Changes:
- Updated Bash and PowerShell wheel-selection patterns.
- Updated fixtures and installer contract tests.
| File | Description |
|---|---|
tests/test_037_rs_wheel_download.py |
Updates fixtures and validates stable-ABI selection. |
eng/scripts/install-mssql-py-core.sh |
Selects stable-ABI wheels on Unix platforms. |
eng/scripts/install-mssql-py-core.ps1 |
Selects stable-ABI wheels on Windows. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The transport pin conflicts with the contract test’s expected 0.1.0 version and must be reconciled.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (1)
9aa83dd to
293c8cd
Compare
📊 Code Coverage Report
Diff CoverageDiff: main...HEAD, staged and unstaged changesNo lines with coverage information in this diff. 📋 Files Needing Attention📉 Files with overall lowest coverage (click to expand)mssql_python.pybind.performance_counter.hpp: 0.7%
mssql_python.pybind.logger_bridge.cpp: 57.9%
mssql_python.pybind.ddbc_bindings.h: 62.6%
mssql_python.pybind.logger_bridge.hpp: 70.8%
mssql_python.pybind.ddbc_bindings.cpp: 79.3%
mssql_python.pybind.connection.connection_pool.cpp: 82.3%
mssql_python.pybind.connection.connection.cpp: 83.1%
mssql_python.logging.py: 86.2%
mssql_python.pooling.py: 90.1%
mssql_python.pybind.fetch_temporal.hpp: 92.1%🔗 Quick Links
|
Jahnvi Thakkar (jahnvi480)
left a comment
There was a problem hiding this comment.
LGTM! Approving
Drop the stable-ABI wheel selection now provided by PR #804 and refresh the pinned Python 3.15 PyArrow nightly after the previous build was pruned.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Work Item / Issue Reference
Summary
Update the mssql-python-rs installers to select the stable-ABI
cp310-abi3wheel for each target platform, with focused tests for the wheel-selection contract. Adopt the releasedmssql-python-rs0.3.0 package for both the public dependency and internal NuGet transport before the nextmssql-pythonrelease.Validation:
mssql-python-rs==0.3.0is published with all nine stable-ABI wheels.mssql_python_rs-0.3.0-cp310-abi3-win_amd64.whl; package metadata reported0.3.0andmssql_py_coreimported successfully.python -m pytest --noconftest tests/test_037_rs_wheel_download.py tests/test_038_mssql_odbc_daily_validation.py -q(13 passed, 5 platform skips).mssql-python-rs==0.3.0.black --check --line-length=100 mssql_python tests(101 files unchanged).Producer: microsoft/mssql-rs#669