Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qutebrowser for openSUSE:Factory 
checked in at 2022-06-16 18:20:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qutebrowser (Old)
 and      /work/SRC/openSUSE:Factory/.qutebrowser.new.1548 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qutebrowser"

Thu Jun 16 18:20:48 2022 rev:58 rq:982814 version:2.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/qutebrowser/qutebrowser.changes  2022-04-06 
21:52:09.275113091 +0200
+++ /work/SRC/openSUSE:Factory/.qutebrowser.new.1548/qutebrowser.changes        
2022-06-16 18:22:08.504244606 +0200
@@ -1,0 +2,32 @@
+Wed Jun 15 13:47:47 UTC 2022 - Mia Herkt <m...@0x0.st>
+
+- Update to version 2.5.1
+Fixed
+  * The qute-pass userscript is marked as executable again.
+  * The MathML workaround for darkmode (e.g. black on black
+    Wikipedia formula) now also works for display (rather than
+    inline) math.
+  * The content.proxy setting can now correctly be set to arbitrary
+    values via the qute://settings page again.
+  * Fixed a rare possible crash with invalid Content-Disposition
+    headers.
+  * Fixes for various notification-related crashes:
+    + With the tiramisu notification server (due to invalid
+      behavior of the server, now a non-fatal error)
+    + With the budgie notification server when closing a
+      notification (due to invalid behavior of the server,
+      now worked around)
+    + When a server exits with an unsuccessful exit status
+      (now a non-fatal error)
+    + When a server couldn't be started successfully
+      (now a non-fatal error)
+    + With the herbe notification presenter, when the website tries
+      to close the notification after the user accepting
+      (right-clicking) it.
+  * Fixes in userscripts:
+    + The qute-bitwarden userscript now correctly searches for
+      entries for sites on a subdomain of an unrecognized TLD.
+      subdomain names. Previously my.site.local would have searched
+      in bitwarden for my.sitelocal, losing the rightmost dot.
+
+-------------------------------------------------------------------

Old:
----
  qutebrowser-2.5.0.tar.gz
  qutebrowser-2.5.0.tar.gz.asc

New:
----
  qutebrowser-2.5.1.tar.gz
  qutebrowser-2.5.1.tar.gz.asc

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qutebrowser.spec ++++++
--- /var/tmp/diff_new_pack.P94r5h/_old  2022-06-16 18:22:09.636246216 +0200
+++ /var/tmp/diff_new_pack.P94r5h/_new  2022-06-16 18:22:09.640246222 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           qutebrowser
-Version:        2.5.0
+Version:        2.5.1
 Release:        0
 Summary:        Keyboard-driven vim-like browser based on Qt5
 License:        GPL-3.0-or-later

++++++ qutebrowser-2.5.0.tar.gz -> qutebrowser-2.5.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/PKG-INFO 
new/qutebrowser-2.5.1/PKG-INFO
--- old/qutebrowser-2.5.0/PKG-INFO      2022-04-01 18:30:49.914716200 +0200
+++ new/qutebrowser-2.5.1/PKG-INFO      2022-05-26 14:11:13.407778500 +0200
@@ -1,13 +1,12 @@
 Metadata-Version: 2.1
 Name: qutebrowser
-Version: 2.5.0
+Version: 2.5.1
 Summary: A keyboard-driven, vim-like browser based on PyQt5.
 Home-page: https://www.qutebrowser.org/
 Author: Florian Bruhin
 Author-email: m...@qutebrowser.org
 License: GPL
 Keywords: pyqt browser web qt webkit qtwebkit qtwebengine
-Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: X11 Applications :: Qt
 Classifier: Intended Audience :: End Users/Desktop
@@ -307,5 +306,3 @@
 find a copy of the license in `qutebrowser/3rdparty/pdfjs/LICENSE` (in the
 Windows release or after running `scripts/dev/update_3rdparty.py`), or online
 https://www.apache.org/licenses/LICENSE-2.0.html[here].
-
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/doc/changelog.asciidoc 
new/qutebrowser-2.5.1/doc/changelog.asciidoc
--- old/qutebrowser-2.5.0/doc/changelog.asciidoc        2022-04-01 
16:59:20.000000000 +0200
+++ new/qutebrowser-2.5.1/doc/changelog.asciidoc        2022-05-26 
14:07:29.000000000 +0200
@@ -15,6 +15,35 @@
 // `Fixed` for any bug fixes.
 // `Security` to invite users to upgrade in case of vulnerabilities.
 
+[[v2.5.1]]
+v2.5.1 (2022-05-26)
+-------------------
+
+Fixed
+~~~~~
+
+- The `qute-pass` userscript is marked as executable again.
+- PDF.js now works properly again with the macOS and Windows releases.
+- The MathML workaround for darkmode (e.g. black on black Wikipedia formula)
+  now also works for display (rather than inline) math.
+- The `content.proxy` setting can now correctly be set to arbitrary values via
+  the `qute://settings` page again.
+- Fixed issues with Chromium version detection on Archlinux with
+  qt5-webengine 5.15.9-3.
+- Fixed a rare possible crash with invalid `Content-Disposition` headers.
+- Fixes for various notification-related crashes:
+  * With the `tiramisu` notification server (due to invalid behavior of the 
server, now a non-fatal error)
+  * With the `budgie` notification server when closing a notification (due to 
invalid behavior of the server, now worked around)
+  * When a server exits with an unsuccessful exit status (now a non-fatal 
error)
+  * When a server couldn't be started successfully (now a non-fatal error)
+  * With the `herbe` notification presenter, when the website tries to close
+    the notification after the user accepting (right-clicking) it.
+- Fixes in userscripts:
+  * The `qute-bitwarden` userscript now correctly searches for entries for
+    sites on a subdomain of an unrecognized TLD. subdomain names. Previously
+    `my.site.local` would have searched in bitwarden for `my.sitelocal`,
+    losing the rightmost dot.
+
 [[v2.5.0]]
 v2.5.0 (2022-04-01)
 -------------------
