Skip to content

Conversation

@bewithgaurav
Copy link
Collaborator

@bewithgaurav bewithgaurav commented May 14, 2025

This pull request introduces significant updates to the build pipeline, Python bindings, and supporting documentation for the mssql_python project. The changes streamline the build process, enhance compatibility with multiple Python versions and architectures, and improve the maintainability of the codebase. Below are the key updates:

Build Pipeline Enhancements

  • Added a new Azure DevOps pipeline (eng/pipelines/build-whl-pipeline.yml) to build .whl and .pyd files for multiple Python versions (3.10–3.13) and architectures (x64, arm64). It includes steps for dependency installation, artifact publishing, and ARM64-specific handling.
  • Refactored the test pipeline (eng/pipelines/test-pipeline.yml) to use build.bat for building .pyd files and updated artifact paths to include versioned .pyd filenames. [1] [2]

Python Bindings Improvements

  • Introduced a dynamic loader in ddbc_bindings.py to locate and load the correct .pyd file based on the current Python version and architecture. Includes fallback logic for unmatched configurations.
  • Updated CMakeLists.txt to support Python version detection, architecture-specific builds, and improved compatibility with modern C++ standards (C++17). Added debug messages and fallback mechanisms for Python library paths.

Code Cleanup

  • Removed debug print statements from connection string construction methods in connection.py and helpers.py to clean up logging. [1] [2]

Documentation Updates

  • Enhanced the README.md in the pybind directory with clearer build instructions, including updated prerequisites, build steps, and an explanation of the build.bat script.

Copilot AI review requested due to automatic review settings May 14, 2025 08:44

This comment was marked as outdated.

@bewithgaurav bewithgaurav changed the title Added Build steps and Backward compatibility FEAT: Pipeline & Setup to Build WHL Files and Backward Compatibility May 14, 2025
@bewithgaurav bewithgaurav changed the title FEAT: Pipeline & Setup to Build WHL Files and Backward Compatibility FEAT: Pipeline & Setup to Build WHL Files and Python Backward Compatibility May 15, 2025
Copy link
Contributor

@sumitmsft sumitmsft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Support for x64 and ARM64 to build WHL file and python version backward compatibility (>=3.10) for wider adaptability.

@sumitmsft sumitmsft merged commit 4b518c9 into main May 15, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants