summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-14Bump slack UA quirk for latest updatetoofar
Slack now requires chrome 112+. At least one user says it still works with 108 based. Although they did just do a UI refresh so I wouldn't be surprised if something was broken with older versions. Note that I'm not 100% sure that slack is actually doing a strict check for 112, but based on their prior behaviour I assume so (they are definitely checking for >99 so our old quirk is unhelpful at this point). Since I've told people to add ua-slack to their disabled quirks, should I change the name of it now to make sure it gets re-enabled? Eh, they can manage their own quirks.
2023-10-14Make "new_chrome" UA quirk a bit clevertoofar
We only want to be faking a newer chrome version, if we are already on a newer one, we don't want to be faking an older one! Another scenario is that we might want to fake a perpetually newer version for some site. But that seems like a very problematic scenario and I hope that never comes up.
2023-10-11pylint 3.0 deprectationstoofar
Changelog: https://pylint.pycqa.org/en/latest/whatsnew/3/3.0/index.html#summary-release-highlights remove `__implements__`: That attribute is apparently from a rejected PEP. They say to inherit from BaseChecker, which we are already doing. https://github.com/pylint-dev/pylint/pull/8404 check_messages -> only_required_for_messages: Seems straightforward instructions. I haven't actually tested it. https://github.com/pylint-dev/pylint/pull/8409 remove emptystring extension: Looks like this has been replaced by https://pylint.readthedocs.io/en/stable/user_guide/messages/convention/use-implicit-booleaness-not-comparison-to-string.html Which is disabled by default but we have `enable=ALL`, so I guess that means we indeed have it enabled. And update changelog URLs.
2023-10-10docker: Also downgrade qt5-declarativeFlorian Bruhin
2023-10-10Update cffi changelogFlorian Bruhin
2023-10-09Update dependenciesqutebrowser bot
2023-10-05Merge pull request #7949 from qutebrowser/update-dependenciestoofar
Update dependencies
2023-10-02Update dependenciesqutebrowser bot
2023-09-30update changelogtoofar
2023-09-30Merge pull request #7925 from fstecker/download_iconstoofar
Override IconProvider for QFileSystemModel to prevent a slowdown in the download dialog on Linux when browsing to directories with many files.
2023-09-29Check runtime Qt version only.toofar
Since the bug was fixed in qtbase it shouldn't matter what version of PyQt (or webengine for that matter) you are running against. So pass `compiled=False`. Also expand the docstring of `check_version()` to explain a little more what the `compiled` kwarg does. Based on a discussion here: https://github.com/qutebrowser/qutebrowser/pull/7933#issuecomment-1732400960 What's still not clear to me is when the runtime and compiled Qt versions can differ. I always have to rebuild PyQt when I switch Qt versions, but maybe I'm doing something wrong there.
2023-09-27Change log message to use f-stringstoofar
TODO: configure the linter to tell people to do this. As an aside, I'm not sure I agree that this is a good idea. It seems the f-string interpolation does have a cost when you are not logging at that level, and we do support disabling the ram logger. But we can change it with automation anyway.
2023-09-27Use mocker fixture instead of mock.patchtoofar
I forgot about that fixture.
2023-09-27Move method to module level.toofar
This avoids having to mess about with static methods. And makes the test a bit clearer as we aren't passing a class in place of an instance anymore. Hopefully I put it in the right place. It's above the class where it is used. Should it be at the top of the file? Bottom of the file? IDK
2023-09-27Turn into list before adding for mypytoofar
The right hand side is turned into a list because `list + set` isn't supported by python for some reason (why? Just make it a list). The left hand side is turned into a list because Iterable doesn't support + (why?). Possible I could change it to Sequence, but meh.
2023-09-27update changelogtoofar
2023-09-27Support wildcard mimes in filepicker workaround tootoofar
We've seen it in the wild, so it could happen, and it wasn't hard to add in the end. ref: #7866
2023-09-27Add extra suffixes to filepickertoofar
Works around a Qt bug where QFileDialog might not see all the filename extensions you have registered for a mimetype. There is an issue where if you have suffixes (filename extensions) registered in your home dir and in a system dir, it'll only see the ones in your home dir. So get suffixes from python and proactively add them into the list the list provided by the website. Duplicating work that Qt would already do, if it weren't for the bug case we are working around. Note that this does NOT help with mimetypes like `image/*` which, we have seen in at least one example (on #7866). If we wanted to handle that case it it looks like we could get the list from: [suffix for suffix, mime in mimetypes.types_map.items() if mime.startswith('image/')] I added two tests. The first is a simple one but it felt a bit imcomplete without actually testing that we were passing the right thing to `super().chooseFiles()`. Not sure how "bad" it is to be mocking `super()` and what should be instance methods unbound from the class. Regarding the `qtutils.version_check()`, here we are only interested in the Qt version check, but that class also checks the PyQt version. The practical effect of this is that we would probably end up doing the workaround for Qt 6.7.0 if we run against that with PyQt 6.6.x. But since we are just adding stuff, it isn't slow and isn't called in a hot path it doesn't really matter.
2023-09-26Fix lintFlorian Bruhin
2023-09-26Merge remote-tracking branch 'origin/pr/7934'Florian Bruhin
2023-09-25Skip test_real_chromium_version on newer Qt versionsFlorian Bruhin
Is wrong on unstable Archlinux env when Qt is newer than PyQt. But no need for this when we have the API anyways.
2023-09-25Update changelogFlorian Bruhin
2023-09-25Remove QListView borderFlorian Bruhin
Fixes #7937
2023-09-25tests: Ignore another spurious libva errorFlorian Bruhin
2023-09-25Put qt.arg test back to being exact matchtoofar
I previously changed the assertion to be a subset match, to deal with a qt arg being added based on the Qt version the tests were being run on. I didn't notice this fixture that can set setting to avoid that dynamic-ness instead.
2023-09-25Reduce args passed to `_qtwebengine_settings_args`toofar
I added all three args to this function in an effort to allow for generic feature detection, because other places further up in the code where using all these variables for that. But I didn't look at how the stuff I was passing in could be used. I can see `special_flags` has essentially already been consumed. `namespace` is used for all kinds of stuff, there could theoretically be a pretty simple mapping between the CLI arg and a setting webengine setting but the only examples of that so for are the special flags ones and debug flags, which are already generic in their own way. So if we've gone this long without it we probably don't need it.
2023-09-25Merge pull request #7939 from qutebrowser/update-dependenciestoofar
Update dependencies Doesn't look like anything scary there.
2023-09-25Fix lintFlorian Bruhin
2023-09-25Update dependenciesqutebrowser bot
2023-09-24Fix and improve workaroundFlorian Bruhin
See #7913
2023-09-24Work around QtWebEngine bug when serializing empty historyFlorian Bruhin
See https://bugreports.qt.io/browse/QTBUG-117489 Closes #7913
2023-09-23update changelogtoofar
2023-09-23Make accelerated 2d canvas setting tristate with autotoofar
I would like to be able to disable this workound for new enough chromium versions (we still need to test that chrome 111 will be fixed, but we can always bump it up later). I also wanted to use the declarative mapping `_WEBENGINE_SETTINGS` instead of adding a new conditional in `_qtwebengine_args`, because that just seems nicer. So I changed `_WEBENGINE_SETTINGS` so that the value could also be a function. The idea is that the function returns on of the other values based on some feature detection. This also required passing down the args being used for feature detection in the calling method already. I feel like that dict is being a bit abused here and if the entries could be turned into objects with a bit more consistency it might be nice. But this isn't too bad, right? Had to change the `test_qt_args` test to be a superset test instead of exact match because the new `--disable-accelerated-2d-canvas` arg was showing up in the results based on whatever Qt version you happen to be running the tests on.
2023-09-23Disable accelerated 2d canvas by default.toofar
Ideally we would only enable this if we detected Intel graphics. But that kind of feature detection is difficult to do cross platform. It's easy to do with Qt (version.py) ... but it needs a QApplication and we are trying to figure out what CLI args to pass to Qt, so we can't do that. So just disable it for everyone for now. TODO: * tests * change to tri-state option, auto by default and make auto look at the webengine version and on for Qt6 < 6.7.0
2023-09-21Add TabBarStyle TypeError workaroundFlorian Bruhin
2023-09-20replace QAbstractFileIconProvider by QFileIconProviderFlorian Stecker
2023-09-20Merge pull request #7923 from ↵Florian Bruhin
qutebrowser/dependabot/github_actions/docker/login-action-3 build(deps): bump docker/login-action from 2 to 3
2023-09-20build(deps): bump docker/login-action from 2 to 3dependabot/github_actions/docker/login-action-3dependabot[bot]
Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2...v3) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2023-09-20Merge pull request #7922 from ↵Florian Bruhin
qutebrowser/dependabot/github_actions/docker/build-push-action-5 build(deps): bump docker/build-push-action from 4 to 5
2023-09-20Merge pull request #7924 from ↵Florian Bruhin
qutebrowser/dependabot/github_actions/docker/setup-buildx-action-3 build(deps): bump docker/setup-buildx-action from 2 to 3
2023-09-19Improve NullIconProviderFlorian Stecker
2023-09-19Override IconProvider for QFileSystemModelFlorian Stecker
2023-09-18build(deps): bump docker/setup-buildx-action from 2 to 3dependabot/github_actions/docker/setup-buildx-action-3dependabot[bot]
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18build(deps): bump docker/build-push-action from 4 to 5dependabot/github_actions/docker/build-push-action-5dependabot[bot]
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4 to 5. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v4...v5) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18Add qtutils.is_wayland()Florian Bruhin
Backported to v3.0.x as simpler fix: b317038a01094136d06d4cb769b7755450b94f61
2023-09-18Add new Qt to changelogFlorian Bruhin
2023-09-18Merge pull request #7921 from qutebrowser/update-dependenciesFlorian Bruhin
Update dependencies
2023-09-18Merge pull request #7891 from ↵Florian Bruhin
qutebrowser/dependabot/github_actions/actions/checkout-4 build(deps): bump actions/checkout from 3 to 4
2023-09-18Update dependenciesqutebrowser bot
2023-09-11Merge pull request #7907 from qutebrowser/update-dependenciesFlorian Bruhin
Update dependencies