-
Notifications
You must be signed in to change notification settings - Fork 35
RELEASE: 1.3.0 #418
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
RELEASE: 1.3.0 #418
Conversation
Co-authored-by: David Engel <dengel1012@gmail.com>
Syncing Github main to ADO main Related work items: #38037
…rosoft/mssql-python into bewithgaurav/publish_symbols
#### AI description (iteration 1) #### PR Classification This pull request is a bug fix that corrects the dummy release pipeline configuration to default to a non-official setup. #### PR Summary The changes update the dummy release pipeline to extend a non-official template and remove outdated TSA settings, ensuring consistency with the refactored release pipelines and preventing accidental production configurations. - In `OneBranchPipelines/dummy-release-pipeline.yml`, the extension is switched from the official template (`v2/OneBranch.Official.CrossPlat.yml`) to the non-official template (`v2/OneBranch.NonOfficial.CrossPlat.yml`). - In `OneBranchPipelines/dummy-release-pipeline.yml`, TSA configuration settings have been removed. - In `OneBranchPipelines/dummy-release-pipeline.yml`, header comments and descriptions were updated to accurately reflect the non-official, testing-only nature of this pipeline. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40517
#### AI description (iteration 1) #### PR Classification Release update transitioning the driver from Public Preview to General Availability (GA) with version and documentation updates. #### PR Summary This pull request finalizes the GA release of the mssql‑python driver (version 1.0.0) by updating user-facing documentation, version metadata, and CI pipelines to support Python 3.14. - **`PyPI_Description.md`**: Revised release notes to highlight the GA status and new features while removing Public Preview references. - **`README.md`**: Updated authentication details, connection examples, and GA messaging to reflect production readiness. - **`mssql_python/__init__.py` and `setup.py`**: Updated the driver version from 0.14.0 to 1.0.0. - **Pipeline files** (`build-release-package-pipeline.yml`, `build-linux-single-stage.yml`): Enabled Python 3.14 builds for Windows, macOS, and Linux. - **`ROADMAP.md`**: Streamlined the roadmap into a concise table of upcoming features. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40559
Automated sync from GitHub main branch. This PR contains the latest changes from the public GitHub repository. Please review and merge to complete the sync. Related work items: #40703
This PR introduces an automated daily pipeline to sync the public GitHub repository (microsoft/mssql-python) with our internal Azure DevOps repository. ## What's New - **Pipeline**: `OneBranchPipelines/github-ado-sync.yml` - **Schedule**: Runs daily at 5pm IST (11:30 UTC) - **Automation**: Clones GitHub main, merges into ADO, creates PR with reviewers ## Key Features - No manual sync needed - fully automated - Secret scanning protection (blocks pushes with secrets) - Timestamp-based branch naming (supports multiple runs/day) - Auto conflict resolution (always takes GitHub version) - OneBranch compliance checks enforced ## Testing - Successfully tested with manual runs - Verified secret scanning catches violations before ADO sync - PR creation and reviewer assignment working correctly ---- #### AI description (iteration 1) #### PR Classification Major feature release and extensive refactoring with new build, release, and pipeline integrations. #### PR Summary This pull request transitions mssql‑python from public preview to a generally available release by overhauling core driver components, enhancing logging and DBAPI compliance, and adding comprehensive OneBranch pipelines for building, testing, and releasing across Windows, macOS, and Linux. - `mssql_python/`: Core modules such as `cursor.py`, `connection.py`, `exceptions.py` and `auth.py` have been refactored for improved error handling and DBAPI v2.0 compliance. - New logging infrastructure is implemented in `mssql_python/logging.py` with robust singleton management and sensitive data sanitization. - Extensive additions of pipeline definitions and variable files (e.g. in `/OneBranchPipelines/`, GitHub workflows, and CI/CD YAML files) to support cross‑platform automated builds, code coverage, and dummy/official release processes. - New helper modules for connection string parsing and building (`connection_string_parser.py`, `connection_string_builder.py`) have been added. - Documentation files (`README.md`, `ROADMAP.md`, `CONTRIBUTING.md`) have been updated to reflect GA status and expanded platform support, while obsolete files (like `bcp_options.py`) have been removed. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40703
This PR syncs ado with latest github main. ---- #### AI description (iteration 1) #### PR Classification This PR is a bug fix and test enhancement update aimed at improving Unicode conversion, connection cleanup, query timeout handling, and CI pipeline configuration. #### PR Summary The pull request enhances core ODBC functionality and stability by updating conversion routines and connection management while significantly expanding test coverage for edge cases and error handling. - **`mssql_python/pybind/unix_utils.cpp` and `ddbc_bindings.h`**: Updated UTF-8/UTF-16 and surrogate pair conversion logic for safer Unicode handling and correct resource management (including shutdown behavior). - **`mssql_python/__init__.py`, `connection.py`, and `cursor.py`**: Introduced thread-safe connection registration via a global weak reference registry and improved query timeout configuration. - **New and extended tests**: Multiple test files (e.g., `tests/test_013_SqlHandle_free_shutdown.py`, `tests/test_002_types.py`, `tests/test_014_ddbc_bindings_coverage.py`, etc.) now comprehensively validate UTF conversions, SQLWCHAR handling, and timeout behaviors. - **CI pipeline and auth fixes**: Adjusted pipeline YAML scripts and authentication parameter filtering to ensure correct branch handling and proper inclusion/exclusion of security-sensitive options. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40703
Suppressing false Credscan errors in pipeline. ---- #### AI description (iteration 1) #### PR Classification Bug fix to resolve false Credscan errors by updating the secret scanning configuration. #### PR Summary This pull request addresses secret scanning issues by replacing the deprecated hidden baseline and suppression files with updated JSON configuration files that contain current signature and metadata settings. - `/.gdn/gdnbaselines`: Removed the old file and added an updated JSON baseline with revised signatures. - `/.gdn/gdnsuppress`: Removed the old file and added an updated JSON suppression file with current suppression sets. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40989
…n ado and github Updating sync pipeline to resolve merge issues between ado and github ---- #### AI description (iteration 1) #### PR Classification Pipeline update to resolve merge conflicts and streamline synchronization between GitHub and ADO. #### PR Summary This pull request refactors the sync pipeline configuration to address merge issues between ADO and GitHub by eliminating the outdated ADO mirror steps and using GitHub as the source of truth. - `github-ado-sync.yml`: Removed fetching and tracking of the ADO mirror remote and now creates the sync branch directly. - `github-ado-sync.yml`: Replaced the GitHub repository clone with a self-checkout and added a GitHub remote configuration. - `github-ado-sync.yml`: Updated the sync logic to pull from GitHub main and resolve merge conflicts by accepting GitHub’s version. - `github-ado-sync.yml`: Modified the push command to target the GitHub origin instead of the ADO mirror. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #40703
…ut issue in ManyLinux skipping multiple test to resolve build failure timeout issue in ManyLinux ---- #### AI description (iteration 1) #### PR Classification This PR optimizes the test suite by skipping long-running stress tests to resolve build failure timeout issues in ManyLinux. #### PR Summary The pull request marks multiple SQLWCHAR conversion tests as skipped, addressing the work item focused on optimizing SQLHandle free and wstring conversion tests to speed up the PR validation pipeline. - `/tests/test_013_sqlwchar_conversions.py`: Added `@pytest.mark.skip` decorators with appropriate reasons to all stress tests in both the TestSQLWCHARConversions and TestSQLWCHARConversionsCommon classes. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #41135
#### AI description (iteration 1) #### PR Classification This pull request is a release update that introduces enhancements and critical bug fixes while updating version information. #### PR Summary The update bumps the project to version 1.1.0 and refreshes the release notes to detail new features and crucial fixes for stability, performance, and security. - In `PyPI_Description.md`: Updated the version header and expanded release notes to include thread-safe encoding/decoding, comprehensive linting, and several critical bug fixes (e.g., Linux stability, connection pooling isolation, UTF-16 optimizations, connection string handling, and more). - In `mssql_python/__init__.py` and `setup.py`: Updated the version numbers to 1.1.0. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> WorkItem #41191 Related work items: #41191
…0116-071953 into main" Revert "Merge pull request 6700 from github-sync-20260116-071953 into main" Reverted commit `01a7b17f`. Related work items: #41674
Releasev1.2.0 ---- #### AI description (iteration 1) #### PR Classification Release update incorporating new features, bug fixes, and CI enhancements. #### PR Summary This pull request prepares the v1.2.0 release by updating documentation and version strings, while outlining key new features and bug fixes. - `PyPI_Description.md`: Updated the "What's new" section to v1.2.0, detailing enhancements such as the `Connection.closed` property, dictionary-based parameter support, Copilot prompts, bug fixes for LOB batch retrieval and non-ASCII path resolution, and CI improvements including SQL Server 2025 test support and a forked PR coverage workflow. - `mssql_python/__init__.py` and `setup.py`: Updated version numbers from 1.1.0 to 1.2.0. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot --> Related work items: #41674
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Updates the package metadata and release notes to reflect the 1.3.0 release.
Changes:
- Bump package version to
1.3.0insetup.py. - Bump runtime
__version__to1.3.0inmssql_python/__init__.py. - Update
PyPI_Description.md“What’s new” section to v1.3.0 release notes.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| setup.py | Updates the distribution version to 1.3.0. |
| mssql_python/init.py | Updates the package __version__ constant to 1.3.0. |
| PyPI_Description.md | Refreshes the “What’s new” section for the 1.3.0 release. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
📊 Code Coverage Report
Diff CoverageDiff: main...HEAD, staged and unstaged changes
Summary
📋 Files Needing Attention📉 Files with overall lowest coverage (click to expand)mssql_python.pybind.logger_bridge.hpp: 58.8%
mssql_python.pybind.logger_bridge.cpp: 59.2%
mssql_python.row.py: 66.2%
mssql_python.pybind.ddbc_bindings.cpp: 69.3%
mssql_python.pybind.ddbc_bindings.h: 69.7%
mssql_python.pybind.connection.connection.cpp: 75.3%
mssql_python.ddbc_bindings.py: 79.6%
mssql_python.pybind.connection.connection_pool.cpp: 79.6%
mssql_python.connection.py: 84.1%
mssql_python.cursor.py: 84.7%🔗 Quick Links
|
PyPI_Description.md
Outdated
| ### CI/Infrastructure | ||
|
|
||
| - **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. | ||
| - **ES Metadata Schema Update** - Updated es-metadata.yml to schema v1.0.0 (#416). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not required for customers in pypi. I suggest just eliminate the entire CI/Infra section from here
we just have a single bugfix
PyPI_Description.md
Outdated
| - **Segmentation Fault Fix** - Fixed segmentation fault in libmsodbcsql-18.5 during SQLFreeHandle() (#415). | ||
|
|
||
| - **Non-ASCII Path Resolution** - Fixed path resolution for files with non-ASCII characters on Windows. | ||
| - **Decimal Separator Fix** - Removed unused decimal separator code and added regression tests (#384). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this was also actually fixed earlier, can eliminate - just segfault is the one we have for this release
PyPI_Description.md
Outdated
| - **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. | ||
| - **ES Metadata Schema Update** - Updated es-metadata.yml to schema v1.0.0 (#416). | ||
|
|
||
| - **CodeQL Snapshot Fix** - Fixed S360 CodeQL finding in PR validation to resolve stale snapshot issue (#407, #417). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
PyPI_Description.md
Outdated
| - **CodeQL Snapshot Fix** - Fixed S360 CodeQL finding in PR validation to resolve stale snapshot issue (#407, #417). | ||
|
|
||
| - **Forked PR Coverage Workflow** - Implemented coverage comment workflow for pull requests from forked repositories, improving the contribution experience for external contributors. | ||
| - **Code Cleanup** - Removed unused methods from `helpers.py` (#399). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
d1039ba to
a9ecde8
Compare
Work Item / Issue Reference
Summary
This pull request updates the project to version 1.3.0 and introduces several bug fixes, infrastructure improvements, and code cleanups. The most notable changes are the resolution of critical bugs, updates to CI infrastructure, and removal of unused code.
Bug Fixes:
libmsodbcsql-18.5duringSQLFreeHandle()to improve stability (FIX: Segmentation Fault in libmsodbcsql-18.5 during SQLFreeHandle() #415).CI/Infrastructure Improvements:
es-metadata.ymlto schema v1.0.0 to align with the latest metadata standards (CHORE: Update es-metadata.yml to schema v1.0.0 #416).Code Cleanup:
helpers.pyto streamline the codebase (CHORE: Remove unused methods fromhelpers.py& Fix PR Description #399).Version Updates:
__init__.pyandsetup.pyto reflect the new release. [1] [2]