Skip to content

Commit a3dd3b8

Browse files
authored
RELEASE: 0.10.0 (#225)
### Work Item / Issue Reference <!-- IMPORTANT: Please follow the PR template guidelines below. For mssql-python maintainers: Insert your ADO Work Item ID below (e.g. AB#37452) For external contributors: Insert Github Issue number below (e.g. #149) Only one reference is required - either GitHub issue OR ADO Work Item. --> <!-- mssql-python maintainers: ADO Work Item --> > [AB#38494](https://sqlclientdrivers.visualstudio.com/c6d89619-62de-46a0-8b46-70b92a84d85e/_workitems/edit/38494) <!-- External contributors: GitHub Issue --> > GitHub Issue: #<ISSUE_NUMBER> ------------------------------------------------------------------- ### Summary <!-- Insert your summary of changes below. Minimum 10 characters required. --> This pull request updates the `mssql-python` package for its Public Preview release, with expanded platform support, major API improvements, and enhanced data handling. The most important changes are grouped below: Release and Documentation Updates: * Updated the project status in `PyPI_Description.md` from Alpha to Public Preview, reflecting the new release phase. * Bumped the package version in `setup.py` from `0.9.0` to `0.10.0` to indicate a significant update. Platform and API Enhancements: * Expanded Linux platform support to include SUSE and openSUSE distributions, in addition to existing Alpine Linux support, broadening enterprise compatibility. * Implemented context manager support for Connection and Cursor classes, enabling Python `with` statement usage for automatic transaction management and resource cleanup. * Added Data At Execution (DAE) support for streaming large text and binary parameters, removing memory constraints for bulk operations. * Improved Unicode handling with robust UTF-16 encoding, enhancing emoji and international character support for multilingual data processing. * Enhanced DB-API 2.0 compliance by adding standard exception classes and improving API consistency for easier migration from other Python database drivers. <!-- ### PR Title Guide > For feature requests FEAT: (short-description) > For non-feature requests like test case updates, config updates , dependency updates etc CHORE: (short-description) > For Fix requests FIX: (short-description) > For doc update requests DOC: (short-description) > For Formatting, indentation, or styling update STYLE: (short-description) > For Refactor, without any feature changes REFACTOR: (short-description) > For release related changes, without any feature changes RELEASE: #<RELEASE_VERSION> (short-description) ### Contribution Guidelines External contributors: - Create a GitHub issue first: https://github.com/microsoft/mssql-python/issues/new - Link the GitHub issue in the "GitHub Issue" section above - Follow the PR title format and provide a meaningful summary mssql-python maintainers: - Create an ADO Work Item following internal processes - Link the ADO Work Item in the "ADO Work Item" section above - Follow the PR title format and provide a meaningful summary -->
1 parent 9f17c10 commit a3dd3b8

File tree

2 files changed

+18
-7
lines changed

2 files changed

+18
-7
lines changed

PyPI_Description.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,31 @@
11
# mssql-python
22

3-
This is a new Python driver for Microsoft SQL Server currently in Alpha phase.
3+
This is a new Python driver for Microsoft SQL Server currently in Public Preview phase.
44

55
## Public Preview Release
66

7-
We are making progress - The Public Preview of our driver is now available! This marks a significant milestone in our development journey. While we saw a few early adopters of our alpha release, we are introducing the following functionalities to support your applications in a more robust and reliable manner.
7+
We are making progress - The Public Preview of our driver is now available! This marks a significant milestone in our development journey. While we saw a few early adopters of our public preview release, we are introducing the following functionalities to support your applications in a more robust and reliable manner.
88

99
### What's Included:
1010

1111
- Everything from previous releases
12-
- **Alpine Linux Support:** Added full support for Alpine Linux distribution (musllinux) with specialized driver handling and fixes for musl libc compatibility.
13-
- **Connection Management Improvements:** Fixed autocommit to be False by default and added automatic rollback on connection close for better transaction control.
14-
- **PyODBC Compatibility:** Enhanced type objects and constructor compatibility with pyodbc for seamless migration and interoperability.
12+
- **SUSE Linux Support:** Added full support for SUSE and openSUSE distributions alongside existing other Linux distros support, broadening enterprise Linux compatibility.
13+
- **Context Manager Support:** Implemented Python `with` statement support for Connection and Cursor classes with automatic transaction management and resource cleanup.
14+
- **Large Text Streaming:** Added Data At Execution (DAE) support for streaming large text parameters (`NVARCHAR(MAX)`, `VARCHAR(MAX)`), eliminating memory constraints for bulk text `execute()` operations.
15+
- `VARBINARY(MAX)` support to follow alongwith streaming support for fetch operations.
16+
- **Enhanced Unicode Handling:** Improved emoji and international character support with robust UTF-16 encoding for reliable multilingual data processing.
17+
- **PyODBC Compatibility:** Enhanced API compatibility with pyodbc including:
18+
- DB-API 2.0 exception classes: `Warning`, `Error`, `InterfaceError`, `DatabaseError`, `DataError`, `OperationalError`, `IntegrityError`, `InternalError`, `ProgrammingError`, `NotSupportedError`
19+
- Context manager support with `with` statements for Connection and Cursor
20+
- Encoding configuration APIs: `setencoding()`, `getencoding()`, `setdecoding()`, `getdecoding()`
21+
- Cursor navigation APIs: `next()`, `__iter__()`, `scroll()`, `skip()`, `fetchval()`
22+
- Cursor attributes: `rownumber`, `messages`
23+
- Additional methods: `cursor.commit()`, `cursor.rollback()`, `table()`
1524

1625
For more information, please visit the project link on Github: https://github.com/microsoft/mssql-python
1726

27+
If you have any feedback, questions or need support please mail us at mssql-python@microsoft.com.
28+
1829
### What's Next:
1930

2031
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 for the final release.

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,12 @@ def finalize_options(self):
8383

8484
setup(
8585
name='mssql-python',
86-
version='0.9.0',
86+
version='0.10.0',
8787
description='A Python library for interacting with Microsoft SQL Server',
8888
long_description=open('PyPI_Description.md', encoding='utf-8').read(),
8989
long_description_content_type='text/markdown',
9090
author='Microsoft Corporation',
91-
author_email='pysqldriver@microsoft.com',
91+
author_email='mssql-python@microsoft.com',
9292
url='https://github.com/microsoft/mssql-python',
9393
packages=packages,
9494
package_data={

0 commit comments

Comments
 (0)