From dabd8ede86b294c8c92cca0556c52a17572c704a Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Thu, 23 Mar 2023 22:01:48 +0100 Subject: scripts: Use proper Qt version for smoke test See https://github.com/qutebrowser/qutebrowser/issues/7202#issuecomment-1481877459 --- scripts/mkvenv.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/scripts/mkvenv.py b/scripts/mkvenv.py index cd75874fc..496b11052 100755 --- a/scripts/mkvenv.py +++ b/scripts/mkvenv.py @@ -395,7 +395,11 @@ def _find_libs() -> Dict[Tuple[str, str], List[str]]: return all_libs -def run_qt_smoke_test_single(venv_dir: pathlib.Path, *, debug: bool) -> None: +def run_qt_smoke_test_single( + venv_dir: pathlib.Path, *, + debug: bool, + pyqt_version: str, + ) -> None: """Make sure the Qt installation works.""" utils.print_title("Running Qt smoke test") code = [ @@ -410,11 +414,17 @@ def run_qt_smoke_test_single(venv_dir: pathlib.Path, *, debug: bool) -> None: 'print("Qt seems to work properly!")', 'print()', ] + env = { + 'QUTE_QT_WRAPPER': 'PyQt6' if _is_qt6_version(pyqt_version) else 'PyQt5', + } + if debug: + env['QT_DEBUG_PLUGINS'] = '1' + try: run_venv( venv_dir, 'python', '-c', '; '.join(code), - env={'QT_DEBUG_PLUGINS': '1'} if debug else {}, + env=env, capture_error=True ) except Error as e: @@ -434,15 +444,15 @@ def run_qt_smoke_test(venv_dir: pathlib.Path, *, pyqt_version: str) -> None: no_debug = pyqt_version in ("6.3", "6") and sys.platform == "darwin" if no_debug: try: - run_qt_smoke_test_single(venv_dir, debug=False) + run_qt_smoke_test_single(venv_dir, debug=False, pyqt_version=pyqt_version) except Error as e: print(e) print("Rerunning with debug output...") print("NOTE: This will likely segfault due to a Qt bug:") print("https://bugreports.qt.io/browse/QTBUG-104415") - run_qt_smoke_test_single(venv_dir, debug=True) + run_qt_smoke_test_single(venv_dir, debug=True, pyqt_version=pyqt_version) else: - run_qt_smoke_test_single(venv_dir, debug=True) + run_qt_smoke_test_single(venv_dir, debug=True, pyqt_version=pyqt_version) def install_requirements(venv_dir: pathlib.Path) -> None: -- cgit v1.2.3-54-g00ecf