@@ -128,7 +157,7 @@
   list, rather than `:tab-select`.
 - Work around a Qt issue causing `:spawn` to run executables from the current
   directory if no system-wide executable was found. The underlying Qt bug is
-  tracked as 
[CVE-2022-25255](https://lists.qt-project.org/pipermail/announce/2022-February/000333.html),
+  tracked as 
https://lists.qt-project.org/pipermail/announce/2022-February/000333.html[CVE-2022-25255],
   though the impact with typical qutebrowser usage is low: Normally,
   qutebrowser is run from a fixed location (usually the users home directory),
   and `:spawn` is not typically used with executables that don't exist. The 
main
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/doc/qutebrowser.1 
new/qutebrowser-2.5.1/doc/qutebrowser.1
--- old/qutebrowser-2.5.0/doc/qutebrowser.1     2022-04-01 18:30:39.000000000 
+0200
+++ new/qutebrowser-2.5.1/doc/qutebrowser.1     2022-05-26 14:11:01.000000000 
+0200
@@ -2,12 +2,12 @@
 .\"     Title: qutebrowser
 .\"    Author: [see the "AUTHOR" section]
 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 04/01/2022
+.\"      Date: 05/26/2022
 .\"    Manual: qutebrowser manpage
 .\"    Source: qutebrowser
 .\"  Language: English
 .\"
-.TH "QUTEBROWSER" "1" "04/01/2022" "qutebrowser" "qutebrowser manpage"
+.TH "QUTEBROWSER" "1" "05/26/2022" "qutebrowser" "qutebrowser manpage"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/misc/org.qutebrowser.qutebrowser.appdata.xml 
new/qutebrowser-2.5.1/misc/org.qutebrowser.qutebrowser.appdata.xml
--- old/qutebrowser-2.5.0/misc/org.qutebrowser.qutebrowser.appdata.xml  
2022-04-01 16:59:20.000000000 +0200
+++ new/qutebrowser-2.5.1/misc/org.qutebrowser.qutebrowser.appdata.xml  
2022-05-26 14:06:03.000000000 +0200
@@ -44,6 +44,7 @@
        </content_rating>
        <releases>
 <!-- Add new releases here -->
+<release version="2.5.1" date="2022-05-26"/>
 <release version="2.5.0" date="2022-04-01"/>
 <release version="2.4.0" date="2021-10-21"/>
 <release version="2.3.1" date="2021-07-28"/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/misc/userscripts/qute-bitwarden 
new/qutebrowser-2.5.1/misc/userscripts/qute-bitwarden
--- old/qutebrowser-2.5.0/misc/userscripts/qute-bitwarden       2022-03-31 
13:14:04.000000000 +0200
+++ new/qutebrowser-2.5.1/misc/userscripts/qute-bitwarden       2022-05-26 
14:07:29.000000000 +0200
@@ -214,7 +214,7 @@
     for target in filter(None, [
                 extract_result.fqdn,
                 extract_result.registered_domain,
-                extract_result.subdomain + extract_result.domain,
+                extract_result.subdomain + '.' + extract_result.domain,
                 extract_result.domain,
                 extract_result.ipv4]):
         target_candidates = json.loads(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/__init__.py 
new/qutebrowser-2.5.1/qutebrowser/__init__.py
--- old/qutebrowser-2.5.0/qutebrowser/__init__.py       2022-04-01 
16:59:20.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/__init__.py       2022-05-26 
14:07:29.000000000 +0200
@@ -26,7 +26,7 @@
 __license__ = "GPL"
 __maintainer__ = __author__
 __email__ = "m...@qutebrowser.org"
-__version__ = "2.5.0"
+__version__ = "2.5.1"
 __version_info__ = tuple(int(part) for part in __version__.split('.'))
 __description__ = "A keyboard-driven, vim-like browser based on PyQt5."
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/browser/shared.py 
new/qutebrowser-2.5.1/qutebrowser/browser/shared.py
--- old/qutebrowser-2.5.0/qutebrowser/browser/shared.py 2022-03-30 
16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/browser/shared.py 2022-05-12 
10:11:09.000000000 +0200
@@ -341,7 +341,8 @@
             'misc-mathml-darkmode' not in 
config.val.content.site_specific_quirks.skip):
         # WORKAROUND for MathML-output on Wikipedia being black on black.
         # See https://bugs.chromium.org/p/chromium/issues/detail?id=1126606
-        css += '\nimg.mwe-math-fallback-image-inline { filter: invert(100%); }'
+        css += ('\nimg.mwe-math-fallback-image-inline, '
+                'img.mwe-math-fallback-image-display { filter: invert(100%); 
}')
 
     return css
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/browser/webengine/notification.py 
new/qutebrowser-2.5.1/qutebrowser/browser/webengine/notification.py
--- old/qutebrowser-2.5.0/qutebrowser/browser/webengine/notification.py 
2022-03-30 16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/browser/webengine/notification.py 
2022-05-26 14:07:29.000000000 +0200
@@ -276,9 +276,6 @@
             log.misc.debug("Adapter vanished, bailing out")  # type: 
ignore[unreachable]
             return
 
-        if notification_id <= 0:
-            raise Error(f"Got invalid notification id {notification_id}")
-
         if replaces_id is None:
             if notification_id in self._active_notifications:
                 raise Error(f"Got duplicate id {notification_id}")
@@ -622,17 +619,18 @@
         so there's no point.
         """
         if status == QProcess.CrashExit:
-            return
-
-        if code == 0:
+            pass
+        elif code == 0:
             self.click_id.emit(pid)
         elif code == 2:
-            self.close_id.emit(pid)
+            pass
         else:
             proc = self.sender()
             stderr = proc.readAllStandardError()
             raise Error(f'herbe exited with status {code}: {stderr}')
 
+        self.close_id.emit(pid)
+
     @pyqtSlot(QProcess.ProcessError)
     def _on_error(self, error: QProcess.ProcessError) -> None:
         if error == QProcess.Crashed:
@@ -665,6 +663,7 @@
     skip_capabilities: bool = False
     wrong_replaces_id: bool = False
     no_padded_images: bool = False
+    wrong_closes_type: bool = False
 
 
 @dataclasses.dataclass
@@ -727,9 +726,18 @@
         # Created too many similar notifications in quick succession
         "org.freedesktop.Notifications.Error.ExcessNotificationGeneration",
 
-        # From https://crashes.qutebrowser.org/view/b8c9838a - probably when
-        # notification daemon crashes?
+        # From https://crashes.qutebrowser.org/view/b8c9838a
+        # Process org.freedesktop.Notifications received signal 5
+        # probably when notification daemon crashes?
         "org.freedesktop.DBus.Error.Spawn.ChildSignaled",
+
+        # https://crashes.qutebrowser.org/view/f76f58ae
+        # Process org.freedesktop.Notifications exited with status 1
+        "org.freedesktop.DBus.Error.Spawn.ChildExited",
+
+        # https://crashes.qutebrowser.org/view/8889d0b5
+        # Could not activate remote peer.
+        "org.freedesktop.DBus.Error.NameHasNoOwner",
     }
 
     def __init__(self, parent: QObject = None) -> None:
@@ -855,12 +863,20 @@
                 wrong_replaces_id=True,
             )
         elif (name, vendor) == ("Raven", "Budgie Desktop Developers"):
+            # Before refactor
             return _ServerQuirks(
                 # https://github.com/solus-project/budgie-desktop/issues/2114
                 escape_title=True,
                 # https://github.com/solus-project/budgie-desktop/issues/2115
                 wrong_replaces_id=True,
             )
+        elif (name, vendor) == (
+                "Budgie Notification Server", "Budgie Desktop Developers"):
+            # After refactor: 
https://github.com/BuddiesOfBudgie/budgie-desktop/pull/36
+            return _ServerQuirks(
+                # https://github.com/BuddiesOfBudgie/budgie-desktop/issues/118
+                wrong_closes_type=True,
+            )
         return None
 
     def _get_server_info(self) -> None:
@@ -1004,6 +1020,9 @@
             else:
                 log.misc.error(msg)
 
+        if notification_id <= 0:
+            self.error.emit(f"Got invalid notification id {notification_id}")
+
         return notification_id
 
     def _convert_image(self, qimage: QImage) -> Optional[QDBusArgument]:
@@ -1082,7 +1101,13 @@
     @pyqtSlot(QDBusMessage)
     def _handle_close(self, msg: QDBusMessage) -> None:
         """Handle NotificationClosed from DBus."""
-        self._verify_message(msg, "uu", QDBusMessage.SignalMessage)
+        try:
+            self._verify_message(msg, "uu", QDBusMessage.SignalMessage)
+        except Error:
+            if not self._quirks.wrong_closes_type:
+                raise
+            self._verify_message(msg, "ui", QDBusMessage.SignalMessage)
+
         notification_id, _close_reason = msg.arguments()
         self.close_id.emit(notification_id)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/browser/webkit/http.py 
new/qutebrowser-2.5.1/qutebrowser/browser/webkit/http.py
--- old/qutebrowser-2.5.0/qutebrowser/browser/webkit/http.py    2022-03-31 
13:14:04.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/browser/webkit/http.py    2022-05-26 
14:07:29.000000000 +0200
@@ -89,12 +89,15 @@
         try:
             parsed = reg('Content-Disposition', decoded)
         except IndexError:  # pragma: no cover
-            # WORKAROUND for https://bugs.python.org/issue37491
+            # WORKAROUND for https://github.com/python/cpython/issues/81672
             # Fixed in Python 3.7.5 and 3.8.0.
             raise ContentDispositionError("Missing closing quote character")
         except ValueError:  # pragma: no cover
-            # WORKAROUND for https://bugs.python.org/issue42946
+            # WORKAROUND for https://github.com/python/cpython/issues/87112
             raise ContentDispositionError("Non-ASCII digit")
+        except AttributeError:
+            # WORKAROUND for https://github.com/python/cpython/issues/93010
+            raise ContentDispositionError("Section number has an invalid 
leading 0")
 
         if parsed.defects:
             defects = list(parsed.defects)
@@ -158,7 +161,7 @@
         # os.path.basename later.
         try:
             value = bytes(reply.rawHeader(content_disposition_header))
-            log.network.debug("Parsing Content-Disposition: {value!r}")
+            log.network.debug(f"Parsing Content-Disposition: {value!r}")
             content_disposition = ContentDisposition.parse(value)
             filename = content_disposition.filename()
         except ContentDispositionError as e:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/config/configdata.yml 
new/qutebrowser-2.5.1/qutebrowser/config/configdata.yml
--- old/qutebrowser-2.5.0/qutebrowser/config/configdata.yml     2022-04-01 
16:33:01.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/config/configdata.yml     2022-05-26 
14:07:29.000000000 +0200
@@ -1057,10 +1057,12 @@
   type: Bool
   supports_pattern: true
   desc: >-
-    Allow pdf.js to view PDF files in the browser.
+    Display PDF files via PDF.js in the browser without showing a download 
prompt.
 
     Note that the files can still be downloaded by clicking the download button
-    in the pdf.js viewer.
+    in the pdf.js viewer. With this set to `false`, the `:prompt-open-download
+    --pdfjs` command (bound to `<Ctrl-p>` by default) can be used in the
+    download prompt.
 
 content.persistent_storage:
   default: ask
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/config/configtypes.py 
new/qutebrowser-2.5.1/qutebrowser/config/configtypes.py
--- old/qutebrowser-2.5.0/qutebrowser/config/configtypes.py     2022-03-30 
16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/config/configtypes.py     2022-05-24 
16:46:06.000000000 +0200
@@ -109,6 +109,8 @@
         values: A list with the allowed untransformed values.
         descriptions: A dict with value/desc mappings.
         generate_docs: Whether to show the values in the docs.
+        others_permitted: Whether arbitrary values are permitted.
+                          Used to show buttons in qute://settings.
     """
 
     def __init__(
@@ -119,12 +121,14 @@
                 Tuple[str, Optional[str]],
             ],
             generate_docs: bool = True,
+            others_permitted: bool = False
     ) -> None:
         if not values:
             raise ValueError("ValidValues with no values makes no sense!")
         self.descriptions: DictType[str, str] = {}
         self.values: ListType[str] = []
         self.generate_docs = generate_docs
