Commit Graph

2757 Commits

Author SHA1 Message Date
qutebrowser bot 9249c5cb0e Update dependencies 2025-04-25 04:33:28 +00:00
Florian Bruhin c601bd0c7a
Merge pull request #8545 from qutebrowser/update-dependencies
Update dependencies
2025-04-17 11:19:31 +02:00
Florian Bruhin f9933d2f3e userscripts: Properly avoid tldextract warning
The previous fix in 3dc212a815 was insufficient,
as the inner `getattr(extract_result, "registered_domain")` was always evaluated
first (thus triggering the deprecation warning again).

We also cannot do:

    getattr(extract_result, "top_domain_under_public_suffix", None) or extract_result.registered_domain

as `""` is a valid value for it.
2025-04-17 11:11:33 +02:00
qutebrowser bot 95f9472a6b Update dependencies 2025-04-14 04:21:48 +00:00
toofar 701046cd9f
Merge pull request #8537 from qutebrowser/update-dependencies
Update dependencies
2025-04-14 12:08:02 +12:00
qutebrowser bot 67d8e012a3 Release v3.5.0 2025-04-12 21:28:50 +00:00
Florian Bruhin 3dc212a815 userscripts: Avoid tldextract warning 2025-04-11 15:41:59 +02:00
Florian Bruhin 8b820f015b ci/tox/requirements: Update for Qt 6.9 2025-04-08 21:09:32 +02:00
qutebrowser bot 9a23ce6c3c Update dependencies 2025-04-07 04:20:42 +00:00
qutebrowser bot c60ebe8eef Update dependencies 2025-03-31 04:21:42 +00:00
qutebrowser bot 873b874c5f Update dependencies 2025-03-24 11:29:28 +01:00
toofar 4a675115e1
Merge pull request #7781 from dezeroku/cleaned-up
userscripts: fix qute-bitwarden failing with expired session
2025-03-19 20:13:13 +13:00
qutebrowser bot cc20112a67 Update dependencies 2025-03-17 04:20:14 +00:00
dezeroku d49c96aa29
userscripts: fix qute-bitwarden failing with expired session
This could be seen as "Vault is locked" error in the logs,
if run with the --nointeraction flag
2025-03-16 16:47:08 +01:00
user202729 f25604b819 Bitwarden: Pass master password in environment variable 2025-03-12 15:53:50 +01:00
Florian Bruhin 328b5966ef Add initial support for running tests offscreen
Makes

    QT_QPA_PLATFORM=offscreen pytest

pass.

See #4914
2025-03-12 14:41:50 +01:00
qutebrowser bot 2efaf92b7c Update dependencies 2025-03-10 04:20:15 +00:00
qutebrowser bot c9374fd80a Update dependencies 2025-03-03 04:22:07 +00:00
qutebrowser bot dd66300caf Update dependencies 2025-02-24 10:32:38 +01:00
Florian Bruhin de8a2c04b8 bleeding: Avoid deprecated egg syntax
See https://github.com/pypa/pip/issues/13157
2025-02-23 22:00:32 +01:00
Florian Bruhin 12e6838267 bleeding: Avoid broken gherkin-official >= 31
See https://github.com/cucumber/gherkin/issues/373
2025-02-23 21:59:39 +01:00
qutebrowser bot f7c8c67818 Update dependencies 2025-02-17 10:55:22 +01:00
Florian Bruhin 718d66fb6d Merge remote-tracking branch 'origin/pr/7591' 2025-02-15 16:10:24 +01:00
qutebrowser bot 4004799f2c Update dependencies 2025-02-03 16:55:59 +00:00
Florian Bruhin 1615e8a40e Merge remote-tracking branch 'origin/pr/8462' 2025-02-03 17:45:48 +01:00
qutebrowser bot bfb580ee91 Update dependencies 2025-02-03 11:01:24 +01:00
Jun Chen 6b25fdf648 chore: replace bump2version with bump-my-version 2025-01-30 19:14:38 -07:00
qutebrowser bot 60177ab975 Update dependencies 2025-01-27 04:21:24 +00:00
qutebrowser bot 9b59cd02cb Update dependencies 2025-01-20 08:25:56 +01:00
qutebrowser bot 253a818ecc Update dependencies 2025-01-13 04:22:20 +00:00
qutebrowser bot 980105aa11 Update dependencies 2025-01-06 04:23:13 +00:00
Florian Bruhin a52f378787 Add qute-translate-popup to userscript list 2025-01-03 15:45:56 +01:00
qutebrowser bot 1bcb536a44 Update dependencies 2024-12-14 22:28:12 +01:00
qutebrowser bot 5c899e304f Release v3.4.0 2024-12-14 20:51:45 +00:00
Florian Bruhin a0bbcd6259 requirements: Remove index-url again
Now on PyPi, partially reverts 3a956b4097
2024-12-13 13:03:31 +01:00
qutebrowser bot 6c7fd52b8e Update dependencies 2024-12-13 13:03:31 +01:00
Florian Bruhin 3a956b4097 ci: Add preliminary PyQt 6.8 environment
See #8242
2024-12-09 20:16:27 +01:00
Florian Bruhin 4918e6d8ff macOS: Avoid deprecated file associations
Based on Chromium's Info.plist.

