summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-30Update dependenciesqutebrowser bot
2022-03-30scripts: Improve orderingFlorian Bruhin
2022-03-30Add docstringFlorian Bruhin
2022-03-30requirements: Remove --use-feature=in-tree-buildFlorian Bruhin
This is the default now according to pip output
2022-03-30scripts: Show requirement name in table outputFlorian Bruhin
2022-03-30Merge branch 'update-dependencies'Florian Bruhin
2022-03-30pylint: Enable private_import extensionFlorian Bruhin
2022-03-30scripts: Update pyroma changelog URLFlorian Bruhin
2022-03-30ci: Switch to FORCE_COLORFlorian Bruhin
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
2022-03-30Do the Python 3.6 dance for Jinja2Florian Bruhin
2022-03-29Do the Python 3.6 dance for importlib-resourcesFlorian Bruhin
2022-03-29Fix mypyFlorian Bruhin
2022-03-29mypy: Fix typing around importlib.resourcesFlorian Bruhin
mypy was correct here: _path doesn't always return a pathlib.Path, it's why we need to handle that in _glob().
2022-03-29scripts: Add changelog URL for dillFlorian Bruhin
2022-03-29pylint: Work around Python 3.10 pathlib issueFlorian Bruhin
See https://github.com/PyCQA/pylint/issues/5783
2022-03-29pylint: Disable unnecessary-ellipsis for testsFlorian Bruhin
See https://github.com/PyCQA/pylint/issues/6036 and https://github.com/PyCQA/pylint/issues/6037
2022-03-29Switch to newer Python for lintersFlorian Bruhin
We originally used Python 3.8 for pylint for https://github.com/PyCQA/pylint/issues/3760 which is long fixed... See 214dd63441063acffa7e888f3f5b42187007da11
2022-03-29pylint: Work around used-before-assignment issuesFlorian Bruhin
See https://github.com/PyCQA/pylint/issues/6035
2022-03-29Show unbound prompt bindingsFlorian Bruhin
This makes new commands more discoverable for people with custom bindings, and helps in situations like https://www.reddit.com/r/qutebrowser/comments/tq7628/prompt_trap_closing_the_application_is_the_only/
2022-03-28Update dependenciesqutebrowser bot
2022-03-26Make mypy happyFlorian Bruhin
It seems to only check the true condition based on the given Python version in the config... See https://github.com/python/mypy/issues/12286
2022-03-26Minor style changesFlorian Bruhin
2022-03-26Use a weakref.WeakValueDictionaryFlorian Bruhin
2022-03-26Skip debucachestats test on python < 3.9Jimmy
Refactor the magic tag creation thing to add python version checking support. Makes `_check_version()` support checking plain tuples to so that I don't have to copy the operator dict. Now most of the branches of the if/else are the same, meh.
2022-03-26Disable debugcachestats on python < 3.9Jimmy
Since I added weakrefs into the cache stats debug registry thing it no longer works on python version 3.5 to 3.8, since lru_cache doesn't support weak refs for those versions. It should be possible to do some conditional stuff and get some functionality working on all supported versions but I don't think there is any great need to for a debug command. Links: https://bugs.python.org/issue14373 https://bugs.python.org/issue40504 https://github.com/qutebrowser/qutebrowser/pull/7079#issuecomment-1079539046
2022-03-26ignore lru_cache flake8 warningJimmy
The warning says the `self` reference will get cached forever. In this case though the cache is cleared on every page load (9b0395db087f).
2022-03-26debugcachestats: wrap cached functions in weakrefJimmy
In 4b93da6c69 I moved a cache that was registered with the debugcache module to be per-window. Which means they may be deleted at some point and we shouldn't hold strong references to them.
2022-03-26move tabbar lru_caches to instance levelJimmy
Flake8-bugbear correctly pointed out that TabBar instances would not be reliably cleaned up because the `self` reference would be cached in the lru_caches on a couple of the methods. And the caches are on the class so they last for the whole lifetime of the process. This commit move the caches to be created per instance, instead of on the class. Other options: 1. get rid of the caches From running the benchmark tests (eg `python3 -m pytest --benchmark-columns Min,Max,Median,Rounds -k test_update_tab_titles_benchmark`) it seems like the caches can still be helpful (even though when they were introduced in #3122 we didn't have the config cache either) 2. use cachetools to manage our own cache instead of using lru_cache in a non-standard way I don't feel like introducing a new dependency given this change didn't end up being too offensive. 3. clear the cache whenever a window get closed That would solve the "not getting deleted issue" but flake8 would still complain :) Possibly the cache size could be reduced now that there is going to be one per window. But the aren't caching large objects anyway. Flake8-bugbear change: https://github.com/PyCQA/flake8-bugbear/pull/218 Video that pointed out this way of using lru_cache: https://youtu.be/sVjtp6tGo0g
2022-03-21Fix a couple tab lengths (cast)David Vaughan
2022-03-21Change cast configuration to use an env varDavid Vaughan
Also some other small improvements / fixes.
2022-03-21Update dependenciesqutebrowser bot
2022-03-17ci: update package list before installing asciidocJimmy
On the last two runs we've been getting errors install lxml2-utils (a dependency of asciidoc) because the version in the packages list isn't available anymore. A new point build has been pushed. The base image will be updated eventually but [the docs][] say to run apt update before installing. That is already done once in this file too. Yay for longer build times. Last two runs: https://github.com/qutebrowser/qutebrowser/runs/5578546699?check_suite_focus=true https://github.com/qutebrowser/qutebrowser/runs/5581525862?check_suite_focus=true [the docs]: https://docs.github.com/en/actions/using-github-hosted-runners/customizing-github-hosted-runners#installing-software-on-ubuntu-runners
2022-03-17Merge pull request #6999 from twigleingrid/hide-long-descriptionJimmy
Hide long description of settings
2022-03-16Disable shellcheck on source line (cast)David Vaughan
2022-03-16Make cast dl program configurable (default yt-dlp)David Vaughan
I am making the yt-dl program used in the `cast` userscript configurable, via a pattern borrowed from some of the other userscripts here (e.g. `password_fill` and `kodi`): we look for an optional "cast_rc" file in the qutebrowser config directory and source it if it exists. (Technically this allows for overriding any variables used in `cast`, but this is in line with how the pattern works in the other scripts already.) If the config file is not found, we default to yt-dlp, and if that doesn't exist then youtube-dl. If after all this no program is available, we emit an error message (note, the error messaging function as currently written in the cast script seems broken and doesn't display the full error message, but fixing this existing bug is outside of the scope of this change. May be good for a followup). I recognize there's some danger of breakage for some users by switching the default to yt-dlp, but I think it's reasonable to assume that almost everybody who has yt-dlp installed would prefer it to be used anyway. Those who don't will experience no difference.
2022-03-15Switch `cast` userscript from youtube-dl to yt-dlpDavidRV00
The `cast` userscript hasn't worked for me in a while, because it attempts to launch youtube-dl which has been replaced by yt-dlp for some time. Switching this one command gets `cast` working for me.
2022-03-14qute-pass: Support folder prefixes in gopass-modeJoakim Hansen
2022-03-14Simplify socket usageFlorian Bruhin
2022-03-14Let mypy check for blanket ignoresFlorian Bruhin
2022-03-14Remove redundant checkFlorian Bruhin
We already have 'if only_one_tab_open' above.
2022-03-14Update code for latest mypyFlorian Bruhin
2022-03-14requirements: Do the Python 3.6 danceFlorian Bruhin
2022-03-14Update dependenciesqutebrowser bot
2022-03-12Update spatial navigation descriptionFlorian Bruhin
2022-03-11Fix bindings.commands docsFlorian Bruhin
2022-03-10Make short description part of the summary in the details tagIngrid Budau
This way the text of the description is not interrupted when expanded.
2022-03-07Merge pull request #7056 from qutebrowser/update-dependenciesFlorian Bruhin
Update dependencies
2022-03-07tests: Catch async ERR_INVALID_URLFlorian Bruhin
2022-03-07Fix inconsistent doc generationFlorian Bruhin
2022-03-07Merge branch 'new-chromium-args'Florian Bruhin