Hello community,

here is the log from the commit of package qutebrowser for openSUSE:Factory 
checked in at 2017-10-18 10:54:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qutebrowser (Old)
 and      /work/SRC/openSUSE:Factory/.qutebrowser.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qutebrowser"

Wed Oct 18 10:54:24 2017 rev:9 rq:534475 version:1.0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/qutebrowser/qutebrowser.changes  2017-10-13 
14:20:38.940195287 +0200
+++ /work/SRC/openSUSE:Factory/.qutebrowser.new/qutebrowser.changes     
2017-10-18 10:54:30.533538222 +0200
@@ -1,0 +2,23 @@
+Tue Oct 17 13:47:35 UTC 2017 - [email protected]
+
+- Update to version 1.0.2:
+  * Fixed
+    + Fix workaround for black screens or crashes with Nvidia cards
+    + Handle a filesystem going read-only gracefully
+    + Fix crash when setting fonts.monospace
+    + Fix list options not being modifyable via .append() in
+      config.py
+    + Mark the content.notifications setting as QtWebKit only
+      correctly
+    + Fix wrong rendering of keys like <back> in the completion
+  * Changed
+    + Nicer error messages and other minor improvements
+  * Includes fixes from 1.0.1:
+    + Fixed starting after customizing fonts.tabs or
+      fonts.debug_console.
+    + Fixed starting with old PyQt versions compiled against newer
+      Qt versions.
+    + Fixed check for PyQt version to correctly enforce 5.7
+     (not 5.2).
+
+-------------------------------------------------------------------

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

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

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

Other differences:
------------------
++++++ qutebrowser.spec ++++++
--- /var/tmp/diff_new_pack.lej9MF/_old  2017-10-18 10:54:31.929472733 +0200
+++ /var/tmp/diff_new_pack.lej9MF/_new  2017-10-18 10:54:31.929472733 +0200
@@ -17,12 +17,12 @@
 
 
 Name:           qutebrowser
-Version:        1.0.0
+Version:        1.0.2
 Release:        0
 Summary:        Keyboard-driven vim-like browser on Qt5
 License:        GPL-3.0+
 Group:          Productivity/Networking/Web/Browsers
-URL:            https://qutebrowser.org/
+Url:            https://qutebrowser.org/
 Source:         
https://github.com/The-Compiler/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
 Source1:        
https://github.com/The-Compiler/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz.asc
 Source2:        %{name}.keyring

++++++ qutebrowser-1.0.0.tar.gz -> qutebrowser-1.0.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/PKG-INFO 
new/qutebrowser-1.0.2/PKG-INFO
--- old/qutebrowser-1.0.0/PKG-INFO      2017-10-12 10:15:50.000000000 +0200
+++ new/qutebrowser-1.0.2/PKG-INFO      2017-10-17 07:48:56.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: qutebrowser
-Version: 1.0.0
+Version: 1.0.2
 Summary: A keyboard-driven, vim-like browser based on PyQt5.
 Home-page: https://www.qutebrowser.org/
 Author: Florian Bruhin
@@ -190,7 +190,10 @@
           https://key.saka.io/[Saka Key]
         * Firefox addons (based on WebExtensions):
           https://addons.mozilla.org/en-GB/firefox/addon/vimium-ff/[Vimium-FF] 
(experimental),
-          http://saka-key.lusakasa.com/[Saka Key]
+          https://key.saka.io[Saka Key],
+          https://github.com/cmcaine/tridactyl[Tridactyl] (in early 
development, working
+          on a https://bugzilla.mozilla.org/show_bug.cgi?id=1215061[better 
API] for
+          keyboard integration in Firefox).
         
         Inactive
         ~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/README.asciidoc 
