Skip to content

Latest commit

 

History

History
689 lines (593 loc) · 32.8 KB

CHANGELOG.asciidoc

File metadata and controls

689 lines (593 loc) · 32.8 KB

Change Log

All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.

v0.6.0 (unreleased)

Added

  • New --quiet argument for the :debug-pyeval command to not open a tab with the results. Note :debug-pyeval is still only intended for debugging.

  • The completion now matches each entered word separately.

  • A new command :paste-primary got added to paste the primary selection, and <Shift-Insert> got added as a binding so it pastes primary rather than clipboard.

  • New mode word for hints -> mode which uses a dictionary and link-texts for hints instead of single characters.

Changed

  • Pasting multiple lines via :paste now opens each line in a new tab.

  • :navigate increment/decrement now preserves leading zeroes in URLs.

  • general -> editor can now also handle {} inside another argument (e.g. to open vim via termite)

  • Improved performance when scrolling with many tabs open.

  • Shift-Insert now also pastes primary selection for prompts.

Fixed

  • Fixed starting with -c "".

  • Fixed crash when a tab is closed twice via javascript (e.g. Dropbox authentication dialogs)

  • Fixed crash when a notification/geolocation prompt is answered after closing the tab it belongs to.

  • Fixed crash when downloading a file without any path information (e.g a magnet link).

  • Fixed crashes when opening an empty URL (e.g. via pasting).

  • Fixed validation of duplicate values in hints -> chars.

  • Fixed crash when PDF.js was partially installed.

v0.5.1

Fixed

  • Fixed completion for various config values when using :set.

  • Fixed config validation for various config values.

  • Prevented an error being logged when a website with HTTP authentication was opened on Windows.

v0.5.0

Added

  • Ability to preview PDFs using pdf.js in the browser if it’s installed. This is disabled by default and can be enabled using the content -> pdfjs-enabled setting.

  • New setting ui -> hide-wayland-decoration to hide the window decoration when using wayland.

  • New userscripts in misc/userscripts:

  • open_download to easily open a file in your downloads folder.

  • view_in_mpv to open a video in mpv and remove it from the page.

  • qutedmenu and dmenu_qutebrowser to select URLs via dmenu

  • New setting content -> host-blocking-whitelist to whitelist certain domains from the adblocker.

  • {scroll_pos} can now be used in ui -> window-title-format and tabs -> title-format.

  • New setting general -> url-incdec-segments to configure which segments of the URL should be affected by :navigate increment/decrement.

  • New --target argument to specify how URLs should be opened in an existing instance.

  • New setting statusbar.url.fg.success.https to set the foreground color for the URL when a page was loaded via HTTPS.

  • The scrollbar in the completion is now styled, and the following new options got added:

    • completion -> scrollbar-width

    • completion -> scrollbar-padding

    • colors -> completion.scrollbar.fg

    • colors -> completion.scrollbar.bg

  • New value none for options taking a color system so they don’t display a gradient:

    • colors -> tabs.indicator.system

    • colors -> downloads.fg.system

    • colors -> downloads.bg.system

  • New command :download-retry to retry a failed download.

  • New command :download-clear which replaces :download-remove --all.

  • :set-cmd-text has a new --append argument to append to the current statusbar text.

  • qutebrowser now uses ~/.netrc if available to authenticate via HTTP.

  • New :fake-key command to send a fake keypress to a website or to qutebrowser.

  • New --mhtml argument for :download to download a page including all ressources as MHTML file.

  • New option tabs -> title-alignment to change the alignment of tab titles.

Changed

  • The colors -> tabs.bg/fg.selected option got split into tabs.bg/fg.selected.odd/even.

  • :spawn --userscript and :hint with the userscript target now look up relative paths in ~/.local/share/qutebrowser/userscripts or $XDG_DATA_DIR. Using a binary in $PATH won’t work anymore with --userscript.

  • New design for error pages

  • Link filtering for hints now checks if the text is contained anywhere in the link, and matches case-insensitively.

  • The ui -> remove-finished-downloads option got changed to an integer and now takes a time (in milliseconds) to keep the download around after it’s finished. When set to -1, downloads are never removed.

  • The :follow-hint command now optionally takes the keystring of a hint to follow.

  • :scroll-px now doesn’t take floats anymore, which made little sense.

  • Updated the user agent list for the :set network user-agent completion.

  • Starting with --debug doesn’t log VDEBUG messages anymore (add --loglevel VDEBUG to get them).

  • :debug-console now hides the console if it’s already shown.

  • :yank-selected now doesn’t log the selected text anymore.

  • general -> log-javascript-console got changed from a boolean to an option taking a loglevel (none, info, debug).

  • :tab-move +/- now wraps around if tabs -> wrap is true.

  • When a subprocess (like launched by :spawn) fails, its stdout/stderr is now logged to the console.

  • A search engine name can now contain any non-space character, like dashes.

