[qutebrowser] qutebrowser v2.2.0 released!
Florian Bruhin
me at the-compiler.org
Tue Apr 13 13:51:08 CEST 2021
Hey,
I'm happy to announce that I released qutebrowser v2.2.0 today.
The main changes to be aware of are probably:
* The new notification support (using libnotify for native
notifications, if available)
* Backwards-incompatible changes to the content.ssl_strict option (now
`content.tls.certificate_errors`) to (finally) make it more intuitive.
But there are other small and big changes as well - thanks to everyone
who contributed!
As usual, the full changelog is below.
Florian
Deprecated
~~~~~~~~~~
- Running qutebrowser with Qt 5.12.0 is now unsupported and logs a warning. It
should still work - however, a workaround for issues with the Nvidia graphic
driver was dropped. Newer Qt 5.12.x versions are still fully supported.
- The `--force` argument for `:tab-only` is deprecated, use `--pinned close`
instead.
- Using `:tab-focus` without an argument or count is now deprecated, use
`:tab-next` instead.
Added
~~~~~
- New dependency on the `QtDBus` module. If this requirement is an issue for you
or your distribution, please open an issue! Note that a DBus connection at
runtime is still optional.
- New `input.media_keys` setting which can be used to disable Chromium's
handling of media keys.
- New `:process` command (and associated `qute://process` pages) which can be
used to view and terminate/kill external processes spawned by qutebrowser.
- New `content.site_specific_quirks.skip` setting which can be used to disable
individual site-specific quirks.
- New `--pinned` argument for `:tab-only`, which replaces `--force` (with
`--pinned close`), but also can take `--pinned keep` to keep pinned tabs
without prompting.
- New `fileselect.folder.command` which can be used with
`fileselect.handler = external` to customize the command to use to upload
directories (`<input type="file" webkitdirectory />` elements, which are
non-standard but in wide use).
- New `content.notifications.presenter` setting with various new ways to show
web notifications:
* `auto` (default): Automatically detect the best available option
* `qt`: Use Qt's built-in mechanism (like before this release)
* `libnotify`: Use a libnotify-compatible notification server (i.e. native
notifications on Linux)
* `systray`: Use a systray icon (very similar to `qt` but without some of
its drawbacks)
* `messages`: Use qutebrowser messages
* `herbe`: Use https://github.com/dudik/herbe[herbe]
- New `content.notifications.show_origin` setting, which can be used to decide
for which notifications to show the origin (the URL the notification was sent
from).
Changed
~~~~~~~
- The `content.ssl_strict` setting got renamed to
`content.tls.certificate_errors`, with new values:
* `ask`: Prompt on overridable certificate errors (`ssl_strict = 'ask'`)
* `ask-block-thirdparty`: See below
* `block`: Block the page load (`ssl_strict = True`)
* `load-insecurely`: Load the page despite the error (`ssl_strict = False`)
- The new `content.tls.certificate_errors` setting now also understands the
value `ask-block-thirdparty`, which asks for page loads but automatically blocks
resource loads on TLS errors. This behavior is consistent with what other
browsers do.
- The prompt text shown on certificate errors has been improved to make it
clearer what kind of error occurred exactly.
- The `content.site_specific_quirks` setting got renamed to
`content.site_specific_quirks.enabled`.
- The `content.notifications` option got renamed to
`content.notifications.enabled`.
- The completion now also shows bindings starting with `set-cmd-text` in its
third column, such as `o` for `:open`.
- When `:spawn` is used with the `-m` / `--output-messages` flag, the output now
appears live, while the process is running.
- When a shown message replaces an existing related one (e.g. for zoom levels),
the replacing now also works even if a different message was shown in between.
- The `.redirect(...)` method on interceptors now supports an
`ignore_unsupported=True` argument which supresses exceptions if a request could
not be redirected. Note, however, that it is still not public API.
- When the `--config-py` argument is used, no warning about a missing
`config.load_autoconfig` is shown anymore, as the argument is typically used
for temporarily testing a config.
- The internal `_autosave` session used for crash recovery is now only saved
once per minute, since saving it for every page load is a noticable performance
issue.
- The `readability-js` userscript now displays a small header with page
information.
- When an external file selector is used, some additional validation is done on
the picked files now, so that errors are shown if e.g. a directory is selected
when a file was expected.
- The default binding for `T` (`:tab-focus`) got changed so that it fills the
command line with `:tab-focus` if used without a count (instead of being
equivalent to `:tab-next` in that case).
- The `:config-unset` command now understands the `--pattern` (`-u`) flag to
unset options customized for a given URL pattern (such as after answering a
prompt with "always"/"never").
- The `:config-unset` command now shows an error when used on an option which is
valid, but was never customized.
- The `statusbar.widgets` setting now understands `text:...` entries which
allows adding a hard-coded text to the statusbar.
- The polyfill for `String.replaceAll` (required for Nextcloud Calendar < 2.2.0
with QtWebEngine < 5.15.3) is now disabled by default, as it's not fully
compliant to the ECMAScript spec and might cause issues on other websites.
If you still need it (e.g. if you're still on an old Nextcloud Calendar
version), remove `js-string-replaceall` from
`content.site_specific_quirks.skip`.
Fixed
~~~~~
- When an editor exits with a != 0 exit status, the temporary editor file is now
persisted. This already was the case when the editor crashed.
- When a nonexistent file gets passed to `--config-py`, qutebrowser now
complains instead of silently not loading it.
- With some (rare) setups, opening the report dialog or using a PAC proxy with
QtWebKit could result in qutebrowser hanging due to a PyQt bug. There's now a
workaround which prevents the hang.
- QtWebEngine version detection (influencing things like dark mode settings or
certain workarounds) now works correctly on OpenBSD.
- Certain version number formats in `/etc/os-release` caused qutebrowser to
crash. Those are now handled correctly.
- The macOS releases now properly support Dark Mode for UI elements by setting
`NSRequiresAquaSystemAppearance` to false.
Removed
~~~~~~~
- The `qute://spawn-output` page used by `:spawn -o` is now removed, as it's
replaced by the new `qute://process` pages.
--
me at the-compiler.org | https://www.qutebrowser.org
https://bruhin.software/ | https://github.com/sponsors/The-Compiler/
GPG: 916E B0C8 FD55 A072 | https://the-compiler.org/pubkey.asc
I love long mails! | https://email.is-not-s.ms/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://listi.jpberlin.de/pipermail/qutebrowser/attachments/20210413/e1ffea75/attachment.asc>
More information about the qutebrowser
mailing list