new/qutebrowser-1.0.2/README.asciidoc
--- old/qutebrowser-1.0.0/README.asciidoc       2017-10-11 13:51:32.000000000 
+0200
+++ new/qutebrowser-1.0.2/README.asciidoc       2017-10-13 10:33:41.000000000 
+0200
@@ -181,7 +181,10 @@
   https://key.saka.io/[Saka Key]
 * Firefox addons (based on WebExtensions):
   https://addons.mozilla.org/en-GB/firefox/addon/vimium-ff/[Vimium-FF] 
(experimental),
-  http://saka-key.lusakasa.com/[Saka Key]
+  https://key.saka.io[Saka Key],
+  https://github.com/cmcaine/tridactyl[Tridactyl] (in early development, 
working
+  on a https://bugzilla.mozilla.org/show_bug.cgi?id=1215061[better API] for
+  keyboard integration in Firefox).
 
 Inactive
 ~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/doc/changelog.asciidoc 
new/qutebrowser-1.0.2/doc/changelog.asciidoc
--- old/qutebrowser-1.0.0/doc/changelog.asciidoc        2017-10-12 
09:12:38.000000000 +0200
+++ new/qutebrowser-1.0.2/doc/changelog.asciidoc        2017-10-17 
07:48:23.000000000 +0200
@@ -15,6 +15,34 @@
 // `Fixed` for any bug fixes.
 // `Security` to invite users to upgrade in case of vulnerabilities.
 
+v1.0.2
+------
+
+Fixes
+~~~~~
+
+- Fix workaround for black screens or crashes with Nvidia cards
+- Handle a filesystem going read-only gracefully
+- Fix crash when setting `fonts.monospace`
+- Fix list options not being modifyable via `.append()` in `config.py`
+- Mark the content.notifications setting as QtWebKit only correctly
+- Fix wrong rendering of keys like `<back>` in the completion
+
+Changed
+~~~~~~~
+
+- Nicer error messages and other minor improvements
+
+v1.0.1
+------
+
+Fixes
+~~~~~
+
+- Fixed starting after customizing `fonts.tabs` or `fonts.debug_console`.
+- Fixed starting with old PyQt versions compiled against newer Qt versions.
+- Fixed check for PyQt version to correctly enforce 5.7 (not 5.2).
+
 v1.0.0
 ------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/__init__.py 
new/qutebrowser-1.0.2/qutebrowser/__init__.py
--- old/qutebrowser-1.0.0/qutebrowser/__init__.py       2017-10-12 
09:14:16.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/__init__.py       2017-10-17 
07:45:36.000000000 +0200
@@ -26,7 +26,7 @@
 __license__ = "GPL"
 __maintainer__ = __author__
 __email__ = "[email protected]"
-__version_info__ = (1, 0, 0)
+__version_info__ = (1, 0, 2)
 __version__ = '.'.join(str(e) for e in __version_info__)
 __description__ = "A keyboard-driven, vim-like browser based on PyQt5."
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/browser/webengine/webenginesettings.py 
new/qutebrowser-1.0.2/qutebrowser/browser/webengine/webenginesettings.py
--- old/qutebrowser-1.0.0/qutebrowser/browser/webengine/webenginesettings.py    
2017-10-11 13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/browser/webengine/webenginesettings.py    
2017-10-15 00:20:06.000000000 +0200
@@ -28,8 +28,6 @@
 """
 
 import os
-import ctypes
-import ctypes.util
 
 from PyQt5.QtGui import QFont
 from PyQt5.QtWebEngineWidgets import (QWebEngineSettings, QWebEngineProfile,
@@ -231,11 +229,6 @@
     if args.enable_webengine_inspector:
         os.environ['QTWEBENGINE_REMOTE_DEBUGGING'] = str(utils.random_port())
 
-    # WORKAROUND for
-    # https://bugs.launchpad.net/ubuntu/+source/python-qt4/+bug/941826
-    if utils.is_linux:
-        ctypes.CDLL(ctypes.util.find_library("GL"), mode=ctypes.RTLD_GLOBAL)
-
     _init_profiles()
 
     # We need to do this here as a WORKAROUND for
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/completion/completiondelegate.py 
new/qutebrowser-1.0.2/qutebrowser/completion/completiondelegate.py
--- old/qutebrowser-1.0.0/qutebrowser/completion/completiondelegate.py  
2017-10-09 10:08:52.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/completion/completiondelegate.py  
2017-10-17 07:35:22.000000000 +0200
@@ -202,7 +202,8 @@
             if index.column() in columns_to_filter and pattern:
                 repl = r'<span class="highlight">\g<0></span>'
                 text = re.sub(re.escape(pattern).replace(r'\ ', r'|'),
-                              repl, self._opt.text, flags=re.IGNORECASE)
+                              repl, html.escape(self._opt.text),
+                              flags=re.IGNORECASE)
                 self._doc.setHtml(text)
             else:
                 self._doc.setPlainText(self._opt.text)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/config/configcommands.py 
new/qutebrowser-1.0.2/qutebrowser/config/configcommands.py
--- old/qutebrowser-1.0.0/qutebrowser/config/configcommands.py  2017-10-11 
13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/config/configcommands.py  2017-10-17 
07:35:22.000000000 +0200
@@ -75,6 +75,10 @@
             tabbed_browser.openurl(QUrl('qute://settings'), newtab=False)
             return
 
+        if option.endswith('!'):
+            raise cmdexc.CommandError("Toggling values was moved to the "
+                                      ":config-cycle command")
+
         if option.endswith('?') and option != '?':
             self._print_value(option[:-1])
             return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/config/configdata.yml 
new/qutebrowser-1.0.2/qutebrowser/config/configdata.yml
--- old/qutebrowser-1.0.0/qutebrowser/config/configdata.yml     2017-10-11 
20:33:35.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/config/configdata.yml     2017-10-17 
07:48:23.000000000 +0200
@@ -524,6 +524,7 @@
 content.notifications:
   default: ask
   type: BoolAsk
+  backend: QtWebKit
   desc: Allow websites to show notifications.
 
 content.pdfjs:
@@ -582,7 +583,7 @@
     name: ListOrValue
     valtype: File
     none_ok: True
-  default: null
+  default: []
   desc: A list of user stylesheet filenames to use.
 
 content.webgl:
@@ -1333,7 +1334,7 @@
   type:
     name: ListOrValue
     valtype: FuzzyUrl
-  default: "https://start.duckduckgo.com";
+  default: ["https://start.duckduckgo.com";]
   desc: The page(s) to open at the start.
 
 url.yank_ignored_parameters:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/config/configinit.py 
new/qutebrowser-1.0.2/qutebrowser/config/configinit.py
--- old/qutebrowser-1.0.0/qutebrowser/config/configinit.py      2017-10-11 
22:14:55.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/config/configinit.py      2017-10-17 
07:35:22.000000000 +0200
@@ -104,7 +104,9 @@
             continue
         elif not isinstance(opt.typ, configtypes.Font):
             continue
-        elif not config.instance.get_obj(name).endswith(' monospace'):
+
+        value = config.instance.get_obj(name)
+        if value is None or not value.endswith(' monospace'):
             continue
 
         config.instance.changed.emit(name)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/config/configtypes.py 
new/qutebrowser-1.0.2/qutebrowser/config/configtypes.py
--- old/qutebrowser-1.0.0/qutebrowser/config/configtypes.py     2017-10-11 
22:14:58.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/config/configtypes.py     2017-10-13 
10:33:41.000000000 +0200
@@ -1068,7 +1068,7 @@
                 raise ValueError("Unexpected size unit in {!r}!".format(
                     size))  # pragma: no cover
 
-        if family == 'monospace':
+        if family == 'monospace' and self.monospace_fonts is not None:
             family = self.monospace_fonts
         # The Qt CSS parser handles " and ' before passing the string to
         # QFont.setFamily. We could do proper CSS-like parsing here, but since
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/git-commit-id 
new/qutebrowser-1.0.2/qutebrowser/git-commit-id
--- old/qutebrowser-1.0.0/qutebrowser/git-commit-id     2017-10-12 
10:15:50.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/git-commit-id     2017-10-17 
07:48:56.000000000 +0200
@@ -1 +1 @@
-v1.0.0 (2017-10-12 09:15:02 +0200)
\ No newline at end of file
+v1.0.2 (2017-10-17 07:44:14 +0200)
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/html/doc/changelog.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/changelog.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/changelog.html   2017-10-12 
10:15:42.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/changelog.html   2017-10-17 
07:48:49.000000000 +0200
@@ -744,6 +744,81 @@
 </div>
 </div>
 <div class="sect1">
+<h2 id="_v1_0_2">v1.0.2</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_fixes">Fixes</h3>
+<div class="ulist"><ul>
+<li>
+<p>
+Fix workaround for black screens or crashes with Nvidia cards
+</p>
+</li>
+<li>
+<p>
+Handle a filesystem going read-only gracefully
+</p>
+</li>
+<li>
+<p>
+Fix crash when setting <code>fonts.monospace</code>
+</p>
+</li>
+<li>
+<p>
+Fix list options not being modifyable via <code>.append()</code> in 
<code>config.py</code>
+</p>
+</li>
+<li>
+<p>
+Mark the content.notifications setting as QtWebKit only correctly
+</p>
+</li>
+<li>
+<p>
+Fix wrong rendering of keys like <code>&lt;back&gt;</code> in the completion
+</p>
+</li>
+</ul></div>
+</div>
+<div class="sect2">
+<h3 id="_changed">Changed</h3>
+<div class="ulist"><ul>
+<li>
+<p>
+Nicer error messages and other minor improvements
+</p>
+</li>
+</ul></div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_v1_0_1">v1.0.1</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_fixes_2">Fixes</h3>
+<div class="ulist"><ul>
+<li>
+<p>
+Fixed starting after customizing <code>fonts.tabs</code> or 
<code>fonts.debug_console</code>.
+</p>
+</li>
+<li>
+<p>
+Fixed starting with old PyQt versions compiled against newer Qt versions.
+</p>
+</li>
+<li>
+<p>
+Fixed check for PyQt version to correctly enforce 5.7 (not 5.2).
+</p>
+</li>
+</ul></div>
+</div>
+</div>
+</div>
+<div class="sect1">
 <h2 id="_v1_0_0">v1.0.0</h2>
 <div class="sectionbody">
 <div class="sect2">
@@ -915,7 +990,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed">Changed</h3>
+<h3 id="_changed_2">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -980,7 +1055,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_fixes">Fixes</h3>
+<h3 id="_fixes_3">Fixes</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1013,7 +1088,7 @@
 <h2 id="_v0_11_1">v0.11.1</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_fixes_2">Fixes</h3>
+<h3 id="_fixes_4">Fixes</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1150,7 +1225,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_2">Changed</h3>
+<h3 id="_changed_3">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1476,7 +1551,7 @@
 <h2 id="_v0_10_1">v0.10.1</h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_changed_3">Changed</h3>
+<h3 id="_changed_4">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -1633,7 +1708,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_4">Changed</h3>
+<h3 id="_changed_5">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2008,7 +2083,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_5">Changed</h3>
+<h3 id="_changed_6">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2684,7 +2759,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_6">Changed</h3>
+<h3 id="_changed_7">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -2864,7 +2939,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_7">Changed</h3>
+<h3 id="_changed_8">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3209,7 +3284,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_8">Changed</h3>
+<h3 id="_changed_9">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3557,7 +3632,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_9">Changed</h3>
+<h3 id="_changed_10">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -3923,7 +3998,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_10">Changed</h3>
+<h3 id="_changed_11">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4229,7 +4304,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_11">Changed</h3>
+<h3 id="_changed_12">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -4769,7 +4844,7 @@
 </ul></div>
 </div>
 <div class="sect2">
-<h3 id="_changed_12">Changed</h3>
+<h3 id="_changed_13">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5090,7 +5165,7 @@
 <h2 
id="_a_href_https_github_com_qutebrowser_qutebrowser_releases_tag_v0_1_4_v0_1_4_a"><a
 
href="https://github.com/qutebrowser/qutebrowser/releases/tag/v0.1.4";>v0.1.4</a></h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_changed_13">Changed</h3>
+<h3 id="_changed_14">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5240,7 +5315,7 @@
 <h2 
id="_a_href_https_github_com_qutebrowser_qutebrowser_releases_tag_v0_1_3_v0_1_3_a"><a
 
href="https://github.com/qutebrowser/qutebrowser/releases/tag/v0.1.3";>v0.1.3</a></h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_changed_14">Changed</h3>
+<h3 id="_changed_15">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5355,7 +5430,7 @@
 <h2 
id="_a_href_https_github_com_qutebrowser_qutebrowser_releases_tag_v0_1_2_v0_1_2_a"><a
 
href="https://github.com/qutebrowser/qutebrowser/releases/tag/v0.1.2";>v0.1.2</a></h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_changed_15">Changed</h3>
+<h3 id="_changed_16">Changed</h3>
 <div class="ulist"><ul>
 <li>
 <p>
@@ -5681,7 +5756,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:41 CEST
+Last updated 2017-10-17 07:48:48 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/html/doc/commands.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/commands.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/commands.html    2017-10-12 
10:15:45.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/commands.html    2017-10-17 
07:48:51.000000000 +0200
@@ -4330,7 +4330,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:43 CEST
+Last updated 2017-10-17 07:48:50 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/html/doc/configuring.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/configuring.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/configuring.html 2017-10-12 
10:15:46.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/configuring.html 2017-10-17 
07:48:52.000000000 +0200
@@ -1156,7 +1156,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:45 CEST
+Last updated 2017-10-17 07:48:51 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/html/doc/contributing.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/contributing.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/contributing.html        
2017-10-12 10:15:43.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/contributing.html        
2017-10-17 07:48:49.000000000 +0200
@@ -2083,7 +2083,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:42 CEST
+Last updated 2017-10-17 07:48:49 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/html/doc/faq.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/faq.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/faq.html 2017-10-12 
10:15:41.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/faq.html 2017-10-17 
07:48:48.000000000 +0200
@@ -1097,7 +1097,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:41 CEST
+Last updated 2017-10-17 07:48:47 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/html/doc/index.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/index.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/index.html       2017-10-12 
10:15:50.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/index.html       2017-10-17 
07:48:56.000000000 +0200
@@ -841,7 +841,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:49 CEST
+Last updated 2017-10-17 07:48:55 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/html/doc/quickstart.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/quickstart.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/quickstart.html  2017-10-12 
10:15:43.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/quickstart.html  2017-10-17 
07:48:49.000000000 +0200
@@ -919,7 +919,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:43 CEST
+Last updated 2017-10-17 07:48:49 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/html/doc/settings.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/settings.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/settings.html    2017-10-12 
10:15:49.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/settings.html    2017-10-17 
07:48:55.000000000 +0200
@@ -4242,6 +4242,7 @@
 </li>
 </ul></div>
 <div class="paragraph"><p>Default: <code>ask</code></p></div>
+<div class="paragraph"><p>This setting is only available with the QtWebKit 
backend.</p></div>
 </div>
 <div class="sect2">
 <h3 id="content.pdfjs">content.pdfjs</h3>
@@ -6194,7 +6195,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:46 CEST
+Last updated 2017-10-17 07:48:52 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qutebrowser-1.0.0/qutebrowser/html/doc/userscripts.html 
new/qutebrowser-1.0.2/qutebrowser/html/doc/userscripts.html
--- old/qutebrowser-1.0.0/qutebrowser/html/doc/userscripts.html 2017-10-12 
10:15:43.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/html/doc/userscripts.html 2017-10-17 
07:48:50.000000000 +0200
@@ -908,7 +908,7 @@
 <div id="footnotes"><hr /></div>
 <div id="footer">
 <div id="footer-text">
-Last updated 2017-10-12 10:15:43 CEST
+Last updated 2017-10-17 07:48:49 CEST
 </div>
 </div>
 </body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/misc/backendproblem.py 
new/qutebrowser-1.0.2/qutebrowser/misc/backendproblem.py
--- old/qutebrowser-1.0.0/qutebrowser/misc/backendproblem.py    2017-10-11 
13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/misc/backendproblem.py    2017-10-15 
00:20:06.000000000 +0200
@@ -23,6 +23,8 @@
 import sys
 import functools
 import html
+import ctypes
+import ctypes.util
 
 import attr
 from PyQt5.QtCore import Qt
@@ -31,7 +33,7 @@
 from PyQt5.QtNetwork import QSslSocket
 
 from qutebrowser.config import config
-from qutebrowser.utils import usertypes, objreg, version, qtutils, log
+from qutebrowser.utils import usertypes, objreg, version, qtutils, log, utils
 from qutebrowser.misc import objects, msgbox
 
 
@@ -154,6 +156,19 @@
     sys.exit(usertypes.Exit.err_init)
 
 
+def _nvidia_shader_workaround():
+    """Work around QOpenGLShaderProgram issues.
+
+    NOTE: This needs to be called before _handle_nouveau_graphics, or some
+    setups will segfault in version.opengl_vendor().
+
+    See https://bugs.launchpad.net/ubuntu/+source/python-qt4/+bug/941826
+    """
+    assert objects.backend == usertypes.Backend.QtWebEngine, objects.backend
+    if utils.is_linux:
+        ctypes.CDLL(ctypes.util.find_library("GL"), mode=ctypes.RTLD_GLOBAL)
+
+
 def _handle_nouveau_graphics():
     assert objects.backend == usertypes.Backend.QtWebEngine, objects.backend
 
@@ -352,6 +367,7 @@
     if objects.backend == usertypes.Backend.QtWebEngine:
         _handle_ssl_support()
         _handle_wayland()
+        _nvidia_shader_workaround()
         _handle_nouveau_graphics()
     else:
         assert objects.backend == usertypes.Backend.QtWebKit, objects.backend
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/misc/crashdialog.py 
new/qutebrowser-1.0.2/qutebrowser/misc/crashdialog.py
--- old/qutebrowser-1.0.0/qutebrowser/misc/crashdialog.py       2017-10-09 
10:08:52.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/misc/crashdialog.py       2017-10-15 
00:20:06.000000000 +0200
@@ -32,7 +32,7 @@
 from PyQt5.QtCore import pyqtSlot, Qt, QSize
 from PyQt5.QtWidgets import (QDialog, QLabel, QTextEdit, QPushButton,
                              QVBoxLayout, QHBoxLayout, QCheckBox,
-                             QDialogButtonBox, QApplication)
+                             QDialogButtonBox, QApplication, QMessageBox)
 
 import qutebrowser
 from qutebrowser.utils import version, log, utils, objreg, usertypes
@@ -511,10 +511,28 @@
         if self._chk_history.isChecked():
             try:
                 history = objreg.get('web-history').get_recent()
-                self._crash_info.append(("History", ''.join(history)))
+                self._crash_info.append(("History",
+                                         '\n'.join(str(e) for e in history)))
             except Exception:
                 self._crash_info.append(("History", traceback.format_exc()))
 
+    @pyqtSlot()
+    def on_report_clicked(self):
+        """Prevent empty reports."""
+        if (not self._info.toPlainText().strip() and
+                not self._contact.toPlainText().strip() and
+                self._type == 'Segmentation fault' and
+                self._func == 'qt_mainloop'):
+            msgbox.msgbox(parent=self, title='Empty crash info',
+                          text="Empty reports for fatal crashes are useless "
+                          "and mean I'll spend time deleting reports I could "
+                          "spend on developing qutebrowser instead.\n\nPlease "
+                          "help making qutebrowser better by providing more "
+                          "information, or don't report this.",
+                          icon=QMessageBox.Critical)
+        else:
+            super().on_report_clicked()
+
 
 class ReportDialog(_CrashDialog):
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/misc/earlyinit.py 
new/qutebrowser-1.0.2/qutebrowser/misc/earlyinit.py
--- old/qutebrowser-1.0.0/qutebrowser/misc/earlyinit.py 2017-10-11 
13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/misc/earlyinit.py 2017-10-13 
10:33:41.000000000 +0200
@@ -168,9 +168,11 @@
 
 def check_qt_version():
     """Check if the Qt version is recent enough."""
-    from PyQt5.QtCore import PYQT_VERSION, PYQT_VERSION_STR
-    from qutebrowser.utils import qtutils
-    if not qtutils.version_check('5.7.1') or PYQT_VERSION < 0x050200:
+    from PyQt5.QtCore import (qVersion, QT_VERSION, PYQT_VERSION,
+                              PYQT_VERSION_STR)
+    from pkg_resources import parse_version
+    if (QT_VERSION < 0x050701 or PYQT_VERSION < 0x050700 or
+            parse_version(qVersion()) < parse_version('5.7.1')):
         text = ("Fatal error: Qt >= 5.7.1 and PyQt >= 5.7 are required, "
                 "but Qt {} / PyQt {} is installed.".format(qt_version(),
                                                            PYQT_VERSION_STR))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/misc/sql.py 
new/qutebrowser-1.0.2/qutebrowser/misc/sql.py
--- old/qutebrowser-1.0.0/qutebrowser/misc/sql.py       2017-10-11 
14:46:20.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/misc/sql.py       2017-10-17 
07:35:22.000000000 +0200
@@ -65,13 +65,12 @@
         log.sql.debug("error code: {}".format(error.nativeErrorCode()))
 
         # https://sqlite.org/rescode.html
+        # https://github.com/qutebrowser/qutebrowser/issues/2930
+        # https://github.com/qutebrowser/qutebrowser/issues/3004
         environmental_errors = [
-            # SQLITE_LOCKED,
-            # https://github.com/qutebrowser/qutebrowser/issues/2930
-            '9',
-            # SQLITE_FULL,
-            # https://github.com/qutebrowser/qutebrowser/issues/3004
-            '13',
+            '8',   # SQLITE_READONLY
+            '9',   # SQLITE_LOCKED,
+            '13',  # SQLITE_FULL,
         ]
         self.environmental = error.nativeErrorCode() in environmental_errors
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/utils/qtutils.py 
new/qutebrowser-1.0.2/qutebrowser/utils/qtutils.py
--- old/qutebrowser-1.0.0/qutebrowser/utils/qtutils.py  2017-10-11 
13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/utils/qtutils.py  2017-10-13 
10:33:41.000000000 +0200
@@ -33,7 +33,8 @@
 
 import pkg_resources
 from PyQt5.QtCore import (qVersion, QEventLoop, QDataStream, QByteArray,
-                          QIODevice, QSaveFile, QT_VERSION_STR)
+                          QIODevice, QSaveFile, QT_VERSION_STR,
+                          PYQT_VERSION_STR)
 try:
     from PyQt5.QtWebKit import qWebKitVersion
 except ImportError:  # pragma: no cover
@@ -82,12 +83,18 @@
     # Catch code using the old API for this
     assert exact not in [operator.gt, operator.lt, operator.ge, operator.le,
                          operator.eq], exact
+    if compiled and exact:
+        raise ValueError("Can't use compiled=True with exact=True!")
+
     parsed = pkg_resources.parse_version(version)
     op = operator.eq if exact else operator.ge
     result = op(pkg_resources.parse_version(qVersion()), parsed)
     if compiled and result:
-        # v1 ==/>= parsed, now check if v2 ==/>= parsed too.
+        # qVersion() ==/>= parsed, now check if QT_VERSION_STR ==/>= parsed.
         result = op(pkg_resources.parse_version(QT_VERSION_STR), parsed)
+    if compiled and result:
+        # FInally, check PYQT_VERSION_STR as well.
+        result = op(pkg_resources.parse_version(PYQT_VERSION_STR), parsed)
     return result
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/utils/utils.py 
new/qutebrowser-1.0.2/qutebrowser/utils/utils.py
--- old/qutebrowser-1.0.0/qutebrowser/utils/utils.py    2017-10-11 
13:51:32.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/utils/utils.py    2017-10-17 
07:35:22.000000000 +0200
@@ -882,7 +882,7 @@
     end = datetime.datetime.now()
 
     delta = (end - start).total_seconds()
-    deadline = 3 if 'CI' in os.environ else 1
+    deadline = 3 if 'CI' in os.environ else 2
     if delta > deadline:  # pragma: no cover
         log.misc.warning(
             "YAML load took unusually long, please report this at "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser/utils/version.py 
new/qutebrowser-1.0.2/qutebrowser/utils/version.py
--- old/qutebrowser-1.0.0/qutebrowser/utils/version.py  2017-10-09 
10:08:52.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser/utils/version.py  2017-10-17 
07:48:23.000000000 +0200
@@ -32,6 +32,8 @@
 import attr
 from PyQt5.QtCore import PYQT_VERSION_STR, QLibraryInfo
 from PyQt5.QtNetwork import QSslSocket
+from PyQt5.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
+                         QOffscreenSurface)
 from PyQt5.QtWidgets import QApplication
 
 try:
@@ -392,10 +394,6 @@
     'Intel Open Source Technology Center'; or None if the vendor can't be
     determined.
     """
-    # We're doing those imports here because this is only available with Qt 5.4
-    # or newer.
-    from PyQt5.QtGui import (QOpenGLContext, QOpenGLVersionProfile,
-                             QOffscreenSurface)
     assert QApplication.instance()
 
     old_context = QOpenGLContext.currentContext()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qutebrowser-1.0.0/qutebrowser.egg-info/PKG-INFO 
new/qutebrowser-1.0.2/qutebrowser.egg-info/PKG-INFO
--- old/qutebrowser-1.0.0/qutebrowser.egg-info/PKG-INFO 2017-10-12 
10:15:50.000000000 +0200
+++ new/qutebrowser-1.0.2/qutebrowser.egg-info/PKG-INFO 2017-10-17 
07:48:56.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: qutebrowser
-Version: 1.0.0
+Version: 1.0.2
 Summary: A keyboard-driven, vim-like browser based on PyQt5.
 Home-page: https://www.qutebrowser.org/
 Author: Florian Bruhin
@@ -190,7 +190,10 @@
           https://key.saka.io/[Saka Key]
         * Firefox addons (based on WebExtensions):
           https://addons.mozilla.org/en-GB/firefox/addon/vimium-ff/[Vimium-FF] 
(experimental),
-          http://saka-key.lusakasa.com/[Saka Key]
+          https://key.saka.io[Saka Key],
+          https://github.com/cmcaine/tridactyl[Tridactyl] (in early 
development, working
+          on a https://bugzilla.mozilla.org/show_bug.cgi?id=1215061[better 
API] for
+          keyboard integration in Firefox).
         
         Inactive
         ~~~~~~~~


Reply via email to