Migrate from Python 3.9 to 3.10 #5
Open
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.
Migrate from Python 3.9 to 3.10 (Turbo Mode)
Description
This PR upgrades the entire codebase from Python 3.9 to Python 3.10, leveraging the new language features and performance improvements available in the latest version.
Key Changes
Union[]
syntax to Python 3.10's new union operator (|
) for cleaner type annotationsfrom __future__ import annotations
imports to enable postponed evaluation of annotationsMotivation
Python 3.10 introduces significant improvements that benefit our codebase:
str | int
instead ofUnion[str, int]
)For more details on Python 3.10 features, see the official release notes.
Impact
Files Changed
Complete list of modified files
.github/workflows/
(3 files).pre-commit-config.yaml
,.pylintrc
,mypy.ini
projects_nodes.py
,services.py
, and other model filesTesting
This migration positions the codebase to take advantage of Python 3.10's performance improvements and sets the foundation for adopting modern Python features in future development.
Link to run
Requested by: [email protected]