Remove Qt 5.8 support and tests

With QtWebKit it's probably okay to still use it (*cough* Hyperbola
GNU/Linux-libre^tm *cough*), and only blacklisting it with QtWebEngine would be
quite some effort.

Fixes #3608
This commit is contained in:
Florian Bruhin 2018-03-06 11:00:24 +01:00
parent ea1ff1c1ea
commit 69a58c9597
5 changed files with 7 additions and 23 deletions

View File

@ -703,10 +703,6 @@ class WebEngineTab(browsertab.AbstractTab):
def shutdown(self): def shutdown(self):
self.shutting_down.emit() self.shutting_down.emit()
self.action.exit_fullscreen() self.action.exit_fullscreen()
if qtutils.version_check('5.8', exact=True, compiled=False):
# WORKAROUND for
# https://bugreports.qt.io/browse/QTBUG-58563
self.search.clear()
self._widget.shutdown() self._widget.shutdown()
def reload(self, *, force=False): def reload(self, *, force=False):

View File

@ -172,6 +172,7 @@ def check_qt_version():
from PyQt5.QtCore import (qVersion, QT_VERSION, PYQT_VERSION, from PyQt5.QtCore import (qVersion, QT_VERSION, PYQT_VERSION,
PYQT_VERSION_STR) PYQT_VERSION_STR)
from pkg_resources import parse_version from pkg_resources import parse_version
from qutebrowser.utils import log
if (QT_VERSION < 0x050701 or PYQT_VERSION < 0x050700 or if (QT_VERSION < 0x050701 or PYQT_VERSION < 0x050700 or
parse_version(qVersion()) < parse_version('5.7.1')): parse_version(qVersion()) < parse_version('5.7.1')):
text = ("Fatal error: Qt >= 5.7.1 and PyQt >= 5.7 are required, " text = ("Fatal error: Qt >= 5.7.1 and PyQt >= 5.7 are required, "
@ -179,6 +180,10 @@ def check_qt_version():
PYQT_VERSION_STR)) PYQT_VERSION_STR))
_die(text) _die(text)
if qVersion().startswith('5.8.'):
log.init.warning("Running qutebrowser with Qt 5.8 is untested and "
"unsupported!")
def check_ssl_support(): def check_ssl_support():
"""Check if SSL support is available.""" """Check if SSL support is available."""

View File

@ -260,16 +260,6 @@ class WrapperLayout(QLayout):
self._widget = widget self._widget = widget
container.setFocusProxy(widget) container.setFocusProxy(widget)
widget.setParent(container) widget.setParent(container)
if (qtutils.version_check('5.8.0', exact=True, compiled=False) and
objects.backend == usertypes.Backend.QtWebEngine and
container.window() and
container.window().windowHandle() and
not container.window().windowHandle().isActive()):
log.misc.debug("Calling QApplication::sync...")
# WORKAROUND for:
# https://bugreports.qt.io/browse/QTBUG-56652
# https://codereview.qt-project.org/#/c/176113/5//ALL,unified
QApplication.sync()
def unwrap(self): def unwrap(self):
self._widget.setParent(None) self._widget.setParent(None)

View File

@ -632,12 +632,6 @@ Feature: Tab management
# https://github.com/qutebrowser/qutebrowser/issues/2289 # https://github.com/qutebrowser/qutebrowser/issues/2289
@qtwebkit_skip @qt==5.8.0
Scenario: Cloning a tab with a special URL
When I open chrome://gpu
And I run :tab-clone
Then the error "Can't serialize special URL!" should be shown
@qtwebkit_skip @qt<5.9 @qtwebkit_skip @qt<5.9
Scenario: Cloning a tab with a view-source URL Scenario: Cloning a tab with a view-source URL
When I open / When I open /

View File

@ -13,8 +13,8 @@ skipsdist = true
setenv = setenv =
QT_QPA_PLATFORM_PLUGIN_PATH={envdir}/Lib/site-packages/PyQt5/plugins/platforms QT_QPA_PLATFORM_PLUGIN_PATH={envdir}/Lib/site-packages/PyQt5/plugins/platforms
PYTEST_QT_API=pyqt5 PYTEST_QT_API=pyqt5
pyqt{,56,571,58,59,510}: LINK_PYQT_SKIP=true pyqt{,56,571,59,510}: LINK_PYQT_SKIP=true
pyqt{,56,571,58,59,510}: QUTE_BDD_WEBENGINE=true pyqt{,56,571,59,510}: QUTE_BDD_WEBENGINE=true
cov: PYTEST_ADDOPTS=--cov --cov-report xml --cov-report=html --cov-report= cov: PYTEST_ADDOPTS=--cov --cov-report xml --cov-report=html --cov-report=
passenv = PYTHON DISPLAY XAUTHORITY HOME USERNAME USER CI TRAVIS XDG_* QUTE_* DOCKER passenv = PYTHON DISPLAY XAUTHORITY HOME USERNAME USER CI TRAVIS XDG_* QUTE_* DOCKER
basepython = basepython =
@ -26,7 +26,6 @@ deps =
-r{toxinidir}/misc/requirements/requirements-tests.txt -r{toxinidir}/misc/requirements/requirements-tests.txt
pyqt: -r{toxinidir}/misc/requirements/requirements-pyqt.txt pyqt: -r{toxinidir}/misc/requirements/requirements-pyqt.txt
pyqt571: PyQt5==5.7.1 pyqt571: PyQt5==5.7.1
pyqt58: PyQt5==5.8.2
pyqt59: PyQt5==5.9.2 pyqt59: PyQt5==5.9.2
pyqt510: PyQt5==5.10.1 pyqt510: PyQt5==5.10.1
commands = commands =