+        self.others_permitted = others_permitted
         for value in values:
             if isinstance(value, str):
                 # Value without description
@@ -1638,7 +1642,9 @@
         super().__init__(none_ok=none_ok, completions=completions)
         self.valid_values = ValidValues(
             ('system', "Use the system wide proxy."),
-            ('none', "Don't use any proxy"))
+            ('none', "Don't use any proxy"),
+            others_permitted=True,
+        )
 
     def to_py(
             self,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/git-commit-id 
new/qutebrowser-2.5.1/qutebrowser/git-commit-id
--- old/qutebrowser-2.5.0/qutebrowser/git-commit-id     2022-04-01 
18:30:48.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/git-commit-id     2022-05-26 
14:11:11.000000000 +0200
@@ -1 +1 @@
-01a402dcf on HEAD (2022-04-01 16:59:20 +0200)
\ No newline at end of file
+1996c4d7e on HEAD (2022-05-26 14:05:30 +0200)
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/html/doc/changelog.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/changelog.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/changelog.html   2022-04-01 
18:30:30.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/changelog.html   2022-05-26 
14:10:49.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Change Log</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -807,6 +807,97 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="v2.5.1">v2.5.1 (2022-05-26)</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_fixed">Fixed</h3>
+<div class="ulist"><ul>
+<li>
+<p>
+The <code>qute-pass</code> userscript is marked as executable again.
+</p>
+</li>
+<li>
+<p>
+PDF.js now works properly again with the macOS and Windows releases.
+</p>
+</li>
+<li>
+<p>
+The MathML workaround for darkmode (e.g. black on black Wikipedia formula)
+  now also works for display (rather than inline) math.
+</p>
+</li>
+<li>
+<p>
+The <code>content.proxy</code> setting can now correctly be set to arbitrary 
values via
+  the <code>qute://settings</code> page again.
+</p>
+</li>
+<li>
+<p>
+Fixed issues with Chromium version detection on Archlinux with
+  qt5-webengine 5.15.9-3.
+</p>
+</li>
+<li>
+<p>
+Fixed a rare possible crash with invalid <code>Content-Disposition</code> 
headers.
+</p>
+</li>
+<li>
+<p>
+Fixes for various notification-related crashes:
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+With the <code>tiramisu</code> notification server (due to invalid behavior of 
the server, now a non-fatal error)
+</p>
+</li>
+<li>
+<p>
+With the <code>budgie</code> notification server when closing a notification 
(due to invalid behavior of the server, now worked around)
+</p>
+</li>
+<li>
+<p>
+When a server exits with an unsuccessful exit status (now a non-fatal error)
+</p>
+</li>
+<li>
+<p>
+When a server couldn&#8217;t be started successfully (now a non-fatal error)
+</p>
+</li>
+<li>
+<p>
+With the <code>herbe</code> notification presenter, when the website tries to 
close
+    the notification after the user accepting (right-clicking) it.
+</p>
+</li>
+</ul></div>
+</li>
+<li>
+<p>
+Fixes in userscripts:
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+The <code>qute-bitwarden</code> userscript now correctly searches for entries 
for
+    sites on a subdomain of an unrecognized TLD. subdomain names. Previously
+    <code>my.site.local</code> would have searched in bitwarden for 
<code>my.sitelocal</code>,
+    losing the rightmost dot.
+</p>
+</li>
+</ul></div>
+</li>
+</ul></div>
+</div>
+</div>
+</div>
+<div class="sect1">
 <h2 id="v2.5.0">v2.5.0 (2022-04-01)</h2>
 <div class="sectionbody">
 <div class="sect2">
@@ -1061,7 +1152,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed">Fixed</h3>
+<h3 id="_fixed_2">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1113,7 +1204,7 @@
 <p>
 Work around a Qt issue causing <code>:spawn</code> to run executables from the 
current
   directory if no system-wide executable was found. The underlying Qt bug is
-  tracked as [CVE-2022-25255](<a 
href="https://lists.qt-project.org/pipermail/announce/2022-February/000333.html";>https://lists.qt-project.org/pipermail/announce/2022-February/000333.html</a>),
+  tracked as <a 
href="https://lists.qt-project.org/pipermail/announce/2022-February/000333.html";>CVE-2022-25255</a>,
   though the impact with typical qutebrowser usage is low: Normally,
   qutebrowser is run from a fixed location (usually the users home directory),
   and <code>:spawn</code> is not typically used with executables that 
don&#8217;t exist. The main
@@ -1215,7 +1306,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_2">Fixed</h3>
+<h3 id="_fixed_3">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1297,7 +1388,7 @@
 <h2 id="v2.3.1">v2.3.1 (2021-07-28)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_3">Fixed</h3>
+<h3 id="_fixed_4">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1375,7 +1466,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_4">Fixed</h3>
+<h3 id="_fixed_5">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1403,7 +1494,7 @@
 <h2 id="v2.2.3">v2.2.3 (2021-06-01)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_5">Fixed</h3>
+<h3 id="_fixed_6">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1488,7 +1579,7 @@
 <h2 id="v2.2.2">v2.2.2 (2021-05-20)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_6">Fixed</h3>
+<h3 id="_fixed_7">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1546,7 +1637,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_7">Fixed</h3>
+<h3 id="_fixed_8">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1874,7 +1965,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_8">Fixed</h3>
+<h3 id="_fixed_9">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1955,7 +2046,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_9">Fixed</h3>
+<h3 id="_fixed_10">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2242,7 +2333,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_10">Fixed</h3>
+<h3 id="_fixed_11">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2350,7 +2441,7 @@
 <h2 id="v2.0.2">v2.0.2 (2021-02-04)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_11">Fixed</h3>
+<h3 id="_fixed_12">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2457,7 +2548,7 @@
 <h2 id="v2.0.1">v2.0.1 (2021-01-28)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_12">Fixed</h3>
+<h3 id="_fixed_13">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3138,7 +3229,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_13">Fixed</h3>
+<h3 id="_fixed_14">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3304,7 +3395,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_14">Fixed</h3>
+<h3 id="_fixed_15">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3726,7 +3817,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_15">Fixed</h3>
+<h3 id="_fixed_16">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3870,7 +3961,7 @@
 <h2 id="v1.13.1">v1.13.1 (2020-07-17)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_16">Fixed</h3>
+<h3 id="_fixed_17">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4173,7 +4264,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_17">Fixed</h3>
+<h3 id="_fixed_18">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4361,7 +4452,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_18">Fixed</h3>
+<h3 id="_fixed_19">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4599,7 +4690,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_19">Fixed</h3>
+<h3 id="_fixed_20">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4650,7 +4741,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_20">Fixed</h3>
+<h3 id="_fixed_21">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4671,7 +4762,7 @@
 <h2 id="v1.10.1">v1.10.1 (2020-02-15)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_21">Fixed</h3>
+<h3 id="_fixed_22">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4842,7 +4933,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_22">Fixed</h3>
+<h3 id="_fixed_23">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5083,7 +5174,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_23">Fixed</h3>
+<h3 id="_fixed_24">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5229,7 +5320,7 @@
 <h2 id="v1.8.3">v1.8.3 (2019-12-05)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_24">Fixed</h3>
+<h3 id="_fixed_25">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5257,7 +5348,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_25">Fixed</h3>
+<h3 id="_fixed_26">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5492,7 +5583,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_26">Fixed</h3>
+<h3 id="_fixed_27">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5872,7 +5963,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_27">Fixed</h3>
+<h3 id="_fixed_28">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5940,7 +6031,7 @@
 <h2 id="v1.6.3">v1.6.3 (2019-06-18)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_28">Fixed</h3>
+<h3 id="_fixed_29">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5983,7 +6074,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_29">Fixed</h3>
+<h3 id="_fixed_30">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6035,7 +6126,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_30">Fixed</h3>
+<h3 id="_fixed_31">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6284,7 +6375,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_31">Fixed</h3>
+<h3 id="_fixed_32">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6437,7 +6528,7 @@
 <h2 id="v1.5.1">v1.5.1 (2018-10-10)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_32">Fixed</h3>
+<h3 id="_fixed_33">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6712,7 +6803,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_33">Fixed</h3>
+<h3 id="_fixed_34">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6801,7 +6892,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_34">Fixed</h3>
+<h3 id="_fixed_35">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -6886,7 +6977,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_35">Fixed</h3>
+<h3 id="_fixed_36">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7219,7 +7310,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_36">Fixed</h3>
+<h3 id="_fixed_37">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7290,7 +7381,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_37">Fixed</h3>
+<h3 id="_fixed_38">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7317,7 +7408,7 @@
 <h2 id="v1.3.2">v1.3.2 (2018-06-10)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_38">Fixed</h3>
+<h3 id="_fixed_39">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7351,7 +7442,7 @@
 <h2 id="v1.3.1">v1.3.1 (2018-05-29)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_39">Fixed</h3>
+<h3 id="_fixed_40">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7488,7 +7579,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_40">Fixed</h3>
+<h3 id="_fixed_41">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -7643,7 +7734,7 @@
 <h2 id="v1.2.1">v1.2.1 (2018-03-14)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_41">Fixed</h3>
+<h3 id="_fixed_42">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8000,7 +8091,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_42">Fixed</h3>
+<h3 id="_fixed_43">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8184,7 +8275,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_43">Fixed</h3>
+<h3 id="_fixed_44">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8204,7 +8295,7 @@
 <h2 id="v1.1.1">v1.1.1 (2018-01-20)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_44">Fixed</h3>
+<h3 id="_fixed_45">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8561,7 +8652,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_45">Fixed</h3>
+<h3 id="_fixed_46">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8704,7 +8795,7 @@
 <h2 id="v1.0.4">v1.0.4 (2017-11-28)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_46">Fixed</h3>
+<h3 id="_fixed_47">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8767,7 +8858,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_47">Fixed</h3>
+<h3 id="_fixed_48">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8798,7 +8889,7 @@
 <h2 id="v1.0.2">v1.0.2 (2017-10-17)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_48">Fixed</h3>
+<h3 id="_fixed_49">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -8848,7 +8939,7 @@
 <h2 id="v1.0.1">v1.0.1 (2017-10-13)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_49">Fixed</h3>
+<h3 id="_fixed_50">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -9448,7 +9539,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_50">Fixed</h3>
+<h3 id="_fixed_51">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -9619,7 +9710,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_51">Fixed</h3>
+<h3 id="_fixed_52">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -9864,7 +9955,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_52">Fixed</h3>
+<h3 id="_fixed_53">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -9995,7 +10086,7 @@
 <h2 id="v0.9.1">v0.9.1 (2017-01-13)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_53">Fixed</h3>
+<h3 id="_fixed_54">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -10542,7 +10633,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_54">Fixed</h3>
+<h3 id="_fixed_55">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -10594,7 +10685,7 @@
 <h2 id="v0.8.3">v0.8.3 (2016-11-05)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_55">Fixed</h3>
+<h3 id="_fixed_56">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -10665,7 +10756,7 @@
 <h2 id="v0.8.2">v0.8.2 (2016-08-02)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_56">Fixed</h3>
+<h3 id="_fixed_57">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -10739,7 +10830,7 @@
 <h2 id="v0.8.1">v0.8.1 (2016-07-27)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_57">Fixed</h3>
+<h3 id="_fixed_58">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -10856,7 +10947,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_58">Fixed</h3>
+<h3 id="_fixed_59">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11108,7 +11199,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_59">Fixed</h3>
+<h3 id="_fixed_60">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11216,7 +11307,7 @@
 <h2 id="v0.6.2">v0.6.2 (2016-04-30)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_60">Fixed</h3>
+<h3 id="_fixed_61">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11253,7 +11344,7 @@
 <h2 id="v0.6.1">v0.6.1 (2016-04-10)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_61">Fixed</h3>
+<h3 id="_fixed_62">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11393,7 +11484,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_62">Fixed</h3>
+<h3 id="_fixed_63">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11501,7 +11592,7 @@
 <h2 id="v0.5.1">v0.5.1 (2016-01-18)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_63">Fixed</h3>
+<h3 id="_fixed_64">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11822,7 +11913,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_64">Fixed</h3>
+<h3 id="_fixed_65">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -11915,7 +12006,7 @@
 <h2 id="v0.4.1">v0.4.1 (2015-09-30)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_65">Fixed</h3>
+<h3 id="_fixed_66">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -12117,7 +12208,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_66">Fixed</h3>
+<h3 id="_fixed_67">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -12446,7 +12537,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_67">Fixed</h3>
+<h3 id="_fixed_68">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -12540,7 +12631,7 @@
 <h2 id="v0.2.1">v0.2.1 (2015-04-19)</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixed_68">Fixed</h3>
+<h3 id="_fixed_69">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13122,7 +13213,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_69">Fixed</h3>
+<h3 id="_fixed_70">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13282,7 +13373,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_70">Fixed</h3>
+<h3 id="_fixed_71">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13392,7 +13483,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_71">Fixed</h3>
+<h3 id="_fixed_72">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13507,7 +13598,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_72">Fixed</h3>
+<h3 id="_fixed_73">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13687,7 +13778,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixed_73">Fixed</h3>
+<h3 id="_fixed_74">Fixed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -13809,7 +13900,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:28 CEST
+ 2022-05-26 14:10:47 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/html/doc/commands.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/commands.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/commands.html    2022-04-01 
18:30:35.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/commands.html    2022-05-26 
14:10:57.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Commands</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -5246,7 +5246,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:34 CEST
+ 2022-05-26 14:10:55 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/html/doc/configuring.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/configuring.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/configuring.html 2022-04-01 
18:30:34.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/configuring.html 2022-05-26 
14:10:55.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Configuring qutebrowser</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -1304,7 +1304,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:32 CEST
+ 2022-05-26 14:10:52 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/html/doc/contributing.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/contributing.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/contributing.html        
2022-04-01 18:30:31.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/contributing.html        
2022-05-26 14:10:51.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Contributing to qutebrowser</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -2265,7 +2265,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:30 CEST
+ 2022-05-26 14:10:49 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/html/doc/faq.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/faq.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/faq.html 2022-04-01 
18:30:28.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/faq.html 2022-05-26 
14:10:47.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Frequently asked questions</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -1612,7 +1612,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:28 CEST
+ 2022-05-26 14:10:46 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/html/doc/index.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/index.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/index.html       2022-04-01 
18:30:34.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/index.html       2022-05-26 
14:10:55.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>qutebrowser help</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -953,7 +953,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:34 CEST
+ 2022-05-26 14:10:55 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/html/doc/quickstart.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/quickstart.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/quickstart.html  2022-04-01 
18:30:32.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/quickstart.html  2022-05-26 
14:10:51.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>qutebrowser quickstart</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -982,7 +982,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:31 CEST
+ 2022-05-26 14:10:51 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/html/doc/settings.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/settings.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/settings.html    2022-04-01 
18:30:39.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/settings.html    2022-05-26 
14:11:01.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Setting reference</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -1522,7 +1522,7 @@
 </tr>
 <tr>
 <td align="left" valign="top"><p class="table"><a 
href="#content.pdfjs">content.pdfjs</a></p></td>
-<td align="left" valign="top"><p class="table">Allow pdf.js to view PDF files 
in the browser.</p></td>
+<td align="left" valign="top"><p class="table">Display PDF files via PDF.js in 
the browser without showing a download prompt.</p></td>
 </tr>
 <tr>
 <td align="left" valign="top"><p class="table"><a 
href="#content.persistent_storage">content.persistent_storage</a></p></td>
@@ -5763,8 +5763,8 @@
 </div>
 <div class="sect2">
 <h3 id="content.pdfjs">content.pdfjs</h3>
-<div class="paragraph"><p>Allow pdf.js to view PDF files in the browser.
-Note that the files can still be downloaded by clicking the download button in 
the pdf.js viewer.</p></div>
+<div class="paragraph"><p>Display PDF files via PDF.js in the browser without 
showing a download prompt.
+Note that the files can still be downloaded by clicking the download button in 
the pdf.js viewer. With this set to <code>false</code>, the 
<code>:prompt-open-download --pdfjs</code> command (bound to 
<code>&lt;Ctrl-p&gt;</code> by default) can be used in the download 
prompt.</p></div>
 <div class="paragraph"><p>This setting supports <a 
href="configuring.html#patterns">URL patterns</a>.</p></div>
 <div class="paragraph"><p>Type: <a href="#types">Bool</a></p></div>
 <div class="paragraph"><p>Default: <code>false</code></p></div>
@@ -9117,7 +9117,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:35 CEST
+ 2022-05-26 14:10:57 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/qutebrowser/html/doc/userscripts.html 
new/qutebrowser-2.5.1/qutebrowser/html/doc/userscripts.html
--- old/qutebrowser-2.5.0/qutebrowser/html/doc/userscripts.html 2022-04-01 
18:30:32.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/doc/userscripts.html 2022-05-26 
14:10:52.000000000 +0200
@@ -4,7 +4,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" 
/>
-<meta name="generator" content="AsciiDoc 10.1.4" />
+<meta name="generator" content="AsciiDoc 10.2.0" />
 <title>Writing qutebrowser userscripts</title>
 <style type="text/css">
 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -992,7 +992,7 @@
 <div id="footer">
 <div id="footer-text">
 Last updated
- 2022-04-01 18:30:32 CEST
+ 2022-05-26 14:10:51 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/html/settings.html 
new/qutebrowser-2.5.1/qutebrowser/html/settings.html
--- old/qutebrowser-2.5.0/qutebrowser/html/settings.html        2022-03-31 
13:14:04.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/html/settings.html        2022-05-24 
16:46:06.000000000 +0200
@@ -179,9 +179,10 @@
           </div>
         {% endif %}
       </td>
-      {% if option.typ.valid_values is not none %}
+      {% set valid_values = option.typ.valid_values %}
+      {% if valid_values is not none and not valid_values.others_permitted %}
         <td class="valid-value">
-          {% for value in option.typ.valid_values.values %}
+          {% for value in valid_values.values %}
             <div class="radio-button">
               <input type="radio" id="input-{{ option.name }}-{{ loop.index0 
}}"
                 name="{{ option.name }}" value="{{ value }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/misc/elf.py 
