aboutsummaryrefslogtreecommitdiffstats
path: root/sources
diff options
context:
space:
mode:
authorChristian Tismer <tismer@stackless.com>2021-03-20 19:24:38 +0100
committerChristian Tismer <tismer@stackless.com>2021-04-01 08:52:57 +0200
commitceb0644bc3dbee517a3a61947b1fe4111579406d (patch)
treeafe3234cc8e3f174b4a3a9303a1c87ca60320b37 /sources
parentb550e16f55929bd9f0494b9549791dac6e449397 (diff)
signature: remove inspect and typing from special PySide6 modules
inspect and typing are removed from the signature module and the official ones are used. This is done as a clean-up before re-writing generate_pyi.py . Task-number: PYSIDE-1415 Change-Id: I3b580805775962447e65a2d7593ecf737e97536c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources')
-rw-r--r--sources/pyside6/PySide6/support/generate_pyi.py22
-rw-r--r--sources/pyside6/tests/QtWidgets/signature_test.py2
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/errorhandler.py2
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/layout.py3
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/lib/enum_sig.py2
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/loader.py47
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py10
-rw-r--r--sources/shiboken6/tests/samplebinding/pointerprimitivetype_test.py2
8 files changed, 20 insertions, 70 deletions
diff --git a/sources/pyside6/PySide6/support/generate_pyi.py b/sources/pyside6/PySide6/support/generate_pyi.py
index 233bc9142..f99911fa0 100644
--- a/sources/pyside6/PySide6/support/generate_pyi.py
+++ b/sources/pyside6/PySide6/support/generate_pyi.py
@@ -44,17 +44,18 @@ generate_pyi.py
This script generates the .pyi files for all PySide modules.
"""
-import sys
-import os
+import argparse
+import inspect
import io
+import logging
+import os
import re
-import subprocess
-import argparse
-from pathlib import Path
+import sys
+import typing
+
from contextlib import contextmanager
+from pathlib import Path
from textwrap import dedent
-import logging
-
# Make sure not to get .pyc in Python2.
sourcepath = Path(__file__).parent.resolve() / (Path(__file__).stem + ".py")
@@ -136,11 +137,7 @@ class Formatter(Writer):
self.mod_name = mod_name
self.print("# Module", mod_name)
self.print("import PySide6")
- from PySide6.support.signature import typing
- self.print("try:")
- self.print(" import typing")
- self.print("except ImportError:")
- self.print(" from PySide6.support.signature import typing")
+ self.print("import typing")
self.print("from PySide6.support.signature.mapping import (")
self.print(" Virtual, Missing, Invalid, Default, Instance)")
self.print()
@@ -279,7 +276,6 @@ def generate_all_pyi(outpath, options):
# now we can import
global PySide6, inspect, typing, HintingEnumerator, build_brace_pattern
import PySide6
- from PySide6.support.signature import inspect, typing
from PySide6.support.signature.lib.enum_sig import HintingEnumerator
from PySide6.support.signature.lib.tool import build_brace_pattern
diff --git a/sources/pyside6/tests/QtWidgets/signature_test.py b/sources/pyside6/tests/QtWidgets/signature_test.py
index 6842055a0..c18048b8e 100644
--- a/sources/pyside6/tests/QtWidgets/signature_test.py
+++ b/sources/pyside6/tests/QtWidgets/signature_test.py
@@ -37,6 +37,7 @@
##
#############################################################################
+import inspect
import os
import sys
import unittest
@@ -48,7 +49,6 @@ init_test_paths(False)
import PySide6.QtCore
import PySide6.QtWidgets
-from shibokensupport.signature import inspect
class PySideSignatureTest(unittest.TestCase):
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/errorhandler.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/errorhandler.py
index 7af7b48b2..71f2ffbab 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/errorhandler.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/errorhandler.py
@@ -54,9 +54,9 @@ enough to produce a useful ValueError.
This matter will be improved in a later version.
"""
+import inspect
import sys
-from shibokensupport.signature import inspect
from shibokensupport.signature import get_signature
from shibokensupport.signature.mapping import update_mapping, namespace
from textwrap import dedent
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/layout.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/layout.py
index c0460b332..3ab916326 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/layout.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/layout.py
@@ -53,8 +53,9 @@ It also implements them in this file. The configurations are
used literally as strings like "signature", "existence", etc.
"""
+import inspect
+import typing
from textwrap import dedent
-from shibokensupport.signature import inspect, typing
from shibokensupport.signature.mapping import ellipsis
from shibokensupport.signature.lib.tool import SimpleNamespace
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/lib/enum_sig.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/lib/enum_sig.py
index 97eec9052..dce11249d 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/lib/enum_sig.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/lib/enum_sig.py
@@ -47,9 +47,9 @@ It is not easy to adhere to this protocol, but in the end, it paid off
by producing a lot of clarity.
"""
+import inspect
import sys
import types
-from shibokensupport.signature import inspect
from shibokensupport.signature import get_signature as get_sig
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/loader.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/loader.py
index 9e653dd41..48db70156 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/loader.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/loader.py
@@ -64,31 +64,6 @@ import os
import traceback
import types
-# On Python 2, we only have ImportError, which is way too coarse.
-# When problems occour, please use Python 3, because it has the finer
-# ModuleNotFoundError.
-
-try:
- ModuleNotFoundError
-except NameError:
- ModuleNotFoundError = ImportError
-
-def _qualname(x):
- return getattr(x, "__qualname__", x.__name__)
-
-# patching inspect's formatting to keep the word "typing":
-def formatannotation(annotation, base_module=None):
- # if getattr(annotation, '__module__', None) == 'typing':
- # return repr(annotation).replace('typing.', '')
- if isinstance(annotation, type):
- name = _qualname(annotation)
- if annotation.__module__ in ('builtins', base_module):
- return name
- return annotation.__module__ + '.' + name
- return repr(annotation)
-
-# Note also that during the tests we have a different encoding that would
-# break the Python license decorated files without an encoding line.
# name used in signature.cpp
def pyside_type_init(type_key, sig_strings):
@@ -157,26 +132,7 @@ def list_modules(message):
for (name, module) in sorted(ext_modules.items()):
print(f" {name:23}", repr(module)[:70])
-
-orig_typing = True
-import typing
-import inspect
-inspect.formatannotation = formatannotation
-
-# Fix the module names in typing if possible. This is important since
-# the typing names should be I/O compatible, so that typing.Dict
-# shows itself as "typing.Dict".
-for name, obj in typing.__dict__.items():
- if hasattr(obj, "__module__"):
- try:
- obj.__module__ = "typing"
- except (TypeError, AttributeError):
- pass
-
import shibokensupport
-put_into_package(shibokensupport.signature, typing, "typing")
-put_into_package(shibokensupport.signature, inspect, "inspect")
-
def move_into_pyside_package():
import PySide6
@@ -195,9 +151,6 @@ def move_into_pyside_package():
put_into_package(PySide6.support.signature, importhandler)
put_into_package(PySide6.support.signature.lib, enum_sig)
- put_into_package(None if orig_typing else PySide6.support.signature, typing)
- put_into_package(PySide6.support.signature, inspect)
-
from shibokensupport.signature import mapping
from shibokensupport.signature import errorhandler
from shibokensupport.signature import layout
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py
index 177f4f179..7bf096389 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/mapping.py
@@ -47,13 +47,13 @@ The PySide modules are not loaded in advance, but only after they appear
in sys.modules. This minimizes the loading overhead.
"""
-import sys
-import struct
import os
-from pathlib import Path
+import struct
+import sys
+import typing
-from shibokensupport.signature import typing
-from shibokensupport.signature.typing import TypeVar, Generic
+from pathlib import Path
+from typing import TypeVar, Generic
from shibokensupport.signature.lib.tool import with_metaclass
class ellipsis(object):
diff --git a/sources/shiboken6/tests/samplebinding/pointerprimitivetype_test.py b/sources/shiboken6/tests/samplebinding/pointerprimitivetype_test.py
index 09362d05f..ad3bd899a 100644
--- a/sources/shiboken6/tests/samplebinding/pointerprimitivetype_test.py
+++ b/sources/shiboken6/tests/samplebinding/pointerprimitivetype_test.py
@@ -56,7 +56,7 @@ from sample import IntArray2, VirtualMethods
import shiboken6
_init_pyside_extension() # trigger init, which does not happen in tests
-from shibokensupport.signature import typing
+import typing
class PointerPrimitiveTypeTest(unittest.TestCase):