Deprecated

  • :download-remove --all is now deprecated and :download-clear should be used instead.

  • :download <url> <destination> is now deprecated and :download --dest <destination> <url> should be used instead.

Removed

  • :scroll with two pixel-arguments (deprecated in v0.3.0)

  • The :run-userscript command (deprecated in v0.2.0)

  • The rapid and rapid-win targets for :hint (deprecated in v0.2.0)

  • The :cancel-download command (deprecated in v0.2.0)

  • The :download-page command (deprecated in v0.2.0)

Fixed

  • Fixed retrying of downloads which were started in a now closed tab.

  • Fixed displaying of web history if web-history-max-items is set to -1.

  • Cloned tabs now don’t display favicons anymore if show-favicons is False.

  • Fixed a crash when clicking a bookmark name and pressing Ctrl-D.

  • Fixed a crash when a website presents a very small favicon.

  • Fixed prompting for download directory when storage -> prompt-download-directory was unset.

  • Fixed crash when using :follow-hint outside of hint mode.

  • Fixed crash when using :set foo bar? with invalid section/option.

  • Fixed scrolling to the very left/right with :scroll-perc.

  • Using an external editor should now work correctly with some funny chars (U+2028/U+2029/BOM).

  • Movements in caret mode now should work correctly on OS X and Windows.

  • Fixed upgrade from earlier config versions.

  • Fixed crash when killing a running userscript.

  • Fixed characters being passed through when shifted with forward-unbound-keys set to auto.

  • Fixed restarting after a crash is reported.

  • Removed .pyc files accidentally contained in source releases.

v0.4.1

Fixed

  • Adjusted AppArmor config for the IPC changes in v0.4.0.

  • Fixed atime update frequency for IPC file.

  • Worked around a Qt issue where middle-clicking caused scrolling with a touchpad to restart at the beginning of the page.

  • The completion -> web-history-max-items setting is now also respected for items added after starting qutebrowser.

  • Search terms are now shared between different tabs again

  • Tests (a reduced subset of them) now run correctly again when DISPLAY is not set.

  • Fixed an issue causing qutebrowser to crash with Python 3.5 as soon as an ad was blocked.

  • Fixed an issue causing qutebrowser to not start with more recent Python 3.4 versions (e.g. on Debian experimental).

  • Fixed various PendingDeprecationWarnings shown with Python 3.5.

v0.4.0

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.

v0.3.0

Added

  • New commands :message-info, :message-error and :message-warning to show messages in the statusbar, e.g. from a 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.

  • New setting content -> css-regions to enable/disable support for CSS Regions.

  • New setting content -> hyperlink-auditing to enable/disable support for 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.

Fixed

  • Added missing manpage (doc/qutebrowser.1.asciidoc) to archive.

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. Install tox and run tox -e mkvenv instead.

    • The tests now use pytest

    • Many new tests added

    • Mac Mini buildbot to run the tests on OS X.

    • Coverage recording via coverage.py.

    • New --pdb-postmortem argument to drop into the pdb debugger on exceptions.

    • Use 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. 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.

Changed

  • The Windows builds come with Qt 5.4.1 which has some related bugfixes.

  • Improvements to CPU usage when idle.

  • Ensure there’s no size for font-family settings.

  • Handle URLs with double-colon as search strings.

  • Adjust prompt size hint based on content.

  • Refactor websettings and save/restore defaults.

  • Various small improvements to logging.

  • Various improvements for hinting.

  • Improve parsing of faulthandler logs.

Removed

  • Remove default search engines.

  • Remove debug console completing completely.

