-
Notifications
You must be signed in to change notification settings - Fork 27
RELEASE: 1.0.0 #336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+41
−52
Merged
RELEASE: 1.0.0 #336
Changes from all commits
Commits
Show all changes
72 commits
Select commit
Hold shift + click to select a range
56518ec
build pipeline publishing pdb as artifacts
bewithgaurav 00a2e00
added a job to publish in dummy release pipeline
bewithgaurav 8e80e7d
fixed pdb dir
bewithgaurav 0637928
fixed pdb ext
bewithgaurav e2a1037
fixed parameters and made them into env
bewithgaurav 632f13b
fixed input azureSubscription
bewithgaurav 080af4f
fixed input azureSubscription as mssql-python
bewithgaurav 06caf7e
fixed input azureSubscription as mssql-python-service
bewithgaurav 1e7b296
fix download pipeline artifact
bewithgaurav 026f9a8
rename SymbolsArtifactName
bewithgaurav c6372d1
changed symbolsArtifactName
bewithgaurav e219f61
Merge branch 'main' into bewithgaurav/publish_symbols
bewithgaurav 640bf3a
code changes from review
bewithgaurav dab82e8
add symbol generation and copy step in dummy release
bewithgaurav 3d68d94
syntax
bewithgaurav b987d0d
use onebranch temp
bewithgaurav bfab7cf
use onebranch temp
bewithgaurav 115b262
use onebranch temp
bewithgaurav 864a7ff
use onebranch template - change pool to windows
bewithgaurav 4faedbc
use onebranch template - remove globalSdl
bewithgaurav 4421646
remove unnecessary step
bewithgaurav 0639734
Merged PR 5852: SYNC: Github main to ADO main
bewithgaurav 2d0265f
Merge branch 'main' into bewithgaurav/publish_symbols
bewithgaurav 7f2d80b
Merge branch 'bewithgaurav/publish_symbols' of https://github.com/mic…
bewithgaurav 3069fcb
conflicts
bewithgaurav 01b7b3a
conflicts
bewithgaurav 4624477
sync to main
bewithgaurav 285dc28
added resources in pipeline
bewithgaurav 99128d6
added variables in pipeline
bewithgaurav b7d923a
added variables in pipeline
bewithgaurav 1a5bf33
added variables in pipeline
bewithgaurav 06a505e
Merged PR 5874: SYNC: Templates and Github Commit History
bewithgaurav 5328b65
ADO work item in contributing
bewithgaurav 4957db1
Merged PR 5875: CHORE: Change Dummy Release Pipeline to 1ES Governed …
bewithgaurav ec764d1
Merged PR 6131: SYNC: Github main to ADO main
bewithgaurav 6fd72e6
Merged PR 6157: SYNC: Github main to ADO main
bewithgaurav 6d8d8ff
Merged PR 6156: CHORE: OneBranch Pipelines - Build Pipeline
bewithgaurav 587e68d
Merged PR 6211: FIX: Build Pipeline Corrections
bewithgaurav 7c1c428
Merged PR 6233: FEAT: Build Pipeline OneBranch Migration
bewithgaurav 9147380
Merged PR 6242: FIX: Build Pipeline Symbol Publishing
bewithgaurav f896b68
Merge pull request 6209 from invBootstrap into main
9cfb2d7
Merged PR 6245: FIX: Build Pipeline - List signed files
bewithgaurav 7005bb5
Merged PR 6247: FIX: Build Pipeline - Use OneBranch Signing
bewithgaurav df7b770
Merged PR 6248: FIX: Commented ESRP CodeSign Task
bewithgaurav 9395287
Merged PR 6250: FIX: Build Release Pipeline - Removed Symbols Publishing
bewithgaurav ce7232d
Merged PR 6317: FEAT: Migrate Official and Dummy Release Pipelines
bewithgaurav 335b5b7
Merged PR 6387: SYNC: Github main to ADO main
bewithgaurav 708dffd
Merged PR 6424: Add the baseline and suppression file to guide Guardian
saurabh500 3fb8ab2
Merged PR 6426: SYNC: GH main to ADO main
bewithgaurav 7302bf1
Merged PR 6388: FIX: Use .gdnsuppress and .gdnbaseline to suppress fa…
bewithgaurav 5499a65
Merged PR 6427: FIX: Disable BinSkim for Ubuntu and macOS
bewithgaurav fd2bf7f
Merged PR 6457: SYNC: GH to ADO Main
bewithgaurav 30e8363
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav 62972d3
Merged PR 6456: FEAT: Download Windows Python ARM64 Libs from Nuget d…
bewithgaurav e697aee
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav bc79a97
Merged PR 6461: CHORE: Build Pipeline Modernization - Multi-Platform …
bewithgaurav 3d5d0e8
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav c93149a
Merged PR 6462: RELEASE: 0.14.0
bewithgaurav 7e83b9f
Merge branch 'main' of https://github.com/microsoft/mssql-python
bewithgaurav 76a47a6
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav cbe1816
CHORE: Clean Up Release Pipelines
bewithgaurav 1818738
Merged PR 6463: CHORE: Clean Up Dummy & Release Pipelines
bewithgaurav a709bcf
FIX: Dummy Release is NonOfficial
bewithgaurav 4466915
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav 545e05d
Merged PR 6466: FIX: Dummy Release should be NonOfficial By Default
bewithgaurav 8630f9c
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav a92f643
Merge branch 'main' of https://sqlclientdrivers.visualstudio.com/mssq…
bewithgaurav c0b38d4
Merge branch 'main' of https://github.com/microsoft/mssql-python
bewithgaurav 30e79e0
RELEASE: 1.0.0
bewithgaurav 2713de4
Merge branch 'main' of https://github.com/microsoft/mssql-python into…
bewithgaurav ace3a6f
Merge branch 'bewithgaurav/official-release-pipeline' into release/1.0.0
bewithgaurav 75bb4c9
Merge branch 'main' into release/1.0.0
bewithgaurav File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,65 +1,51 @@ | ||
| # mssql-python | ||
|
|
||
| mssql-python is a new first-party SQL Server driver for Python that has all of the benefits of a fresh start while preserving a familiar experience for developers. | ||
|
|
||
| # General Availability Release | ||
| mssql‑python is now Generally Available (GA) as Microsoft’s official Python driver for SQL Server, Azure SQL, and SQL databases in Fabric. This release delivers a production‑ready, high‑performance, and developer‑friendly experience. | ||
| ## What makes mssql-python different? | ||
|
|
||
| ### Powered by DDBC – Direct Database Connectivity | ||
|
|
||
| Most Python SQL Server drivers, including pyodbc, route calls through the Driver Manager, which has slightly different implementations across Windows, macOS, and Linux. This results in inconsistent behavior and capabilities across platforms. Additionally, the Driver Manager must be installed separately, creating friction for both new developers and when deploying applications to servers. | ||
|
|
||
| At the heart of the driver is DDBC (Direct Database Connectivity) — a lightweight, high-performance C++ layer that replaces the platform’s Driver Manager. | ||
|
|
||
| At the heart of the mssql-python driver is DDBC (Direct Database Connectivity) — a lightweight, high-performance C++ layer that replaces the platform’s Driver Manager. | ||
| Key Advantages: | ||
|
|
||
| - Provides a consistent, cross-platform backend that handles connections, statements, and memory directly. | ||
| - Interfaces directly with the native SQL Server drivers. | ||
| - Integrates with the same TDS core library that powers the ODBC driver. | ||
|
|
||
| ### Why is this architecture important? | ||
|
|
||
| By simplifying the architecture, DDBC delivers: | ||
|
|
||
| - Consistency across platforms | ||
| - Lower function call overhead | ||
| - Zero external dependencies on Windows (`pip install mssql-python` is all you need) | ||
| - Full control over connections, memory, and statement handling | ||
|
|
||
| ### Built with PyBind11 + Modern C++ for Performance and Safety | ||
|
|
||
| To expose the DDBC engine to Python, mssql-python uses PyBind11 – a modern C++ binding library, instead of ctypes. With ctypes, every call between Python and the ODBC driver involved costly type conversions, manual pointer management, resulting in slow and potentially unsafe code. | ||
| To expose the DDBC engine to Python, mssql-python uses PyBind11 – a modern C++ binding library. | ||
|
|
||
| PyBind11 provides: | ||
|
|
||
| - Native-speed execution with automatic type conversions | ||
| - Memory-safe bindings | ||
| - Clean and Pythonic API, while performance-critical logic remains in robust, maintainable C++. | ||
|
|
||
| ## Public Preview Release | ||
|
|
||
| We are currently in **Public Preview**. | ||
|
|
||
| ## What's new in v0.14.0 | ||
|
|
||
|
|
||
| ## What's new in v1.0.0 | ||
|
|
||
| ### New Features | ||
| - **50-60% Faster Fetching:** Major optimizations including direct UTF-16 decoding, Python C API usage, and cached converters deliver dramatic performance gains for large result sets (100K+ rows), with **1.4-1.7× improvement** for very large datasets. | ||
| - **Connection String Validation:** Intelligent parser with allowlist validation, synonym normalization, and clear error messages for malformed strings. **Breaking change:** Unknown parameters now raise errors instead of being silently ignored. | ||
| - **Enhanced DECIMAL Precision:** Increased precision support from 15 to 38 digits (SQL Server maximum) with proper binary representation for high-precision calculations. | ||
| - **Comprehensive Logging:** Unified Python-C++ logging framework with `setup_logging()` API for detailed diagnostics with zero overhead when disabled. | ||
| - **Connection Attribute Control:** New `Connection.set_attr()` method for fine-grained control over ODBC connection attributes, isolation levels, and timeouts (pyodbc-compatible API). | ||
| - **XML Data Type:** Comprehensive support for SQL Server `XML` type, including efficient streaming for large documents. | ||
| - **DECIMAL Scientific Notation:** Improved handling of decimal values in scientific notation to prevent SQL Server conversion errors. | ||
|
|
||
| ### Bug Fixes | ||
| - **Access Token Management:** Fixed Microsoft Entra ID authentication token handling to eliminate corruption in concurrent scenarios. | ||
| - **Decimal executemany Fix:** Resolved type inference issues when batch inserting Decimal values. | ||
|
|
||
| ⚠️ **Breaking Change:** Connection string validation now raises `ConnectionStringParseError` for unknown/misspelled parameters. Review connection strings before upgrading. | ||
|
|
||
|
|
||
| - *Python 3.14 support* - ensuring compatibility with the latest Python ecosystem. | ||
| - *GA stability* - hardened release engineering, expanded test coverage, and compliance checks for enterprise readiness. | ||
|
|
||
| For more information, please visit the project link on Github: https://github.com/microsoft/mssql-python | ||
|
|
||
| If you have any feedback, questions or need support please mail us at [email protected]. | ||
|
|
||
| ## What's Next | ||
|
|
||
| As we continue to develop and refine the driver, you can expect regular updates that will introduce new features, optimizations, and bug fixes. We encourage you to contribute, provide feedback and report any issues you encounter, as this will help us improve the driver ahead of General Availability. | ||
| As we continue to refine the driver and add new features, you can expect regular updates, optimizations, and bug fixes. We encourage you to contribute, provide feedback and report any issues you encounter, as this will help us improve the driver. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.