From 54f48761deba04f8ac68b601894d31bdabee3fd6 Mon Sep 17 00:00:00 2001 From: Christian Tismer Date: Fri, 1 Mar 2019 15:18:45 +0100 Subject: Amend The Python 3.5 Fix After the bug found in PYSIDE-928, the contextlib problem of Python 3.5 also vanished. What remains is the crash on shutdown which is caused by module 'testbinding'. Task-number: PYSIDE-953 Change-Id: I07f18fa468fdb0758ee4e4b7663c3a42bec42822 Reviewed-by: Cristian Maureira-Fredes --- sources/shiboken2/generator/shiboken2/cppgenerator.cpp | 2 +- sources/shiboken2/shibokenmodule/CMakeLists.txt | 4 ---- sources/shiboken2/shibokenmodule/support/signature/fix-complaints.py | 2 +- sources/shiboken2/shibokenmodule/support/signature/loader.py | 4 ---- 4 files changed, 2 insertions(+), 10 deletions(-) (limited to 'sources/shiboken2') diff --git a/sources/shiboken2/generator/shiboken2/cppgenerator.cpp b/sources/shiboken2/generator/shiboken2/cppgenerator.cpp index f2112e34f..e284c6a54 100644 --- a/sources/shiboken2/generator/shiboken2/cppgenerator.cpp +++ b/sources/shiboken2/generator/shiboken2/cppgenerator.cpp @@ -5536,7 +5536,7 @@ bool CppGenerator::finishGeneration() if (usePySideExtensions()) { s << "void cleanTypesAttributes(void) {" << endl; s << INDENT << "if (PY_VERSION_HEX >= 0x03000000 && PY_VERSION_HEX < 0x03060000)" << endl; - s << INDENT << " return; // testbinding crashes in Python 3.5 when hasattr touches types!" << endl; + s << INDENT << " return; // PYSIDE-953: testbinding crashes in Python 3.5 when hasattr touches types!" << endl; s << INDENT << "for (int i = 0, imax = SBK_" << moduleName() << "_IDX_COUNT; i < imax; i++) {" << endl; { Indentation indentation(INDENT); diff --git a/sources/shiboken2/shibokenmodule/CMakeLists.txt b/sources/shiboken2/shibokenmodule/CMakeLists.txt index 952d31994..b37d0c941 100644 --- a/sources/shiboken2/shibokenmodule/CMakeLists.txt +++ b/sources/shiboken2/shibokenmodule/CMakeLists.txt @@ -70,10 +70,6 @@ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/support/signature/lib/__init__.py" configure_file("${CMAKE_CURRENT_SOURCE_DIR}/support/signature/lib/enum_sig.py" "${CMAKE_CURRENT_BINARY_DIR}/support/signature/lib/enum_sig.py" COPYONLY) if (PYTHON_VERSION_MAJOR EQUAL 3) - if (PYTHON_VERSION_MINOR EQUAL 5) - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/support/signature/contextlib36.py" - "${CMAKE_CURRENT_BINARY_DIR}/support/signature/contextlib36.py" COPYONLY) - endif() else() configure_file("${CMAKE_CURRENT_SOURCE_DIR}/support/signature/backport_inspect.py" "${CMAKE_CURRENT_BINARY_DIR}/support/signature/backport_inspect.py" COPYONLY) diff --git a/sources/shiboken2/shibokenmodule/support/signature/fix-complaints.py b/sources/shiboken2/shibokenmodule/support/signature/fix-complaints.py index ef18beb67..cdd84f9be 100644 --- a/sources/shiboken2/shibokenmodule/support/signature/fix-complaints.py +++ b/sources/shiboken2/shibokenmodule/support/signature/fix-complaints.py @@ -49,7 +49,7 @@ you are changing messages (what I did, of course :-) . import os -patched_modules = "backport_inspect typing27 contextlib36" +patched_modules = "backport_inspect typing27" offending_words = { "behavio""ur": "behavior", diff --git a/sources/shiboken2/shibokenmodule/support/signature/loader.py b/sources/shiboken2/shibokenmodule/support/signature/loader.py index 749229c3b..458759845 100644 --- a/sources/shiboken2/shibokenmodule/support/signature/loader.py +++ b/sources/shiboken2/shibokenmodule/support/signature/loader.py @@ -158,10 +158,6 @@ with ensure_import_support(): import typing import inspect inspect.formatannotation = formatannotation - if sys.version_info[:2] == (3, 5): - # PYSIDE-953: Use a newer contextlib. - from support.signature import contextlib36 as contextlib - sys.modules["contextlib"] = contextlib else: import inspect namespace = inspect.__dict__ -- cgit v1.2.3