Fixed

  • Ignore RuntimeError in mouserelease_insertmode.

  • Hide Qt warning when aborting download reply.

  • Hide "Error while shutting down tabs" message.

  • Clear open target in acceptNavigationRequest.

  • Fix handling of signals with deleted tabs.

  • Restore sys.std* in utils.fake_io on exceptions.

  • Allow font names with integers in them.

  • Fix QIODevice warnings when closing tabs.

  • Set the QSettings path to a config-subdirectory.

  • Add workaround for adblock-message without window.

  • Fix searching for terms starting with a slash.

  • Ignore tab key presses if they’d switch focus.

Security

  • Stop the icon database from being created when private-browsing is set to true.

  • Disable insecure SSL ciphers.

Changed

  • Various small logging improvements.

  • Don’t open relative files in fuzzy_url with :open

  • Various crashdialog improvements.

  • Hide adblocked iframes.

Fixed

  • Handle shutdown of page with prompt correctly.

  • fuzzy_url: handle invalid URLs with autosearch off

  • Handle explicit searches with auto-search=false.

  • Abort download override question on error/cancel.

  • Set a higher z-index for hint labels.

  • Close contextmenu when closing tab to avoid crash.

  • Fix statusbar quickly popping up as window.

  • Clean up NetworkManager after downloads finished.

  • Fix restoring of cmd widget after an error.

  • Fix retrying of downloads after the tab is closed.

  • Fix check_libraries() output for Arch Linux.

  • Handle all IPCErrors properly.

  • Handle another webelem.IsNullError with hints.

  • Handle UnicodeDecodeError when reading configs.

Security

  • Fix for HTTP passwords accidentally being written to debug log.

Changed

  • Uncheck sending of debug log by default when private browsing is on.

  • Add SSL info to version info.

Removed

  • Remove hosts-file.net from blocker default lists.

Fixed

  • Fix rare exception when a key is pressed shortly after opening a window

  • Fix exception with certain invalid URLs like http:foo:0

  • Work around Qt bug which renders checkboxes on OS X unusable

  • Fix exception when a local files can’t be read in :adblock-update

  • Hide 2 more Qt warnings.

  • Add !important to hint CSS so websites don’t override the hint look

  • Make init_venv.py work with multiple sip .so files.

  • Fix splitting with certain commands with an empty argument

  • Fix uppercase hints.

  • Fix segfaults if another page is loaded while a prompt is open

  • Fix exception with invalid ShellCommand config values.

  • Replace unencodable chars

  • Fix user-stylesheet setting with an empty value.

Added

  • Set window icon and add a qutebrowser.ico file for Windows.

  • Ask the user when downloading to an already existing file.

  • Add a network -> proxy-dns-requests option.

  • Add "Remove finished" to the download context menu

  • Open and remove clicked downloads.

Changes

  • Windows releases are now built with Qt 5.4 which brings many improvements and bugfixes.

  • Add a troubleshooting section to the FAQ.

  • Display IPC errors to the user.

  • Rewrite keymode handling to use only one mode which also fixes various bugs.

  • Save version to state config.

  • Set zoom to default instead of 100% with :zoom/=.

  • Adjust page zoom if default zoom changed.

  • Force tabs to be focused on :undo.

  • Replace manual installation instructions on OS X with homebrew/macports.

  • Allow min-/maximizing of print preview on Windows.

  • Various documentation improvements.

  • Various other small improvements and cleanups.

Removed

  • Clean up and temporarily disable alias completion.

Fixed

  • Fix setting of QWebSettings (e.g. web fonts) with empty strings.

  • Re-focus web view when leaving prompt/yesno mode.

  • Handle :restart correctly with Python eggs.

  • Handle an invalid cwd properly.

  • Fix popping of a dead question in prompter.

  • Fix AttributeError on config changes on Ubuntu.

  • Don’t treat things like "31c3" as IP address.

  • Handle category being None in Qt message handler.

  • Force-include pygments in freeze.py.

  • Fix scroll percentage not updating on some pages like twitter.

  • Encode Content-Disposition header name properly.

  • Fix item sorting in NeighborList.

  • Handle data being None in download read timer.

  • Stop download read timer when reply has finished.

  • Fix handling of small/big fuzzyval's in NeighborList.

  • Fix crashes when entering invalid values in qute:settings.

  • Abort questions in NetworkManager when destroyed.

  • Fix height calculation of download view.

  • Always auto-remove adblock downloads when done.

  • Ensure the docs get included in freeze.py.

  • Fix crash with :zoom.

Initial release.