diff options
author | Christian Tismer <tismer@stackless.com> | 2019-02-25 12:35:24 +0100 |
---|---|---|
committer | Christian Tismer <tismer@stackless.com> | 2019-02-26 10:35:51 +0000 |
commit | c6c1a3e099a8139137d6ef133d1d399ba1ee38bd (patch) | |
tree | aad5762394b1c6b2c03d1e4ddfa7ad7fd32b2abe /sources/pyside2/PySide2 | |
parent | 5dcebb60c75b03cec2db63ecc618740a78d7f084 (diff) |
Prevent Python 3.5 From Crashing The Build
Python 3.5 has a bug that crashes the build.
See the description in the issue tracker.
The cure is to use a more recent contextlib.py and to avoid
a PySide cleanup function that creates the crash.
The problem is not solved for Python 3.5, and it is not clear
if the testbinding module has a hidden bug, too.
But this fix seems to be good enough for the moment.
We should decide if we are going to fix Python 3.5 or abandon
it altogether.
Change-Id: Iacf2237de1f34d2b3cd1d68f1fb5833bdca3fdc2
Fixes: PYSIDE-953
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/pyside2/PySide2')
-rw-r--r-- | sources/pyside2/PySide2/support/generate_pyi.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sources/pyside2/PySide2/support/generate_pyi.py b/sources/pyside2/PySide2/support/generate_pyi.py index a92ee76f0..21ef841fe 100644 --- a/sources/pyside2/PySide2/support/generate_pyi.py +++ b/sources/pyside2/PySide2/support/generate_pyi.py @@ -53,6 +53,13 @@ import re import subprocess import argparse import glob +# PYSIDE-953: Use a newer contextlib for Python 3.5 +skip_creation = False +if sys.version_info[:2] == (3, 5): + try: + import PySide2.support.signature # gets new contextlib + except: + skip_creation = True from contextlib import contextmanager from textwrap import dedent @@ -272,6 +279,9 @@ def single_process(lockdir): def generate_all_pyi(outpath, options): + if skip_creation: + logger.warn("Sorry, we cannot create .pyi files with Python 3.5 while PySide") + logger.warn(" is not installed. Please run it by hand!") ps = os.pathsep if options.sys_path: # make sure to propagate the paths from sys_path to subprocesses |