Age | Commit message (Collapse) | Author |
|
|
|
|
|
They are getting much better
|
|
|
|
|
|
|
|
Only mypy missing now...
|
|
|
|
|
|
Otherwise we run into a Python 3.12 incompatibility with pkg_resources:
https://github.com/pypa/pip/issues/11501
Also needs PIP_REQUIRE_VIRTUALENV=0 because otherwise pip seems to
falsely assume it's installing things system-wide, weirdly.
Should probably be removed once there is a newer virtualenv, which
vendors a newer pip, which vendors a newer pkg_resources...
See #7727
|
|
- Make sure we still test Python 3.7 and 3.8 after dropping old PyQt
versions in c5a51eb0bcbab0b68cdfbf3eba2e681cff2adf7a
- Keep a modern Python version (3.11) with Qt 5 around, however
- Make sure we still test Python 3.10 too
- Also start testing the Python 3.12 alpha
|
|
See #7624
|
|
On CI were were getting "Could not import sip" because link_pyqt was
looking for PyQt5.sip.
I made that look at QUTE_QT_WRAPPER since that's being set already on
tox.ini
There are probably a few other changes around link_pyqt and the makefile
etc we need to change when we switch the default wrapper.
I overrode the default `py` tox environment with py-qt6 to override
those wrapper related variables. I probably could have done something
sneaky with curly braces to make it so we don't have to add a few more
lines to the file. But in my opinion in config file is far to obfuscated
and hard to maintain already.
I changed the docker file to call the new py-qt6 env if it's a qt6
container. I'm not 100% sure that is required though since there is also
a tox invocation in the GH action definition, maybe that overrides the
container entrypoint? Also changed the indentation in the dockerfile
template a bit to make it easier to see where the conditionals start and
end.
Speaking of which I changed the matrix definition and tox invocation to
match a later one to hopefully make it so we can invoke different tox
environments in the containers without having to rebuild the containers.
Not sure I did that right, I'll see soon.
I added the unstable-qt6 container generation line so we can use it in
the future, and to match the not-qt6 one. I'm not switching to that in
CI though because the pyqt used by that is broken at the moment
(ref https://www.riverbankcomputing.com/pipermail/pyqt/2023-March/045214.html)
Also fixed the vim modeline in generate.py so my syntax highlighting
works.
|
|
|
|
Needed so that tests generating :help docs run properly.
Follow-up to af176f749fd7f5521d3978e268a1fad169ac2bd4 and
bbdc83f638ed1a8e263a3efac0da8a901c1a1420
(cherry picked from commit 3d56f57e502ffaad40936f19f44083a2b63f0690)
|
|
Needed so that tests generating :help docs run properly.
Follow-up to af176f749fd7f5521d3978e268a1fad169ac2bd4 and
bbdc83f638ed1a8e263a3efac0da8a901c1a1420
|
|
This fails now with 'failed with env name pyinstaller-32 conflicting with base python C:\hostedtoolcache\windows\Python\3.10.9\x86\python.exe'
See https://github.com/tox-dev/tox/pull/2824
|
|
|
|
|
|
|
|
|
|
See https://tox.wiki/en/4.0.3/faq.html#tox-4-changed-ini-rules
|
|
|
|
also update the default tox env list which I forgot to do when changing
the mypy targets.
|
|
(Ab)using an environment variable indeed seems like the easiest way
forward here, but since it is exposed in the environment for the called
processes, let's give it a name which is less likely to clash, and more
easily identifyable.
Follow-up to c1738ca55006966e7c0ad9eacbfb58625aa88c44.
|
|
The changes in requirements-mypy.txt would get overwritten on the next
dependency update. Also, it looks like we don't actually need PyQt6 (or
the PyQt6 stubs) available for checking PyQt 5 code if all Qt 6 imports
are appropriately gated by conditionals mypy knows about.
Follow-up to c1738ca55006966e7c0ad9eacbfb58625aa88c44.
|
|
We'll be going forward with type checking on PyQt5 for now while
figuring out what to do with PyQt6 type checking.
See https://github.com/qutebrowser/qutebrowser/discussions/7372#discussioncomment-3502200
|
|
Would be nice to have a bare `mypy` env which ran both the more specific ones
in sequence but I don't know how to do that.
Not sure if there is a way to pull the CONSTANTS_ARGS stuff out to a non-env
parameter and pass it into commands but I couldn't figure out a way. So via
the environment it is.
TODO: compare PyQt6 as-is with the WIP PyQt6-Stub
|
|
We can use negative factors now, and Qt 6.2/6.3 can be simplified too.
See https://tox.wiki/en/latest/config.html#complex-factor-conditions
|
|
|
|
|
|
This raises our minimum tox version from 3.15 to 3.20 to properly
support the environment name with empty factors:
https://github.com/tox-dev/tox/issues/1636
Distribution-wise, this hopefully isn't a problem: Debian Buster
(oldstable) had tox 3.7, Debian bullseye (stable) has 3.21. Similar
story for Ubuntu: 20.04 LTS has 3.13, 21.10 (and thus 22.04 LTS) has
3.21.
|
|
Fixes #7091
TODO: Add changelog
|
|
|
|
|
|
|
|
Commits for dropping 3.5 support to copy from:
c245b7d855ccd "Initial drop of Python 3.5"
ccdfb44b8568b "Drop support for Python 3.6.0"
Anything needed to update regarding OS version support in
doc/install.asciidoc?
TODO: remove 3.6/7 annotations in requirements files and
rebuild
workflows: not sure I updated it right (run 5.12 with 3.7, same 18.04 OS) but
18.04 seems to have 3.7 on it too so it should work. It'll all change when we
drop <5.15 anyway. Not sure what the minimum ubuntu version will be going
forward.
Regarding mimetype overrides (ebb3046822adb) the doctring says they can all go
in 3.7 but .h5 is still missing on py39, not sure if we should care.
There are a bunch of old(?) warning messages still ignored in tests/end2end/fixtures/quteprocess.py.
|
|
pytest understands that since a while: https://pytest.org/en/7.0.x/reference/reference.html#environment-variables and other tools are adopting it: https://github.com/sphinx-doc/sphinx/pull/10260
|
|
We originally used Python 3.8 for pylint for https://github.com/PyCQA/pylint/issues/3760 which is long fixed... See 214dd63441063acffa7e888f3f5b42187007da11
|
|
Setting QUTE_BDD_WEBENGINE=true overrides the auto-detection mechanism.
|
|
See #6611
|
|
|
|
See #6298
|
|
See #6269
|
|
Needs a couple of follow-up commits for workarounds, which hopefully
aren't needed anymore at a later point.
Fixes #6068
|
|
|
|
With https://github.com/python/mypy/pull/9614, mypy now tries to collect
all files in tests/, but it fails due to:
tests/end2end/conftest.py: error: Duplicate module named 'conftest' (also at 'tests/end2end/features/conftest.py')
tests/end2end/conftest.py: error: Are you missing an __init__.py? [misc]
We should probably add __init__.py files to tests/ at some point...
See #6059 and #5249
|
|
|
|
See https://github.com/PyCQA/pylint/issues/3760
|
|
|