feat: Integrate Python SDK into the monorepo #1790
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR integrates the Python SDK from @foreign/python into the monorepo's CI system. The changes adapt the SDK's maturin-generated workflow to work properly within the monorepo structure while preserving all original functionality.
Changes
Added python-sdk detection to .github/changed-files-config.json to enable PR validation
Created a new workflow file .github/workflows/ci-check-python-sdk.yml that:
Preserves the complete maturin-based build system
Builds the SDK for all platforms (Linux, macOS, Windows)
Supports multiple architectures (x86_64, aarch64)
Runs tests
Generates source distributions
Handles PyPI releases (via python-v* tags)
Adapted all paths and directories to work within the monorepo structure
Added workflow triggers for monorepo PR validation
Updated PyO3 to solve clippy warnings per rust-lang/rust-clippy#12039
Testing
The workflow has been configured to:
Trigger on PR changes affecting Python SDK files
Build and test the SDK in the monorepo context
Support the original release process