-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Make typing_extensions
required on all Python versions
#11487
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The extent of our use of `typing_extensions` has fluctuated over time, but we've often had a dependency on it. This is typically not an onerous dependency, being pure Python, and is not uncommon for other packages. We've often had an upper limit on the Python version for it, just for the principle of least requirements, but this has led to a subtle bug recently where we began using a Python 3.12 feature from it (`Unpack`) with the requirement left at `python_version<'3.11'` from before. This was caught by our nightly full test suite, but for unrelated reasons, that's not commenting correctly on issues at the moment. This error is quite likely to repeat; we only use the backport package for Python versions that _aren't_ the newest, but our PR CI tests only oldest and newest. This commit simply lifts the upper limit on the package; the impact should be minimal since most environments will already be installing it.
jakelishman
added
type: qa
Issues and PRs that relate to testing and code quality
Changelog: None
Do not include in changelog
labels
Jan 4, 2024
One or more of the the following people are requested to review this:
|
Pull Request Test Coverage Report for Build 7409704885
💛 - Coveralls |
Cryoris
approved these changes
Jan 4, 2024
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.
LGTM
ShellyGarion
pushed a commit
to ShellyGarion/qiskit-terra
that referenced
this pull request
Jan 18, 2024
The extent of our use of `typing_extensions` has fluctuated over time, but we've often had a dependency on it. This is typically not an onerous dependency, being pure Python, and is not uncommon for other packages. We've often had an upper limit on the Python version for it, just for the principle of least requirements, but this has led to a subtle bug recently where we began using a Python 3.12 feature from it (`Unpack`) with the requirement left at `python_version<'3.11'` from before. This was caught by our nightly full test suite, but for unrelated reasons, that's not commenting correctly on issues at the moment. This error is quite likely to repeat; we only use the backport package for Python versions that _aren't_ the newest, but our PR CI tests only oldest and newest. This commit simply lifts the upper limit on the package; the impact should be minimal since most environments will already be installing it.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Changelog: None
Do not include in changelog
type: qa
Issues and PRs that relate to testing and code quality
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.
Summary
The extent of our use of
typing_extensions
has fluctuated over time, but we've often had a dependency on it. This is typically not an onerous dependency, being pure Python, and is not uncommon for other packages.We've often had an upper limit on the Python version for it, just for the principle of least requirements, but this has led to a subtle bug recently where we began using a Python 3.12 feature from it (
Unpack
) with the requirement left atpython_version<'3.11'
from before. This was caught by our nightly full test suite, but for unrelated reasons, that's not commenting correctly on issues at the moment. This error is quite likely to repeat; we only use the backport package for Python versions that aren't the newest, but our PR CI tests only oldest and newest.This commit simply lifts the upper limit on the package; the impact should be minimal since most environments will already be installing it.
Details and comments
main
currently cannot be imported on Python 3.11 without a fix.The problem was introduced in #8268, but it could have been any PR updating the typing, and this is the kind of infrequent bug our full-matrix nightly CI is supposed to catch - it would be overkill to revert to the full matrix in PR CI and destroy our throughput.