Fixes #7306, see #8416 for more possible improvements.
2024-12-09 16:41:24 +01:00
qutebrowser bot 5d3df09146 Update dependencies 2024-12-09 11:25:49 +01:00
Florian Bruhin a7b566e7b3 Remove pytest-bdd<8 limit 2024-12-06 14:53:03 +01:00
Florian Bruhin acc06cdd39 Merge branch 'gherkin8342' 2024-12-06 14:52:08 +01:00
Florian Bruhin e2fb1fba8b Revert "Bleeding requirements: Use pytest-bdd release"
This reverts commit 26b4ec6cef.
2024-12-05 19:27:10 +01:00
Florian Bruhin 629a38d654 Upgrade to pytest-bdd 8 2024-12-05 15:36:18 +01:00
qutebrowser bot e6a0446a92 Update dependencies 2024-12-02 04:20:49 +00:00
qutebrowser bot 17792f87e8 Update dependencies 2024-11-25 04:20:31 +00:00
Florian Bruhin 3608b2b3be Pin pytest-bdd<8
See https://github.com/qutebrowser/qutebrowser/issues/8342
2024-11-24 01:09:01 +01:00
qutebrowser bot 664c554bf6 Update dependencies 2024-11-18 04:22:39 +00:00
qutebrowser bot c03d3dd6ac Update dependencies 2024-11-11 10:23:04 +00:00
qutebrowser bot b495e78b8a Update dependencies 2024-11-04 04:20:40 +00:00
qutebrowser bot 643bdf7305 Update dependencies 2024-10-28 04:21:24 +00:00
qutebrowser bot ad29c973f8 Update dependencies 2024-10-21 12:32:07 +02:00
Florian Bruhin ffe7d00a62 Merge branch 'drop-py38' 2024-10-15 11:58:54 +02:00
Florian Bruhin 7083fee655 Recompile requirements 2024-10-15 11:55:04 +02:00
Florian Bruhin cc18a624b5 Remove importlib_resources from requirements 2024-10-15 11:55:04 +02:00
Florian Bruhin 8cf9cc9f1b nsis: Check for newer Windows build
Follow-up to #8321, so we only claim to support what Qt actually officially does.
2024-10-15 11:52:34 +02:00
Florian Bruhin 26b4ec6cef Bleeding requirements: Use pytest-bdd release
See https://github.com/qutebrowser/qutebrowser/issues/8342
2024-10-15 11:42:07 +02:00
Willow Barraco 61746e0f58 desktop: qutebrowser as webp mime type viewer
This is decent webp viewer, like other web browser.
2024-10-15 10:33:12 +02:00
qutebrowser bot 80ed616230 Update dependencies 2024-10-14 04:18:59 +00:00
Florian Bruhin b976a31ffa
Merge pull request #8321 from qutebrowser/feat/8260_drop_qt5_builds
Remove support for making Qt5 builds
2024-10-13 21:45:05 +02:00
qutebrowser bot 6093306ff5 Update dependencies 2024-10-13 14:54:29 +00:00
toofar 50bf3bdd52
Merge pull request #8323 from qutebrowser/update-dependencies
Update dependencies
2024-10-13 15:19:56 +13:00
qutebrowser bot eacdca5a36 Release v3.3.1
(cherry picked from commit fc0d7e08bc)
2024-10-12 19:40:58 +00:00
qutebrowser bot 7d1d6459e0 Release v3.3.0 2024-10-12 19:23:16 +00:00
bitraid 52a8576d7c Simplify OS version checks in nsis installer
22000 is the earliest win11 build, so no need to check for that
separately.
AtLeastWin11 is from https://github.com/kichik/nsis/blob/master/Include/WinVer.nsh#L552
Remove fail label since all failures fall through.
2024-10-09 21:40:37 +13:00
qutebrowser bot dea648ccd8 Update dependencies 2024-10-07 04:22:07 +00:00
toofar d24a4c5ab0 Remove Qt5 switches from release building scripts etc
I just searched for qt5 and deleted stuff. EZ.
Will leave on a branch for a bit and see if I feel like testing this at
all, otherwise maybe leave this stuff in here and make it not called.

