Age | Commit message (Collapse) | Author |
|
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)
---
updated-dependencies:
- dependency-name: actions/setup-node
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
|
|
Update dependencies
|
|
|
|
if -> is
where -> were
|
|
(cherry picked from commit f4ba52d33fb73a44a9298098d062987f23fb79db)
|
|
|
|
(cherry picked from commit b3b1384037f0717a1905c67c69b887034345221c)
|
|
|
|
This reverts commit 597873286c78c1a998367c565125d0c0cb45b905.
|
|
|
|
Not needed on CI for a reason I don't quite understand, but needed locally for things to run.
|
|
|
|
Update dependencies
|
|
|
|
|
|
See https://riverbankcomputing.com/news/SIP_v6.7.12_Released
|
|
|
|
|
|
See https://mypy-lang.blogspot.com/2023/10/mypy-16-released.html
|
|
|
|
Update dependencies
|
|
https://pylint.readthedocs.io/en/stable/user_guide/messages/refactor/prefer-typing-namedtuple.html
Says to using the class based typing.NamedTuple instead of
collections.namedtuple, which just constructs a class based off of
strings.
Here we are creating a dynamic class based on the fields in the SQL result.
It's only called once for a query, so I don't think speed is an issue.
Also it's not used by the completion, looks like just :history
|
|
With pylint 3 there is a new option: https://pylint.readthedocs.io/en/latest/user_guide/messages/convention/use-implicit-booleaness-not-comparison-to-zero.html
It's disabled by default but we enable all warnings and disabled them as
desired.
This one is of the opinion that:
if x == 0:
is bad and
if x:
is good.
I feel that the first one (x == 0) is more clear. We aren't checking for
truthiness here, we are checking for a literal value, its very
intentional.
One might argue that being precious about making the type here is
redundant in current year with type checking tooling and all that. But
there are like a hundred of these checks in the code base so it seems a
well established pattern anyhow.
In summary, the new warning doesn't have a very strong use case and we
would prefer to stick with out established pattern.
|
|
Was getting R0913: Too many arguments (14/10) (too-many-arguments)
no idea what that is just showing up now
|
|
|
|
|
|
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.
|
|
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.
|
|
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.
|
|
|
|
|
|
|
|
Update dependencies
|
|
|
|
|
|
Override IconProvider for QFileSystemModel to prevent a slowdown in the
download dialog on Linux when browsing to directories with many files.
|
|
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.
|
|
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.
|
|
I forgot about that fixture.
|
|
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
|
|
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.
|
|
|
|
We've seen it in the wild, so it could happen, and it wasn't hard to add
in the end.
ref: #7866
|
|
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.
|
|
|
|
|
|
Is wrong on unstable Archlinux env when Qt is newer than PyQt. But no need for this when we have the API anyways.
|
|
|
|
Fixes #7937
|
|
|