-
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
Pin pyparsing<3 in constraints #7174
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
Matplotlib's LaTeX handling is broken by the new release of pyparsing 3.0. We are already restricting matplotlib<3.4 in CI due to deprecations, so we are unlikely to get updated versions of matplotlib any time soon, which we will likely need to lift the pin.
javabster
approved these changes
Oct 25, 2021
@mtreinish: for when you're online: I've put this in constraints not requirements, because |
Cryoris
approved these changes
Oct 25, 2021
mtreinish
added a commit
to mtreinish/qiskit-core
that referenced
this pull request
Oct 25, 2021
In matplotlib 3.4.0 released on 03/26/2021 there were some deprecations around our use of Axes3d in the state visualization and bloch sphere modules. Fixing our usage to avoid these deprecations was previously attempted in Qiskit#6136 and Qiskit#6087 but we did not move forward there because the supported API we need to use matplotlib 3.3.0 when it was introduced. We previously did not want to raise our minimum supported matplotlib version to 3.3.0 to accomodate this. However, recent changes in transitive dependency of mpl, pyparsing, caused an incompatibility when running with older mpl versions around mathtex. To fix that we had to pin pyparsing in the constraints file (see Qiskit#7174). It appears that now is a better time to raise our minimum version because the burden of trying to keep support for older matplotlib versions is higher than it once was. This commit bumps the minimum matplotlib version to 3.3.0, updates the usage of Axes3d to avoid the deprecated usage in matplotlib 3.4.0, and removes the contraints pinning introduced in Qiskit#7174. This should get us on supported releases for matplotlib moving forward and it'll hopefully be a while before we encounter this kind of version issue in the future. Fixes Qiskit#6136
mergify bot
added a commit
that referenced
this pull request
Oct 28, 2021
* Bump minimum matplotlib version to 3.3.0 In matplotlib 3.4.0 released on 03/26/2021 there were some deprecations around our use of Axes3d in the state visualization and bloch sphere modules. Fixing our usage to avoid these deprecations was previously attempted in #6136 and #6087 but we did not move forward there because the supported API we need to use matplotlib 3.3.0 when it was introduced. We previously did not want to raise our minimum supported matplotlib version to 3.3.0 to accomodate this. However, recent changes in transitive dependency of mpl, pyparsing, caused an incompatibility when running with older mpl versions around mathtex. To fix that we had to pin pyparsing in the constraints file (see #7174). It appears that now is a better time to raise our minimum version because the burden of trying to keep support for older matplotlib versions is higher than it once was. This commit bumps the minimum matplotlib version to 3.3.0, updates the usage of Axes3d to avoid the deprecated usage in matplotlib 3.4.0, and removes the contraints pinning introduced in #7174. This should get us on supported releases for matplotlib moving forward and it'll hopefully be a while before we encounter this kind of version issue in the future. Fixes #6136 * Run black * Restore constraints pinning I was under the mistaken impression that the current mpl releases were compatible with pyparsing3, but looking at the linked mpl issue it's not fixed yet only for their development so far. So to unblock CI this restores the pinning as it's still needed until mpl releases a fix. * Fix matplotlib 3.3.x compat * Fix version string comparison typing * Fix typo * Fix second `ax` typo * Fix gatemap tests with newer matplotlib * Fix lint Co-authored-by: Jake Lishman <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Matplotlib's LaTeX handling is broken by the new release of pyparsing
3.0. We are already restricting matplotlib<3.4 in CI due to
deprecations, so we are unlikely to get updated versions of matplotlib
any time soon, which we will likely need to lift the pin.
Summary
Details and comments