Not 100% sure that we need to remove all this stuff when we just want
the CI to go green. But tbh if we don't need to make Qt5 releases then
we don't need it. Better to be bold and pull it out than have to work
around it in the future. And we can always revert the commit.
2024-10-05 13:55:15 +13:00
toofar 3bc30e748d Merge pull request #8243 from feat/e2e_screenshots 2024-10-05 11:30:57 +13:00
qutebrowser bot 1cc408b77f Update dependencies 2024-09-30 04:20:13 +00:00
qutebrowser bot 2a75b341b8 Update dependencies 2024-09-23 04:19:57 +00:00
qutebrowser bot 61eb05d043 Update dependencies 2024-09-17 11:14:19 +00:00
toofar 78a74a2e2a Include platformdirs in test requirements as a workaround too
See the previous commit db83a82fe1
2024-09-17 23:04:25 +12:00
toofar db83a82fe1 Include platformdirs in dev requirements as a workaround
See 433074c681, this is the same cause. An older version of a
package being included in requirements files because setuptools injects
its vendored packages into sys.path and we use pip freeze to build lock
files. Then when you install two requirements files at the same time they
end up having conflicting versions. This at least means we include the
latest version, which will do until we move to a method of generating
lock files that just works off of the raw requirements file.
2024-09-17 20:35:42 +12:00
qutebrowser bot 16781b5b09 Update dependencies 2024-09-03 07:26:01 +00:00
toofar adf39e9f72 also update jaroco-context as a workaround
see previous commit
2024-09-03 19:17:09 +12:00
toofar 433074c681 Add importlib_resources to tests requirements file as workaround
Currently the dependency update job is failing[1] because one of the
tests installs multiple requirements files before running the tests and
it claims they have conflicting versions of `importlib_resources` (6.4.0
vs 6.4.4). 6.4.0 is in the pinned files and there is a 6.4.4 available.

Looking though the logs the first time I see importlib_resources==6.4.0
is when printing the requirements for the `test` requirements file.
But it's not mentioned at all when installing that file. Which makes me
think it found it's way into the virtualenv by some other means.

Looking at git blame for the test requirements lock file, it looks like
importlib_resources was introduced in
https://github.com/qutebrowser/qutebrowser/pull/8269 and indeed I can
see version 6.4.0 in setuptools vendored folder[2].

So it looks like this is another issue caused by setuptools adding their
vendored packages into sys.path.

Options I can see for resolving this:

a. add importlib_resources as a dependency in requirements.txt-raw so
  that we always pull down the newest one, even though we don't need it
b. add an @ignore line for importlib_resources
    * I think in the unlikely event we end up needing it then it being
      ignored might be hard to spot
