Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Bump minimum QT5 version to 5.12 #25363

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
ksunden merged 1 commit into matplotlib:main from oscargus:pyqt5cleanups
Jul 15, 2023
Merged

Conversation

Copy link
Member

@oscargus oscargus commented Mar 2, 2023
edited
Loading

PR Summary

Primarily to open the discussion and see if it passes for all QT versions on the CI.

As far as I can tell, 5.12 is the lowest version where there are wheels for Python 3.9. (conda-forge has 5.12.3 as the next after 5.9.2.)

One should maybe get rid of the _to_int-stuff as well, but I did not really follow everything with the bit-manipulation there.

PR Checklist

Documentation and Tests

  • Has pytest style unit tests (and pytest passes)
  • Documentation is sphinx and numpydoc compliant (the docs should build without error).
  • New plotting related features are documented with examples.

Release Notes

  • New features are marked with a .. versionadded:: directive in the docstring and documented in doc/users/next_whats_new/
  • API changes are marked with a .. versionchanged:: directive in the docstring and documented in doc/api/next_api_changes/
  • Release notes conform with instructions in next_whats_new/README.rst or next_api_changes/README.rst

@oscargus oscargus force-pushed the pyqt5cleanups branch 3 times, most recently from 1479b18 to 0009b81 Compare March 2, 2023 08:44
@oscargus oscargus force-pushed the pyqt5cleanups branch 5 times, most recently from fcd9d39 to 356a497 Compare March 2, 2023 12:29
Copy link
Member

👍 in principle (5.12 in from 2019).

Copy link
Member Author

oscargus commented Mar 3, 2023

For pyside2 there are no wheel on pypi for Python 3.11, but there are conda packages. That is the thing messing about right now. I guess it is not that hard to fix, but seems a bit annoying that pyside2/py3.11 is the only combination not working...

@oscargus oscargus force-pushed the pyqt5cleanups branch 3 times, most recently from 4aa885b to 5c753cc Compare March 3, 2023 10:37
Copy link
Member

we use a full conda stack on appeveyor so we could test pyside2 + py311 there.

Copy link
Member Author

oscargus commented Mar 4, 2023
edited
Loading

Seem like the following versions of pyside2 are used on GA (for Linux)

3.9 minimum

PySide2-5.15.1-5.15.1-cp35.cp36.cp37.cp38.cp39-abi3-manylinux1_x86_64.whl

3.9 and 3.10

PySide2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-abi3-manylinux1_x86_64.whl

3.11

PySide2-5.13.2-5.13.2-cp35.cp36.cp37-abi3-manylinux1_x86_64.whl

Not so obvious why... Note that 3.11 is using a version for 3.5-3.7. The _to_int conversions in relation to | must be kept because of this.

@oscargus oscargus marked this pull request as ready for review March 5, 2023 11:32
@oscargus oscargus added this to the v3.8.0 milestone Mar 5, 2023
Copy link
Member

ksunden commented Mar 6, 2023

More recent versions of pyside2 have an explicit <3.11, so 5.13.2 is likely just the most recent version to not have an upper bound on python version...

pyside6 is available for py 3.11, though

Copy link
Member

< insert note about the importance of being able to adjust pins post-build and the ground truth of the dependencies living outside of the build artifact >

Copy link
Member

The outstanding question here is which versions of which bindings we are testing so we are sure that what we are claiming in the minimum actually works.

Copy link
Member Author

oscargus commented May 19, 2023
edited
Loading

This is from the minver test section:

pyqt5-ver: '==5.12.2 sip==5.0.0' # oldest versions with a Py3.9 wheel.
pyqt6-ver: '==6.1.0 PyQt6-Qt6==6.1.0'
pyside2-ver: '==5.15.1' # oldest version with working Py3.9 wheel.
pyside6-ver: '==6.0.0'

So I guess that it is far to say that we test with 5.12 if nothing else (although for pyside2 we actually cannot).

Copy link
Member Author

oscargus commented Jul 9, 2023

I have rebased this. As noted, we already test with 5.12 as the minimum version.

Copy link
Member Author

oscargus commented Jul 9, 2023

This is a follow-up to #24919 where the version was bumped in the CI, but any effects were ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Reviewers

@QuLogic QuLogic QuLogic left review comments

@tacaswell tacaswell tacaswell approved these changes

@ksunden ksunden ksunden approved these changes

Assignees
No one assigned
Projects
None yet
Milestone
v3.8.0
Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /