Skip to content

Migrate Python Codebase to Version 3.10 #15

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

gitar-bot-staging[bot]
Copy link

Upgrade Python version from 3.9 to 3.10

Description

This PR upgrades the entire project's Python version requirement from 3.9 to 3.10 across all services, packages, GitHub workflows, and documentation.

Motivation

  • End of Life Support: Python 3.9 reached end-of-life for security updates in October 2025, making the upgrade necessary for continued security support
  • Enhanced Performance: Python 3.10 introduces performance improvements and optimizations
  • Modern Language Features: Access to new language features including structural pattern matching, better error messages, and improved type hints

Changes Made

  • Updated GitHub Actions workflows (CI/CD pipelines) to use Python 3.10
  • Updated all service setup.py files to require Python ~=3.10
  • Updated all package setup.py files with new Python version requirement
  • Updated Dockerfiles to use Python 3.10 base images
  • Updated README documentation to reflect Python 3.10 requirement
  • Replaced deprecated distutils.util.strtobool with custom implementation (distutils removed in Python 3.12)
  • Updated distutils.version.StrictVersion to packaging.version.Version for future compatibility
  • Updated requirements.txt files generated with Python 3.10

Impact

  • Breaking Change: This upgrade requires Python 3.10+ to run the application
  • CI/CD: All build and test pipelines now run on Python 3.10
  • Dependencies: Some test matrix configurations removed Python 3.9, with Python 3.10 and 3.11 remaining supported
  • Compatibility: Code remains backward compatible within supported Python versions

Related Links


Link to run
Requested by: [email protected]

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.

1 participant