Skip to content

Commit 95e0836

Browse files
authored
RELEASE: 1.2.0 (#404)
### 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#41674](https://sqlclientdrivers.visualstudio.com/c6d89619-62de-46a0-8b46-70b92a84d85e/_workitems/edit/41674) <!-- External contributors: GitHub Issue --> > GitHub Issue: #<ISSUE_NUMBER> ------------------------------------------------------------------- ### Summary <!-- Insert your summary of changes below. Minimum 10 characters required. --> This pull request updates the package to version 1.2.0 and introduces several new features and bug fixes. The most notable changes include new properties for connection management, enhanced parameter handling, and important bug fixes for data retrieval and file handling. Version bump: * Updated the package version from 1.1.0 to 1.2.0 in `setup.py`, `mssql_python/__init__.py`, and the documentation. [[1]](diffhunk://#diff-60f61ab7a8d1910d86d9fda2261620314edcae5894d5aaa236b821c7256badd7L99-R99) [[2]](diffhunk://#diff-d95f3a67986de29f30453416b1b4c34e6a43207e9a33e2b1b80ef0c378b0a538L18-R18) [[3]](diffhunk://#diff-5236254592b2fea0773f17424b16acf82e3aa351ad8bae33871de5c98eb76eedL38-R52) Feature enhancements: * Added the `Connection.closed` property for improved connection state management. * Enabled support for passing parameters as dictionaries, allowing more flexible query parameterization. * Introduced Copilot prompts for AI-assisted development. Bug fixes: * Fixed `fetchmany(n)` to correctly respect batch size when working with LOB columns. * Resolved path resolution issues for files with non-ASCII characters on Windows. <!-- ### 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 6c5d9af commit 95e0836

3 files changed

Lines changed: 13 additions & 15 deletions

File tree

PyPI_Description.md

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,29 +35,27 @@ PyBind11 provides:
3535
- Memory-safe bindings
3636
- Clean and Pythonic API, while performance-critical logic remains in robust, maintainable C++.
3737

38-
## What's new in v1.1.0
39-
38+
## What's new in v1.2.0
39+
4040
### Enhancements
41-
42-
- **Thread-Safe Encoding/Decoding** - Mutex-based lock protection prevents race conditions in multi-threaded applications with concurrent connections. Strict validation for SQL_WCHAR types and security measures against encoding-based attacks ensure data integrity and application security.
4341

44-
### Critical Bug Fixes
42+
- **Connection.closed Property** - Added `Connection.closed` property to check if a connection is closed, improving connection state management.
4543

46-
- **Linux Stability** - Fixed critical double-free issue causing segmentation faults during Python garbage collection, significantly improving stability on Linux platforms.
44+
- **Parameter as Dictionary** - Added support for passing parameters as dictionaries, providing more flexible query parameterization.
4745

48-
- **Connection Pooling Isolation Level** - Transaction isolation level now explicitly resets to READ COMMITTED when pooled connections are reused, preventing unexpected transaction behavior and isolation level conflicts.
46+
- **Copilot Prompts** - Introduced Copilot prompts for AI-assisted development, enhancing developer productivity.
4947

50-
- **Connection String Escaping** - Fixed parser and builder to correctly handle ODBC curly brace escaping rules, enabling proper handling of special characters in passwords and connection values.
48+
### Bug Fixes
5149

52-
- **UTF-16 String Decoding** - Enhanced `connection.getinfo()` to properly decode UTF-16LE strings from SQL Server, eliminating data corruption when retrieving metadata with non-ASCII characters.
50+
- **FetchMany with LOB Columns** - Fixed `fetchmany(n)` ignoring batch size when working with LOB (Large Object) columns.
5351

54-
- **NULL Parameter Arrays** - Added support for arrays containing only NULL values in `executemany()`, improving batch operation reliability.
52+
- **Non-ASCII Path Resolution** - Fixed path resolution for files with non-ASCII characters on Windows.
5553

56-
- **Query Timeout Consistency** - Refactored timeout handling to set query timeout during cursor initialization, reducing overhead and ensuring consistent timeout application.
54+
### CI/Infrastructure
5755

58-
- **IntegrityError Detection** - Fixed error handling in `fetchall()` for INSERT statements with OUTPUT clause and multiple VALUES entries.
56+
- **SQL Server 2025 Test Support** - Added support for testing against SQL Server 2025 across Windows, macOS, and Linux CI pipelines, ensuring driver compatibility with the upcoming SQL Server release.
5957

60-
- **Sensitive Parameter Filtering** - Corrected authentication parameter filtering to properly exclude Trusted_Connection while preserving encryption settings.
58+
- **Forked PR Coverage Workflow** - Implemented coverage comment workflow for pull requests from forked repositories, improving the contribution experience for external contributors.
6159

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

mssql_python/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
from .helpers import Settings, get_settings, _settings, _settings_lock
1616

1717
# Driver version
18-
__version__ = "1.1.0"
18+
__version__ = "1.2.0"
1919

2020
# Exceptions
2121
# https://www.python.org/dev/peps/pep-0249/#exceptions

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ def finalize_options(self):
9696

9797
setup(
9898
name="mssql-python",
99-
version="1.1.0",
99+
version="1.2.0",
100100
description="A Python library for interacting with Microsoft SQL Server",
101101
long_description=open("PyPI_Description.md", encoding="utf-8").read(),
102102
long_description_content_type="text/markdown",

0 commit comments

Comments
 (0)