new/qutebrowser-2.5.1/qutebrowser/misc/elf.py
--- old/qutebrowser-2.5.0/qutebrowser/misc/elf.py       2022-03-30 
16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/misc/elf.py       2022-05-24 
16:46:06.000000000 +0200
@@ -270,7 +270,7 @@
     correctly: https://github.com/python/typeshed/issues/1467
     """
     match = re.search(
-        br'QtWebEngine/([0-9.]+) Chrome/([0-9.]+)',
+        br'\x00QtWebEngine/([0-9.]+) Chrome/([0-9.]+)\x00',
         data,
     )
     if match is None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser/misc/sql.py 
new/qutebrowser-2.5.1/qutebrowser/misc/sql.py
--- old/qutebrowser-2.5.0/qutebrowser/misc/sql.py       2022-03-30 
16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser/misc/sql.py       2022-05-26 
14:07:29.000000000 +0200
@@ -483,7 +483,7 @@
         q = self.database.query(f"DELETE FROM {self._name} where {field} = 
:val")
         q.run(val=value)
         if not q.rows_affected():
-            raise KeyError('No row with {field} = "{value}"')
+            raise KeyError(f'No row with {field} = "{value}"')
         self.changed.emit()
 
     def _insert_query(self, values: Mapping[str, Any], replace: bool) -> Query:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser.egg-info/PKG-INFO 
new/qutebrowser-2.5.1/qutebrowser.egg-info/PKG-INFO
--- old/qutebrowser-2.5.0/qutebrowser.egg-info/PKG-INFO 2022-04-01 
18:30:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser.egg-info/PKG-INFO 2022-05-26 
14:11:12.000000000 +0200
@@ -1,13 +1,12 @@
 Metadata-Version: 2.1
 Name: qutebrowser
-Version: 2.5.0
+Version: 2.5.1
 Summary: A keyboard-driven, vim-like browser based on PyQt5.
 Home-page: https://www.qutebrowser.org/
 Author: Florian Bruhin
 Author-email: m...@qutebrowser.org
 License: GPL
 Keywords: pyqt browser web qt webkit qtwebkit qtwebengine
-Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: X11 Applications :: Qt
 Classifier: Intended Audience :: End Users/Desktop
@@ -307,5 +306,3 @@
 find a copy of the license in `qutebrowser/3rdparty/pdfjs/LICENSE` (in the
 Windows release or after running `scripts/dev/update_3rdparty.py`), or online
 https://www.apache.org/licenses/LICENSE-2.0.html[here].
-
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/qutebrowser.egg-info/SOURCES.txt 
new/qutebrowser-2.5.1/qutebrowser.egg-info/SOURCES.txt
--- old/qutebrowser-2.5.0/qutebrowser.egg-info/SOURCES.txt      2022-04-01 
18:30:49.000000000 +0200
+++ new/qutebrowser-2.5.1/qutebrowser.egg-info/SOURCES.txt      2022-05-26 
14:11:13.000000000 +0200
@@ -411,7 +411,8 @@
 tests/end2end/data/crashers/installedapp.html
 tests/end2end/data/crashers/webrtc.html
 tests/end2end/data/darkmode/blank.html
-tests/end2end/data/darkmode/mathml.html
+tests/end2end/data/darkmode/mathml-display.html
+tests/end2end/data/darkmode/mathml-inline.html
 tests/end2end/data/darkmode/mathml.svg
 tests/end2end/data/darkmode/prefers-color-scheme.html
 tests/end2end/data/darkmode/yellow.html
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml-display.html 
new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml-display.html
--- old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml-display.html       
1970-01-01 01:00:00.000000000 +0100
+++ new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml-display.html       
2022-05-12 10:11:09.000000000 +0200
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta charset="utf-8">
+        <title>MathML-like SVG</title>
+    </head>
+    <body style="margin: 0; background-color: #ffff99">
+        <!--
+        Image based on: https://en.wikipedia.org/wiki/Pythagorean_theorem
+        with a black square added for testing.
+
+        onload based on:
+        
https://stackoverflow.com/questions/53423742/waiting-for-an-image-to-finish-rendering
+        -->
+        <img
+            class="mwe-math-fallback-image-display"
+            src="mathml.svg"
+            alt="Pythagorean theorem"
+            onload="requestAnimationFrame(() => requestAnimationFrame(() => 
console.log('Image loaded')));"
+        >
+        <!-- -->
+    </body>
+</html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml-inline.html 
new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml-inline.html
--- old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml-inline.html        
1970-01-01 01:00:00.000000000 +0100
+++ new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml-inline.html        
2022-05-12 10:11:09.000000000 +0200
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html>
+    <head>
+        <meta charset="utf-8">
+        <title>MathML-like SVG</title>
+    </head>
+    <body style="margin: 0; background-color: #ffff99">
+        <!--
+        Image based on: https://en.wikipedia.org/wiki/Pythagorean_theorem
+        with a black square added for testing.
+
+        onload based on:
+        
https://stackoverflow.com/questions/53423742/waiting-for-an-image-to-finish-rendering
+        -->
+        <img
+            class="mwe-math-fallback-image-inline"
+            src="mathml.svg"
+            alt="Pythagorean theorem"
+            onload="requestAnimationFrame(() => requestAnimationFrame(() => 
console.log('Image loaded')));"
+        >
+        <!-- -->
+    </body>
+</html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml.html 
new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml.html
--- old/qutebrowser-2.5.0/tests/end2end/data/darkmode/mathml.html       
2022-03-30 16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/tests/end2end/data/darkmode/mathml.html       
1970-01-01 01:00:00.000000000 +0100
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>MathML-like SVG</title>
-    </head>
-    <body style="margin: 0; background-color: #ffff99">
-        <!--
-        Image based on: https://en.wikipedia.org/wiki/Pythagorean_theorem
-        with a black square added for testing.
-
-        onload based on:
-        
https://stackoverflow.com/questions/53423742/waiting-for-an-image-to-finish-rendering
-        -->
-        <img
-            class="mwe-math-fallback-image-inline"
-            src="mathml.svg"
-            alt="Pythagorean theorem"
-            onload="requestAnimationFrame(() => requestAnimationFrame(() => 
console.log('Image loaded')));"
-        >
-        <!-- -->
-    </body>
-</html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/tests/end2end/test_invocations.py 
new/qutebrowser-2.5.1/tests/end2end/test_invocations.py
--- old/qutebrowser-2.5.0/tests/end2end/test_invocations.py     2022-03-31 
13:14:04.000000000 +0200
+++ new/qutebrowser-2.5.1/tests/end2end/test_invocations.py     2022-05-26 
14:07:29.000000000 +0200
@@ -723,7 +723,8 @@
     )
 
 
-def test_dark_mode_mathml(quteproc_new, request, qtbot):
+@pytest.mark.parametrize("suffix", ["inline", "display"])
+def test_dark_mode_mathml(quteproc_new, request, qtbot, suffix):
     if not request.config.webengine:
         pytest.skip("Skipped with QtWebKit")
 
@@ -734,7 +735,7 @@
     ]
     quteproc_new.start(args)
 
-    quteproc_new.open_path('data/darkmode/mathml.html')
+    quteproc_new.open_path(f'data/darkmode/mathml-{suffix}.html')
     quteproc_new.wait_for_js('Image loaded')
 
     # First make sure loading finished by looking outside of the image
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-2.5.0/tests/unit/browser/webkit/http/test_http.py 
new/qutebrowser-2.5.1/tests/unit/browser/webkit/http/test_http.py
--- old/qutebrowser-2.5.0/tests/unit/browser/webkit/http/test_http.py   
2022-03-30 16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/tests/unit/browser/webkit/http/test_http.py   
2022-05-24 16:46:15.000000000 +0200
@@ -44,6 +44,21 @@
     assert filename == expected
 
 
+@pytest.mark.parametrize('value', [
+    # https://github.com/python/cpython/issues/87112
+    'inline; 0*??'.encode("iso-8859-1"),
+    # https://github.com/python/cpython/issues/81672
+    b'"',
+    # https://github.com/python/cpython/issues/93010
+    b'attachment; 0*00="foo"',
+    # FIXME: Should probably have more tests if this is still relevant after
+    # dropping QtWebKit.
+])
+def test_parse_content_disposition_invalid(value):
+    with pytest.raises(http.ContentDispositionError):
+        http.ContentDisposition.parse(value)
+
+
 @pytest.mark.parametrize('template', [
     '{}',
     'attachment; filename="{}"',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-2.5.0/tests/unit/misc/test_elf.py 
new/qutebrowser-2.5.1/tests/unit/misc/test_elf.py
--- old/qutebrowser-2.5.0/tests/unit/misc/test_elf.py   2022-03-30 
16:42:49.000000000 +0200
+++ new/qutebrowser-2.5.1/tests/unit/misc/test_elf.py   2022-05-24 
16:46:06.000000000 +0200
@@ -75,6 +75,23 @@
     assert ua.upstream_browser_version == versions.chromium
 
 
+@pytest.mark.parametrize("data, expected", [
+    # Simple match
+    (
+        b"\x00QtWebEngine/5.15.9 Chrome/87.0.4280.144\x00",
+        elf.Versions("5.15.9", "87.0.4280.144"),
+    ),
+    # Ignoring garbage string-like data
+    (
+        b"\x00QtWebEngine/5.15.9 Chrome/87.0.4xternalclearkey\x00\x00"
+        b"QtWebEngine/5.15.9 Chrome/87.0.4280.144\x00",
+        elf.Versions("5.15.9", "87.0.4280.144"),
+    ),
+])
+def test_find_versions(data, expected):
+    assert elf._find_versions(data) == expected
+
+
 @hypothesis.given(data=hst.builds(
     lambda *a: b''.join(a),
     hst.sampled_from([b'', b'\x7fELF', b'\x7fELF\x02\x01\x01']),

Reply via email to