Skip to content

Python: Drop Python 3.10 support by October 31, 2026 #9373

Description

Problem

Python 3.10 has reached upstream end of life, but Agent Framework still advertises, tests, and carries compatibility code for it across the Python package set. Continuing support increases CI cost, constrains dependency and language-feature adoption, and leaves users on an interpreter that no longer receives upstream security fixes.

Use Case and Evidence

The Python 3.15 compatibility work soft-deprecates Python 3.10 while intentionally retaining its package metadata and CI lanes for the current release. Review feedback requested a concrete follow-up rather than leaving the removal unscheduled. The repository already has packages that require Python 3.11, and the workspace lock's common development range begins at Python 3.11.

Target completion date: latest October 31, 2026.

Desired Outcome

By October 31, 2026, publish a coordinated Python release that requires Python 3.11 or later, removes Python 3.10 from advertised support and CI, and gives users clear release-note and migration guidance.

Alternatives Considered

  • Continue supporting Python 3.10 indefinitely. This retains compatibility for existing users but keeps the framework tied to an EOL interpreter.
  • Keep only the documentation-level soft deprecation. This is appropriate for the current Python 3.15 compatibility release but does not complete the lifecycle transition.
  • Wait for an unspecified future major version. Python ecosystem projects commonly drop EOL interpreter versions in regular releases, and an explicit dated issue provides clearer planning.

Proposed Direction

  • Raise requires-python from >=3.10 to >=3.11 in the root package and every affected workspace distribution.
  • Remove Python 3.10 classifiers and package/sample documentation claims.
  • Remove the Python 3.10 CI matrix lanes and the package exclusions used only for that boundary.
  • Audit and remove compatibility dependencies and code paths that exist solely for Python 3.10, including conditional tomli usage where no longer needed.
  • Regenerate root and package lockfiles and validate the complete minimum-version matrix on Python 3.11.
  • Document the breaking support change in the centrally managed Python changelog and release notes.

Scope and Non-Goals

This applies only to the Python implementation. It does not drop Python 3.11, alter .NET target frameworks, or resolve the independent upstream blockers for Python 3.15 integrations. The implementation should remain a dedicated release change rather than being folded into the current Python 3.15 compatibility PR.

Language

Python

Contribution Intent

I am willing to implement this

Acknowledgements

  • I searched existing issues and did not find a duplicate.
  • I will wait for explicit maintainer agreement before starting implementation of a non-trivial change.

Activity

  1. changed the title [-]Python: Drop Python 3.10 support by October 31, 2026[/-] [+]Python: [BREAKING] Drop Python 3.10 support by October 31, 2026[/+] on Oct 14, 2026
  2. changed the title [-]Python: [BREAKING] Drop Python 3.10 support by October 31, 2026[/-] [+]Python: Drop Python 3.10 support by October 31, 2026[/+] on Oct 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

pythonUsage: [Issues, PRs], Target: Pythonready-for-implementationMaintainers agree the problem and direction are ready for implementation.

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions