Skip to content

Add support for Python 3.14 beta #4825

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

Merged
merged 11 commits into from
Jun 19, 2025
Merged

Add support for Python 3.14 beta #4825

merged 11 commits into from
Jun 19, 2025

Conversation

harshil21
Copy link
Member

Also adds pytz to the test dependency group since it was impossible to run the test suite without it.

Tested locally with uv's python 3.14, and with JIT enabled. Also confirmed that test official passes on 3.14 with the changes to annotations.

@harshil21 harshil21 requested review from Bibo-Joshi and Copilot June 13, 2025 07:49
@harshil21 harshil21 added the 🔗 python related technology: python label Jun 13, 2025
Copy link

@Copilot Copilot AI left a 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 PR adds support for Python 3.14 beta by updating configuration files and dependency lists, ensuring compatibility with the latest version. Key changes include updating the pytest distributed execution option in the tests documentation, modifying dependency definitions in pyproject.toml to include Python 3.14–specific variants (including a temporary pydantic dependency and retaining pytz for testing), and updating the GitHub workflow to include a Python 3.14 beta version in the testing matrix.

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
tests/README.rst Updated pytest-xdist option from "--dist=loadgroup" to "--dist=worksteal".
pyproject.toml Added Python 3.14 classifier and adjusted dependency definitions for new version support.
.github/workflows/unit_tests.yml Included Python 3.14 beta in the test matrix and removed manual installation of pytz.
Comments suppressed due to low confidence (3)

tests/README.rst:45

  • [nitpick] Ensure that the use of '--dist=worksteal' is supported by the installed version of pytest-xdist and that any relevant documentation is updated accordingly.
$ pytest -n auto --dist=worksteal

pyproject.toml:116

  • [nitpick] Consider clarifying this comment to indicate that pytz is retained solely for backward compatibility in testing, helping users understand its role despite deprecation elsewhere.
# We've deprecated support pytz, but we still need it for testing that it works with the library.

.github/workflows/unit_tests.yml:64

  • After removing the manual installation of pytz, please verify that all testing environments receive the correct dependencies so tests relying on pytz pass reliably.
# need to manually install pytz here, because it's no longer in the optional reqs

Copy link
Member

@Bibo-Joshi Bibo-Joshi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR!

@harshil21 harshil21 requested a review from Bibo-Joshi June 18, 2025 14:46
@Bibo-Joshi Bibo-Joshi merged commit b15507f into master Jun 19, 2025
31 checks passed
@Bibo-Joshi Bibo-Joshi deleted the 3.14 branch June 19, 2025 18:18
@github-actions github-actions bot locked and limited conversation to collaborators Jun 27, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🔗 python related technology: python
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants