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
Update requirements and CI for PyQt6.7 #8175
base: main
Are you sure you want to change the base?
Conversation
6.7 is released now, some distros are already shipping it! This commit: 1. adds a new 6.7 requirements file (the plain 6 one has already been updated by the bot) 2. adds a new tox env referring to the new requirements file 3. updates the mac and windows installer jobs to run with pyqt67 with the assumption we'll be including that in our next release 4. adds two new CI environments for 6.7, one each for python 3.11 and 3.12 (3.12 only came out like 6 months ago) 5. updates a couple of references to the py37 tox env that looked like they were missed, 3.7 support was dropped in 93c7fdd 6. updates various ubuntu containers to the latest LTS instead of the previous related one - this is quite unrelated to this change but I thought I would give it a go, no need to use the old one unless we are specifically testing on it? - linters - they use tox but probably use system libraries - these all run in nested containers anyway, should be fully isolated - codeql - eh, uses a third party action, check the docs if it fails - irc - as above
e8ef1dd
to
6c4be8e
Compare
Ugh. I thought it would be easy and we'd just need to set I attempted the required finagling with requirement files and tox.ini and mkvenv.py and whatnot to get this to work. On a second thought, I wonder if I could just have dumped |
This reverts commit 6c4be8e. Possibly easier solution in next commit.
Easier fix instead of 6c4be8e. Seems to get picked up just fine, and shouldn't hurt when it's not needed, as we don't use --pre. Thus, no development releases should be installed.
5478aea
to
6513d93
Compare
✔️ cool, I'm okay with that approach. I think this is a safe use of Regarding the failure on windows, I got as far as seeing that it looks like a socket "times out" in like 200ms when the timeout is set to 5s. I was going to compare the logs for a single test on windows to linux and see if I can spot a difference. I did install a nightly from this branch in a VM and it shut down fine at least, didn't check with userscripts because I forgot they aren't bundled :) Eg regarding the timing there are logs like this (wait, is that the ID of the ephemeral socket for a client connection or the listening one for the server?):
Edit: heres the nightly built off of this branch, it works!: |
This comment was marked as duplicate.
This comment was marked as duplicate.
Taking the IPC timeout thing to #8191. I'm taking a look and need a place for notes. |
(This is on top of #8173, so ignore the first two commits if they are still present.)
This is the usual "add support for new Qt/PyQt version" change that normally happens in the background where the dripping pipes and greasy rags are. I'm raising this PR for visibility in case anyone has an opinion on how to deal with the macOS WebEngine binaries not being available yet.
See commit ce562b7 for the PyQt6.7 related updates to requirements files and CI definitions for the actual version upgrade.
Upgrading to Qt6.7 doesn't seem to have had any user visible impact (apart from the Vulkan backend not working, and primary selection not being filled from the copy action anymore), which is a relief. It did cause some hard to debug issues in the tests, but hopefully that's the last we'll hear of that. (Also looks like there is one issue with IPC sockets closing differently
on application shutdownon windows that still needs to be resolved, in the tests).We've wanted to get a new release out with Qt6.7 for a while. Unfortunately the corresponding PyQt release has been delayed for a longer time than usual, but it's available now! Which means we can cut a new release! BUT, as mentioned in the announce email there are no binaries available for macOS. It seems PyQt is waiting on this support request to PyPI: pypi/support#3949
As I see it our options are:
Footnotes
"now" probably means some time next week, we might want to add a fix for https://github.com/qutebrowser/qutebrowser/issues/8170 in too ↩ ↩2