Qutebrowser

Latest version: v3.4.0

Safety actively analyzes 723158 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 15 of 16

0.4.0

Not secure
Added
- New bookmark functionality (similar to quickmarks without a name).
- New command `:bookmark-add` to bookmark the current page (bound to `M`).
- New command `:bookmark-load` to load a bookmark (bound to `gb`/`gB`/`wB`).
- New (hidden) command `:completion-item-del` (bound to `<Ctrl-D>`) to delete the current item in the completion (for quickmarks/bookmarks).
- New settings `tabs -> padding` and `tabs -> indicator-tabbing` to control the size/padding of the tabbar.
- New setting `ui -> statusbar-padding` to control the size/padding of the status bar.
- New setting `network -> referer-header` to configure when the referer should be sent (by default it's only sent while on the same domain).
- New setting `tabs -> show` which supersedes the old `tabs -> hide-*` options and has an additional `switching` option which shows tab while switching them. There's also a new `show-switching` option to configure the timeout.
- New setting `storage -> remember-download-directory` to remember the last used download directory.
- New setting `storage -> prompt-download-directory` to download all downloads without asking.
- Rapid hinting is now also possible for downloads.
- Directory browsing via `file://` is now supported.

Changed
- Some developer scripts got moved to `scripts/dev/`
- When downloading to a FIFO or special file, a confirmation is displayed as this might cause qutebrowser to hang.
- The `:yank-selected` command now works in all modes instead of just caret mode and is not hidden anymore.
- `minimal_webkit_testbrowser.py` now has a `--webengine` switch to test QtWebEngine if it's installed.
- The column width percentages for the completion view now depend on the completion model.
- The values for `tabs -> position` and `ui -> downloads-position` got changed from `north`/`south`/`west/`east`to`top`/`bottom`/`left`/`right`. Existing configs should be adjusted automatically.
- `:tab-focus`/`gt` now behaves like `:tab-next` if no count/index is given.
- The completion widget doesn't show a border anymore.
- The tabbar doesn't display ugly arrows anymore if there isn't enough space for all tabs.
- Some insignificant Qt warnings which were printed on OS X are now hidden.
- Better support for Qt 5.5 and Python 3.5.

Fixed
- Fixed a bug where cookies were saved despite qutebrowser being started in private browsing mode.
- The local socket used for inter-process communication (opening new instances) is now ensured to only be accessible by the user on all operating systems.
- Various corner cases for inter-process communication issues got fixed.
- `link_pyqt.py` now should work better on untested distributions.
- Fixed various corner-cases with crashes when reading invalid config values and the history file.
- Fixed various corner-cases when setting text via an external editor.
- Fixed potential crash when hinting a text field.
- Fixed entering of insert mode when certain disabled text fields were clicked.
- Fixed a crash when using `:set` with `-p` and `!` (invert value)
- Downloads with unknown size are now handled correctly.
- `:navigate increment/decrement` (`<Ctrl-A>`/`<Ctrl-X>`) now handles some corner-cases better.
- Fixed a bug where the completion got affected by another window's completion if it was open in both windows.
- Fixed a performance issue with large histories when opening previously unvisited websites.
- The progress bar now doesn't cause the statusbar to change it's height anymore.
- `~` is now always expanded when spawning a script.
- Fixed various corner cases when opening links in an existing instance.
- Fixed a race-condition causing an exception when starting qutebrowser.

Removed
- The `tabs -> indicator-space` setting got removed as the new padding settings should be used instead.
- The `tabs -> hide-always` and `tabs -> hide-auto` settings got merged into the new `tabs -> show` setting.

0.3.0

Not secure
Added
- New commands `:message-info`, `:message-error` and `:message-warning` to show messages in the statusbar, e.g. from an userscript.
- New command `:scroll-px` which replaces `:scroll` for pixel-exact scrolling.
- New command `:jseval` to run a javascript snippet on the current page.
- New (hidden) command `:follow-selected` (bound to `Enter`/`Ctrl-Enter` by default) to follow the link which is currently selected (e.g. after searching via `/`).
- New (hidden) command `:clear-keychain` to clear a partially entered keychain (bound to `<Escape>` by default, in addition to clearing search).
- New setting `ui -> smooth-scrolling`.
- New setting `content -> webgl` to enable/disable [WebGL](https://www.khronos.org/webgl/).
- New setting `content -> css-regions` to enable/disable support for [CSS Regions](http://dev.w3.org/csswg/css-regions/).
- New setting `content -> hyperlink-auditing` to enable/disable support for [hyperlink auditing](https://html.spec.whatwg.org/multipage/semantics.html#hyperlink-auditing).
- New setting `tabs -> mousewheel-tab-switching` to control mousewheel behavior on the tab bar.
- New arguments `--datadir` and `--cachedir` to set the data/cache location.
- New arguments `--basedir` and `--temp-basedir` (intended for debugging) to set a different base directory for all data, which allows multiple invocations.
- New argument `--no-err-windows` to suppress all error windows.
- New arguments `--top-navigate` and `--bottom-navigate` (`-t`/`-b`) for `:scroll-page` to specify a navigation action (e.g. automatically go to the next page when arriving at the bottom).
- New flag `-d`/`--detach` for `:spawn` to detach the spawned process so it's not closed when qutebrowser is.
- New flag `-v`/`--verbose` for `:spawn` to print informations when the process started/exited successfully.
- Many new color settings (foreground setting for every background setting).
- New setting `ui -> modal-js-dialog` to use the standard modal dialogs for javascript questions instead of using the statusbar.
- New setting `colors -> webpage.bg` to set the background color to use for websites which don't set one.
- New setting `completion -> auto-open` to only open the completion when tab is pressed (if set to false).
- New visual/caret mode (bound to `v`) to select text by keyboard.
- There are now some example userscripts in `misc/userscripts`.
- Support for Qt 5.5 and tox 2.0

Changed
- _Breaking change for userscripts:_ `QUTE_HTML` and `QUTE_TEXT` for userscripts now don't store the contents directly, and instead contain a filename.
- The `content -> geolocation` and `notifications` settings now support a `true` value to always allow those. However, this is _not recommended_.
- New bindings `<Ctrl-R>` (rapid), `<Ctrl-F>` (foreground) and `<Ctrl-B>` (background) to switch hint modes while hinting.
- `<Ctrl-M>` and numpad-enter are now bound by default for bindings where `<Return>` was bound.
- `:hint tab` and `F` now respect the `background-tabs` setting. To enforce a foreground tab (what `F` did before), use `:hint tab-fg` or `;f`.
- `:scroll` now takes a direction argument (`up`/`down`/`left`/`right`/`top`/`bottom`/`page-up`/`page-down`) instead of two pixel arguments (`dx`/`dy`). The old form still works but is deprecated.
- The `ui -> user-stylesheet` setting now also takes file paths relative to the config directory.
- The `content -> cookies-accept` setting now has new `no-3rdparty` (default) and `no-unknown-3rdparty` values to block third-party cookies. The `default` value got renamed to `all`.
- Improved startup time by reading the webpage history while qutebrowser is open.
- The way `:spawn` splits its commandline has been changed slightly to allow commands with flags.
- The default for the `new-instance-open-target` setting has been changed to `tab`.
- Sessions now store zoom/scroll-position separately for each entry.

Deprecated
- `:scroll` with two pixel-arguments is now deprecated - `:scroll-px` should be used instead.

Removed
- The `--no-crash-dialog` argument which was intended for debugging only was removed as it's replaced by `--no-err-windows` which suppresses all error windows.
- Support for Qt installations without SSL support was dropped.

Fixed
- Scrolling should now work more reliably on some pages where arrow keys worked but `hjkl` didn't.
- Small improvements when checking if an input is an URL or not.
- Fixed wrong cursor position when completing the first item in the completion.
- Fixed exception when using search engines with {foo} in their name.
- Fixed a bug where the same title was shown for all tabs on some systems.
- Don't install the scripts package when installing qutebrowser.
- Fixed searching for terms starting with a hyphen (e.g. `/-foo`)
- Proxy authentication credentials are now remembered between different tabs.
- Fixed updating of the tab title on pages without title.
- Fixed AssertionError when closing many windows quickly.
- Various fixes for deprecated key bindings and auto-migrations.
- Workaround for qutebrowser not starting when there are NUL-bytes in the history (because of a currently unknown bug).
- Fixed handling of keybindings containing Ctrl/Meta on OS X.
- Fixed crash when downloading an URL without filename (e.g. magnet links) via "Save as...".
- Fixed exception when starting qutebrowser with `:set` as argument.
- Fixed horrible completion performance when the `shrink` option was set.
- Sessions now store zoom/scroll-position correctly.

0.2.1

Not secure
Fixed: Added missing manpage (doc/qutebrowser.1.asciidoc) to archive.

0.2.0

Not secure
Added
- Session support
- new command `:session-load` to load a session.
- new command `:session-save` to save a session.
- new command `:session-delete` to delete a session.
- new setting `general -> save-session` to always save the session on quit.
- new setting `general -> session-default-name` to configure the session name to use if none is given.
- new argument `-r`/`--restore` to specify a session to load.
- new argument `-R`/`--override-restore` to not load a session even if one was saved.
- New commands to manage downloads:
- `:download` to download a URL or the current page.
- `:download-cancel` to cancel a download.
- `:download-delete` to delete a download from disk.
- `:download-open` to open a finished download.
- `:download-remove` to remove a download from the list. `:download-remove --all` or the new 'cd' keybinding can be used to clear all finished downloads.
- History completion
- New option `completion -> timestamp-format` to set the format used to display the history timestamps.
- New option `completion -> web-history-max-items` to configure how many history items to show in the completion.
- The option `completion -> history-length` for the command history got renamed to `cmd-history-max-items`.
- Better save logic for the config/state:
- Only save files if modified (e.g. don't overwrite the config if it was edited outside of qutebrowser and nothing was changed in qutebrowser).
- Save things (cookies, config, quickmarks, ...) periodically all 15 seconds (time can be changed with the `general -> auto-save-interval` option).
- Opera-like mouse rocker gestures
- New option `input -> rocker-gestures`. When turned on, the history can be navigated back/forward by holding a mouse button and pressing the other one.
- New `-f` option for `:reload` to reload and bypass the cache.
- Pass more information (`QUTE_MODE`, `QUTE_SELECTED_TEXT`, `QUTE_SELECTED_HTML`, `QUTE_USER_AGENT`, `QUTE_HTML`, `QUTE_TEXT`) to userscripts.
- New `--userscript` option to `:spawn` (which deprecates `:run-userscript`).
- Ability to toggle a value to `:set` by appending a `!` to the value.
- New options to hide the tab-/statusbar:
- `tabs -> hide-always` for the tabbar
- `ui -> hide-statusbar` for the statusbar
- New options to configure how the tab/window titles should look:
- `tabs -> title-format` for the tabbar
- `ui -> window-title-format` for the window title
- HTML5 Geolocation/Notification support:
- New option `content -> geolocation` to permanently turn the geolocation off.
- New option `content -> notifications` to permanently turn notifications off.
- New options to disable javascript prompts/alerts:
- `content -> ignore-javascript-prompt` to turn off prompts.
- `content -> ignore-javascript-alerts` to turn off alerts.
- Two new options to customize the behavior of hints:
- `hints -> min-chars` to set minimum number of chars in hints.
- `hints -> scatter` which when turned off distributes the hints sequentially (like dwb) instead of scattering their positions (like Vimium).
- Make it possible to use `:open -[twb]` without url.
- New option `general -> default-page` to set the page to be opened when doing that.
- New `input -> partial-timeout` option to clear partial keystrings.
- New option `completion -> download-path-suggestion` to configure what to show in the completion for downloads.
- Queue messages shown in unfocused windows and show them when the window is focused.
- New option `ui -> message-unfocused` to disable this behavior.
- New `--relaxed-config` argument which ignores unknown options.
- New `:tab-detach` command to open the current tab in a new window.
- Zooming via Ctrl-Mousewheel.
- New option `input -> mouse-zoom-divider` to control how much the page is zoomed when rotating the wheel.
- New option (`content -> host-blocking-enabled`) to enable/disable host blocking.
- New values `tab-bg`/`tab-bg-silent` for `new-instance-open-target` to open a background tab.
- New `ui -> downloads-position` setting to move the downloads to the bottom.
- New `ui -> hide-mouse-cursor` option to hide the mouse cursor inside qutebrowser.
- New argument `-s` for qutebrowser to set a temporary config option.
- New argument `-p` for the `:set` command to print the new value.
- New `--rapid` option to `:hint`. The `rapid`/`rapid-win` targets are now deprecated, and `--rapid` can be used as well with the targets run/hover/userscript/spawn as well.
- New `-f` argument to `:bind` to overwrite the old binding.
- New `--qt-name` argument to qutebrowser which is passed to Qt to set `WM_CLASS`.
- Alternating row colors in completion. This adds a new `colors -> completion.alternate-bg` option.

Changed
- Ignore quotes with maxsplit-commands (`:open`, `:quickmark-load`, etc.) and don't quote arguments for those commands in the completions. This also means some commands needed adjustments:
- Clear search when `:search` without arguments is given. (`:search ""` will now search for the literal text `""`)
- Add `-s`/`--space` argument to `:set-cmd-text` (as `:set-cmd-text "foo "` will now set the literal text `"foo "`)
- Ignore `;;` for splitting with some commands like `:bind`.
- Add unbound (new) default keybindings to config. This also adds a new `<unbound>` special command.
- To unbind a command keybinding without binding it to a new key, you now have to bind it to `<unbound>` or it'll be readded automatically.
- If an SSL error is raised multiple times with the same error/certificate/host/scheme/port, the user is only asked once.
- Jump to last instead of first item when pressing Shift-Tab the first time in the completion.
- Add a fullscreen keybinding.
- Add a `:search` command in addition to `/foo` so it's more visible and can be used from scripts.
- Various improvements to documentation, logging, and the crash reporter.
- Expand `~` to the users home directory with `:run-userscript`.
- Improve the userscript runner on Linux/OS X by using `QSocketNotifier`.
- Add luakit-like `gt`/`gT` keybindings to cycle through tabs.
- Show default value for config values in the completion.
- Clone tab icon, tab text and zoom level when cloning tabs.
- Don't open relative file paths with `:open`, only with commandline arguments.
- Expand environment variables in config settings which take a file path.
- Add a list of common user agents to the user agent setting completion.
- Move cursor to end of textboxes when hinting.
- Don't start searches on invalid URLs for quickmarks/startpage.
- Various performance improvements for the completion.
- Always open URLs given as argument in the foreground.
- Improve various error messages.
- Add `startpage`/`default-page` values to `tabs -> last-close`.
- Various improvements to `:restart` - it should be more robust now and uses sessions so all state (focused tab, scroll position, etc.) gets remembered.
- Add tab index display to the statusbar.
- Keep progress bar height fixed when the statusbar is multiline.
- Many improvements to tests and related infrastructure:
- `init_venv.py` and `run_checks.py` have been replaced by [tox](http://tox.readthedocs.org/). Install tox and run `tox -e mkvenv` instead.
- The tests now use [pytest](http://pytest.org/)
- Many new tests added
- Mac Mini buildbot to run the tests on OS X.
- Coverage recording via [coveage.py](http://nedbatchelder.com/code/coverage/).
- New `--pdb-postmortem argument` to drop into the pdb debugger on exceptions.
- Use [hunter](https://github.com/ionelmc/python-hunter) for line tracing instead of a selfmade solution.

Deprecated
- The `:run-userscript` command - use `:spawn --userscript` instead.
- The `rapid` and `rapid-win` targets for `:hint` - use the `--rapid` argument to `:hint` instead.
- The `:cancel-download` command - use `:download-cancel` instead.
- The `:download-page` command - use `:download` instead.

Removed
- `init_venv.py` and `run_checks.py` have been replaced by [tox](http://tox.readthedocs.org/). Install tox and run `tox -e mkvenv` instead..

Fixed
- Fix for cache never being used.
- Fixed handling of key release events (e.g. for javascript) when holding a key and pressing a second one.
- Fix handling of commands using `;;` at various places (key config, command parser, `:bind`)
- Fix splitting of flags with arguments (`:bind -m`/`--mode`).
- Fix bindings of special keys with lower-case modifiers (e.g. `<ctrl-x>`)
- Fix for weird search highlights when changing tabs while search is active.
- Fix starting with `-c ""`.
- Fix removing of partial downloads when a download is cancelled via context menu.
- Fix retrying of downloads which were started in a now closed tab.
- Highlight text case-insensitively in completion.
- Scroll completion to top when showing it.
- Handle unencodable file paths in config types correctly.
- Fix for crash when executing a delayed command (because of a shadowed keybinding) and then unfocusing the window.
- Fix for crash when hinting on a page which doesn't have an URL yet.
- Fix exception when using `:set-cmd-text` with an empty argument.
- Add a timeout to pastebin HTTP replies.
- Various other fixes for small/rare bugs.

0.1.4

Not secure
This is a bugfix only release.

It adds workarounds for the following privacy/security-relevant Qt bugs:
- Stop the icon database from being created when private-browsing is set to true (d9f3566, 891bb86)
- Disable insecure SSL ciphers (< 128bit) for Qt 5.2. (6fe8160)

Also, the following fixes are cherry-picked from master:
- Improvements to CPU usage when idle. (a4a6099, 44dd4da)
- Ensure there's no size for font-family settings. (f69470d)
- Refactor websettings and save/restore defaults. (71dbdb3)
- Remove default search engines. (6c0e470)
- Handle URLs with double-colon at the beginning as search strings (669760e, 2322ee4)
- Adjust prompt size hint based on content. (e8b689a)
- Ignore RuntimeError in mouserelease_insertmode. (20c3e8d)
- Hide Qt warning when aborting download reply. (05f5083, 4ec6183)
- Hide "Error while shutting down tabs" message. (baa3dfd, 1251c28)
- Clear open target in acceptNavigationRequest. (8f10a97)
- Fix handling of signals with deleted tabs. (202b267, 2b34fbc)
- Various small improvements to logging. (d0a0e39, bfcce19, d24360d)
- Various improvements for hinting. (415c291, d929590, efb0828, 471e62f, f3b55d6)
- Remove debug console completing completely. (8291090)
- Restore sys.std\* in utils.fake_io on exceptions. (a6f77d5)
- Allow font names with integers in them. (4bad99e)
- Fix QIODevice warnings when closing tabs. (0d1f4c0)
- Improve parsing of faulthandler logs. (51276c6, 7dbdc1b)
- Set the QSettings path to a config-subdirectory. (e02897e)
- Add workaround for adblock-message without window. (ab011cd)
- Fix searching for terms starting with a slash. (a8371d3)
- Ignore tab key presses if they'd switch focus. (d618892)

0.1.3

Not secure
This is a bugfix only release, with all bugfixes since v0.1.2 cherry-picked:
- Don't show line edit text in its repr(). (b44d7c0)
- Handle shutdown of page with prompt correctly. (b852dae)
- Various small logging improvements. (f146003, a09503d, 659fa02)
- fuzzy_url: handle invalid URLs with autosearch off (2403e5b)
- Handle explicit searches with auto-search=false. (9b05455)
- Abort download override question on error/cancel. (e957796)
- Set a higher z-index for hint labels. (1de82a2)
- Don't open relative files in fuzzy_url with :open (54eed6a)
- Various crashdialog improvements. (c0bc636, 5c9718c, 7655313, c42c196, 2f55e21, a5264bd, 5f310b4, 00003e4, 30ac341, 49943ef, 6f831c2, 302929b)
- Hide adblocked iframes. (51549fc)
- Close contextmenu when closing tab to avoid crash. (38a236a)
- Fix statusbar quickly popping up as window. (a065568)
- Clean up NetworkManager after downloads finished. (4abd708)
- Fix restoring of cmd widget after an error. (d37064a)
- Fix retrying of downloads after the tab is closed. (9625791)
- Fix some check_libraries() for arch (b2a0193)
- Handle all IPCErrors properly. (bfd2ef8)
- Handle another webelem.IsNullError with hints. (0842dc1)
- Handle UnicodeDecodeError when reading configs. (8011a3c)

Page 15 of 16

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.