c. drop python 3.8 support
d. switch to a requirements compilation method that doesn't use `pip
  freeze`

I've chosen (a) here because I think it's less surprising than (b), less
work than (c) and I already have a PR up for (d). And it's only pulled
down for 3.8 anyhow, so we'll drop this workaround when we drop that.

[1]: https://github.com/qutebrowser/qutebrowser/actions/runs/10660624684/job/29544897516
[2]: https://github.com/pypa/setuptools/tree/main/setuptools/_vendor
2024-09-03 19:02:52 +12:00
toofar a3238eb494 upload e2e failure screenshots as artifacts
This commit takes a screenshot of the active browser window when an
end2end test fails. When running on CI a zip file of screenshots will be
attached to the run summary as an artifact. When run locally screenshots
will be left in /$TMPDIR/pytest-screenshots/.

The screenshot is of the Xvfb screen that the tests are running under.
If there are multiple windows open it will likely only show the active
window because a) we aren't running with a window manager b) the Xvfb
display is, by default, the same size as the browser window.

I'm not sure if xvfb is used on the Window runs in CI. We could fall
back to trying to take screenshots if not running under xvfb but I'm a
bit wary of an automatic feature that takes screenshots of people's
desktops when running locally. Even if they just to to /tmp/ it might be
surprising. We can change it later if it turns out we need to try to
take screenshots in more cases.

I'm using pillow ImageGrab, the same as pyvirtualdisplay.smartdisplay. I'm
getting the display number from the pytest-xvfb plugin and formatting it
appropriately (pyvirtualdisplay has an already formatted one which is used by
the smartdisplay, but that's not accessible).

Pillow is now a requirement for running the tests. I thought about making
it gracefully not required but I'm not sure how to inform the user with
a warning from pytest, or if they would even want one. Maybe we could
add a config thing to allow not taking screenshots?

I had to bump the colordepth config for pytest-xvfb otherwise pillow
complained that the default 16bit color depth wasn't supported as it
only supports 24bit, see https://github.com/python-pillow/Pillow/blob/1138ea5370cbda5eb328ec949
8c314d376c81265/src/display.c#L898

I'm saving screenshots to a temp dir because I don't want to put them in
my workdir when running locally. I want to clear the directory for each
run so that you don't get confused by looking at old images. I'm not
100% sure about the lifecycle of the process classes though. Eg if we
have two processes they might both try to create the output directory.
I'm using pytest.session.stash to save the directory so perhaps the
lifecycle of the stash will handle that? Not sure.

Ideally the images would be uploaded somewhere where we could click
through and open them in the browser without having to download a zip
file, but I'm not sure how to achieve that.

It would be nice to print in the test logs that a screenshot was saved
and where to. Just so you could copy paste the filename instead of
having to match the sanitized filename against failing test names. But I
don't know how to log stuff from this stage in the pytest lifecycle.

TODO:
* I'm not sure that the screenshot captures the whole browser window?
  Maybe the browser windows is bigger than the X11 display?

Closes: #7625
2024-08-18 12:42:29 +12:00
qutebrowser bot 59b2cc71ce Update dependencies 2024-08-12 04:21:43 +00:00
qutebrowser bot a2c8ebf257 Update dependencies 2024-07-15 04:21:46 +00:00
qutebrowser bot 2dbb518a8d Update dependencies 2024-07-08 04:20:22 +00:00
qutebrowser bot 95075d20ff Update dependencies 2024-07-01 04:21:28 +00:00
qutebrowser bot f9cfef973a Release v3.2.1
(cherry picked from commit 8cb4556245)
2024-06-25 09:07:53 +00:00
qutebrowser bot d34bbada03 Update dependencies 2024-06-25 07:11:53 +00:00
qutebrowser bot 514026053d Update dependencies 2024-06-24 04:19:39 +00:00
qutebrowser bot 03f5ad870a Update dependencies 2024-06-17 04:20:19 +00:00
toofar 90cf7e1ff9 Merge pull request #8133 from DrTobe/idna-matching
Add Unicode normalization and IDNA encoding to qute-pass userscript.
2024-06-16 11:20:42 +12:00
qutebrowser bot cc34d09393 Update dependencies 2024-06-10 04:21:11 +00:00
qutebrowser bot ae7d7fb426 Release v3.2.0 2024-06-03 14:42:27 +00:00
toofar fb35cf9fdc Revert "Add Riverbank Computing as extra index for PyQt requirements"
Mostly reverts the below, as the new release is on the main PyPI repo
now.
Keeps the change to misc_checks.py

This reverts commit 470ec752e1.
2024-06-03 18:26:03 +12:00
qutebrowser bot 74e4476893 Update dependencies 2024-06-03 04:23:36 +00:00
qutebrowser bot 4577fcc8eb Update dependencies 2024-05-27 04:21:09 +00:00
Florian Bruhin 470ec752e1 Add Riverbank Computing as extra index for PyQt requirements
Easier fix instead of 6c4be8ef03.
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.
2024-05-24 17:08:56 +02:00
Florian Bruhin 0f51171141 Revert "Try getting PyQt 6.7 from Riverbank server"
This reverts commit 6c4be8ef03.

Possibly easier solution in next commit.
2024-05-24 17:08:56 +02:00
Florian Bruhin 8b44c26146 Try getting PyQt 6.7 from Riverbank server
See https://www.riverbankcomputing.com/pipermail/pyqt/2024-April/045832.html and https://github.com/pypi/support/issues/3949
2024-05-24 17:08:56 +02:00
toofar 3f1842b729 Update requirements and CI for PyQt6.7
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
2024-05-24 17:08:56 +02:00
Tobias Naumann 12ebc843d1 Move idna_encode function calls out of loops whenever possible to avoid repeated computations 2024-05-24 00:16:04 +02:00
qutebrowser bot 1d8a2acf77 Update dependencies 2024-05-20 04:21:17 +00:00
Evan Chen 310c865f29
Fix some spelling errors 2024-05-09 10:58:04 -04:00
qutebrowser bot 17ff150dfd Update dependencies 2024-05-06 04:20:35 +00:00
qutebrowser bot 4fdc32ffe1 Update dependencies 2024-04-29 04:20:02 +00:00
qutebrowser bot 085af13014 Update dependencies 2024-04-27 07:20:49 +00:00