You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#### AI description (iteration 1)
#### PR Classification
This PR implements API enhancements and extensive test/pipeline improvements to strengthen metadata, output conversion, encoding/decoding, and batch execution features.
#### PR Summary
- **`eng/pipelines/build-whl-pipeline.yml` & `.github/workflows/pr-code-coverage.yml`:** Updated to build wheels and report code coverage across multi‑architecture Linux containers (manylinux, musllinux, Alpine, etc.).
- **`mssql_python/cursor.py`:** Improved metadata handling and result set processing with new helper methods and fallback descriptions.
- **`mssql_python/connection.py`:** Added a robust output converter API (including methods to add, get, remove, and clear converters) and enhanced `execute`/`batch_execute` with better error and timeout management.
- **Tests in `/tests/`:** Expanded coverage for connection, encoding/decoding, output converters, rowcount, transaction handling, and thread safety to meet DB‑API 2.0 requirements.
- **File deletion:** Removed `mssql_python/testing_ddbc_bindings.py` as its functionality has been integrated into the main modules.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Related work items: #39062
Copy file name to clipboardExpand all lines: PyPI_Description.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,12 +39,12 @@ PyBind11 provides:
39
39
40
40
We are currently in **Public Preview**.
41
41
42
-
## What's new in v0.12.0
42
+
## What's new in v0.13.0
43
43
44
-
-**Complex Data Type Support:**Added native support for DATETIMEOFFSET and UNIQUEIDENTIFIER data types with full round-trip handling, enabling seamless integration with Python's timezone-aware `datetime` objects and `uuid.UUID` types.
45
-
-**Support for monetary or currency values data types:**Extended MONEY and SMALLMONEY support to `executemany` operations with proper NULL handling and decimal conversion for improved bulk financial data processing.
46
-
-**Improved Database Metadata API:**Added `getinfo()` method with enhanced ODBC metadata retrieval, allowing users to query driver/data source information using ODBC info types.
47
-
-**Data Processing Optimizations:**Removed aggressive datetime parsing to prevent incorrect type conversions and improve data integrity across diverse datetime formats and string data.
44
+
-**Enhanced Batch Operations:**Complete support for UNIQUEIDENTIFIER and DATETIMEOFFSET in `executemany()` operations with automatic type inference, enabling efficient bulk inserts of complex data types including UUIDs and timezone-aware datetimes.
45
+
-**Streaming Large Values:**Robust handling of large objects (NVARCHAR/VARCHAR/VARBINARY(MAX)) in `executemany()`with automatic Data-At-Execution detection and fallback, supporting streaming inserts and fetches for massive datasets.
46
+
-**Improved Cursor Reliability:**Enhanced `cursor.rowcount` accuracy across all fetch operations, including proper handling of empty result sets and consistent behavior for SELECT, INSERT, and UPDATE operations.
47
+
-**Critical Stability Fixes:**Resolved memory leaks with secure token buffer handling, fixed resource cleanup to prevent segmentation faults during Python shutdown, and corrected type inference bugs in batch operations.
48
48
49
49
For more information, please visit the project link on Github: https://github.com/microsoft/mssql-python
0 commit comments