Uploaded image for project: 'Qt for Python'
  1. Qt for Python
  2. PYSIDE-741

Python 3.7 compatibility issues



    • Bug
    • Resolution: Fixed
    • P2: Important
    • 5.11.1
    • 5.9, 5.11.0
    • PySide
    • None


      While working on the Debian packaging for pyside2, the default packaging rules tried to discover and run tests with the different Python versions currently supported. Debian Unstable supports Python 3.6 and 3.7 right now and thus I got this nice traceback with Python 3.7:

      I: pybuild base:217: cd '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build'; python3.7 -m unittest discover -v 
      PySide2.support.signature (unittest.loader._FailedTest) ... ERROR
      ERROR: PySide2.support.signature (unittest.loader._FailedTest)
      ImportError: Failed to import test module: PySide2.support.signature
      Traceback (most recent call last):
        File "/usr/lib/python3.7/unittest/loader.py", line 468, in _find_test_path
          package = self._get_module_from_name(name)
        File "/usr/lib/python3.7/unittest/loader.py", line 375, in _get_module_from_name
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/__init__.py", line 42, in <module>
          from .loader import inspect
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/loader.py", line 69, in <module>
          from PySide2.support.signature.parser import pyside_type_init
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/parser.py", line 48, in <module>
          from .mapping import type_map, update_mapping, __dict__ as namespace
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/mapping.py", line 59, in <module>
          from . import typing
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/typing.py", line 1430, in <module>
          class Callable(extra=collections_abc.Callable, metaclass=CallableMeta):
        File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.7_pyside2/build/PySide2/support/signature/typing.py", line 1081, in __new__
          self._abc_registry = extra._abc_registry
      AttributeError: type object 'Callable' has no attribute '_abc_registry'

      Given that the same operation worked with Python 3.6 I assume that Pyside is not yet ready for Python 3.7 and I'm opening this ticket to ensure this is taken care of.

      Thanks for your work on pyside2.


        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.



              ctismer Christian Tismer
              rhertzog Raphaƫl Hertzog
              0 Vote for this issue
              4 Start watching this issue



                Gerrit Reviews

                  There are no open Gerrit changes