-
-
Notifications
You must be signed in to change notification settings - Fork 19
feat: enabled multi python version support #41
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
Conversation
andres-pcg
commented
Nov 27, 2025
- Added support for Python versions 3.10, 3.11, 3.12, and 3.13 in pyproject.toml.
- Updated CI workflows to test builds and run unit and e2e tests across the new Python versions.
- Introduced a helper function for 3DS response validation in e2e tests to streamline assertions and improve readability.
- Added support for Python versions 3.10, 3.11, 3.12, and 3.13 in pyproject.toml. - Updated CI workflows to test builds and run unit and e2e tests across the new Python versions. - Introduced a helper function for 3DS response validation in e2e tests to streamline assertions and improve readability.
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
This pull request enables multi-version Python support (3.10, 3.11, 3.12, 3.13) for the PyAzul SDK and introduces a reusable helper function to streamline 3DS response validation in e2e tests.
- Added support for Python 3.10-3.13 in package configuration and CI workflows
- Introduced
assert_3ds_responsehelper function to reduce code duplication in 3DS response handling - Updated test workflows to run across all supported Python versions using matrix strategy
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Added Python version classifiers (3.10-3.13), lowered minimum version requirement, added typing-extensions dependency, updated Black target versions |
| pyazul/core/config.py | Added conditional import for Self type hint to maintain compatibility with Python 3.10 |
| .github/workflows/tests-unit.yaml | Added matrix strategy to test across Python 3.10-3.13 |
| .github/workflows/tests-e2e.yaml | Added matrix strategy to test across Python 3.10-3.13, updated setup-python action version |
| .github/workflows/cd.yaml | Added test-build-matrix job to verify package builds across all Python versions before publishing |
| tests/e2e/helpers.py | New helper module with assert_3ds_response function for validating and extracting data from 3DS API responses |
| tests/e2e/services/test_secure_integration.py | Refactored to use assert_3ds_response helper, reducing duplicate validation logic across multiple test cases |
| tests/e2e/services/test_datavault_integration.py | Refactored to use assert_3ds_response helper for cleaner 3DS response handling in token sale tests |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.
f5944ff to
f46ee13
Compare
c710226 to
3e42be2
Compare
3e42be2 to
85540f3
Compare