Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt for Python
  4. PySide (shiboken) core dumps depending on script filename
Forum Updated to NodeBB v4.3 + New Features

PySide (shiboken) core dumps depending on script filename

Scheduled Pinned Locked Moved Unsolved Qt for Python
4 Posts 2 Posters 789 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • JonBJ Offline
    JonBJ Offline
    JonB
    wrote on last edited by JonB
    #1

    My environment is Ubuntu 22.04, Python 3.10.6, Qt 5.15.3, all supplied with distro. I have added PyQt 5.15.6 and PySide2 5.15.2.1 and shiboken2 5.15.2.1. All is working well in general with Python/Qt/PyQt/PySide.

    Today I created a script file named signal.py with the following content:

    from PySide2 import QtCore
    

    That's it! Just that one line (or anything else which reads in PySide2).

    Then attempting to run python3 signal.py core dumps with following:

    Problem importing shibokensupport:
    cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
    Traceback (most recent call last):
      File "(builtin)", line 93, in ensure_shibokensupport
      File "(builtin)", line 133, in bootstrap
      File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 222, in <module>
        move_into_pyside_package()
      File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 196, in move_into_pyside_package
        import PySide2.support
      File "/home/jon/.local/lib/python3.10/site-packages/PySide2/support/__init__.py", line 40, in <module>
        from shiboken2 import VoidPtr
    ImportError: cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
    sys.path:
      /home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir
      /home/jon/PySide2
      /usr/lib/python310.zip
      /usr/lib/python3.10
      /usr/lib/python3.10/lib-dynload
      /home/jon/.local/lib/python3.10/site-packages
      /usr/local/lib/python3.10/dist-packages
      /usr/lib/python3/dist-packages
    Traceback (most recent call last):
      File "(builtin)", line 93, in ensure_shibokensupport
      File "(builtin)", line 133, in bootstrap
      File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 222, in <module>
        move_into_pyside_package()
      File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 196, in move_into_pyside_package
        import PySide2.support
      File "/home/jon/.local/lib/python3.10/site-packages/PySide2/support/__init__.py", line 40, in <module>
        from shiboken2 import VoidPtr
    ImportError: cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "(builtin)", line 132, in bootstrap
      File "/usr/lib/python3.10/contextlib.py", line 153, in __exit__
        self.gen.throw(typ, value, traceback)
      File "(builtin)", line 102, in ensure_shibokensupport
    SystemExit: -1
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "(builtin)", line 147, in bootstrap
    UnboundLocalError: local variable 'loader' referenced before assignment
    Fatal Python error: could not initialize part 2
    Python runtime state: initialized
    
    Current thread 0x00007fad29c10000 (most recent call first):
      File "/usr/lib/python3.10/subprocess.py", line 450 in CompletedProcess
      File "/usr/lib/python3.10/subprocess.py", line 424 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "/usr/lib/python3.10/platform.py", line 119 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "/usr/lib/python3/dist-packages/numpy/core/_add_newdocs_scalars.py", line 9 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap>", line 1078 in _handle_fromlist
      File "/usr/lib/python3/dist-packages/numpy/core/__init__.py", line 99 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap>", line 1078 in _handle_fromlist
      File "/usr/lib/python3/dist-packages/numpy/__init__.py", line 150 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap>", line 992 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap>", line 992 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 1176 in create_module
      File "<frozen importlib._bootstrap>", line 571 in module_from_spec
      File "<frozen importlib._bootstrap>", line 674 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py", line 27 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "/home/jon/.local/lib/python3.10/site-packages/PySide2/__init__.py", line 58 in _setupQtDirectories
      File "/home/jon/.local/lib/python3.10/site-packages/PySide2/__init__.py", line 107 in <module>
      File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
      File "<frozen importlib._bootstrap_external>", line 883 in exec_module
      File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
      File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
      File "/home/jon/PySide2/signal.py", line 1 in <module>
    
    Extension modules: numpy.core._multiarray_umath, numpy.core._multiarray_tests, xxsubtype, PySide2.QtCore, apt_pkg (total: 5)
    Aborted (core dumped)
    

    Yep, that's what I get :(

    If I change from PySide2 import QtCore to from PyQt5 import QtCore all is well. So it's a PySide (or shiboken) issue.

    Sat for a while completely befuddled. Eventually totally on a hunch I renamed script file from signal.py to ABCsignal.py. Guess what, sure enough it works fine under PySide2....

    So that means something about PySide2 cannot cope correctly with certain filenames, doubtless which happen to be the same as supplied one. I note that my Python 3.10 comes with a /usr/lib/python3.10/signal.py, which I would guess is the issue. Goodness knows how many other filenames could potentially have similar behaviour.

    Sorry, but this is terrible, especially since PyQt5 has no problem!

    I cannot test with Qt6/PySide6. Would somebody be so kind as to test:

    • This one-line program with PySide2, perhaps under Linux. Do you get the same core dump?
    • Test with PySide6. Does that work, or is it just as bad?

    From this I will know whether/what to report as a PySide bug.
    Thank you.

    SGaistS 1 Reply Last reply
    0
    • JonBJ JonB

      My environment is Ubuntu 22.04, Python 3.10.6, Qt 5.15.3, all supplied with distro. I have added PyQt 5.15.6 and PySide2 5.15.2.1 and shiboken2 5.15.2.1. All is working well in general with Python/Qt/PyQt/PySide.

      Today I created a script file named signal.py with the following content:

      from PySide2 import QtCore
      

      That's it! Just that one line (or anything else which reads in PySide2).

      Then attempting to run python3 signal.py core dumps with following:

      Problem importing shibokensupport:
      cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
      Traceback (most recent call last):
        File "(builtin)", line 93, in ensure_shibokensupport
        File "(builtin)", line 133, in bootstrap
        File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 222, in <module>
          move_into_pyside_package()
        File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 196, in move_into_pyside_package
          import PySide2.support
        File "/home/jon/.local/lib/python3.10/site-packages/PySide2/support/__init__.py", line 40, in <module>
          from shiboken2 import VoidPtr
      ImportError: cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
      sys.path:
        /home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir
        /home/jon/PySide2
        /usr/lib/python310.zip
        /usr/lib/python3.10
        /usr/lib/python3.10/lib-dynload
        /home/jon/.local/lib/python3.10/site-packages
        /usr/local/lib/python3.10/dist-packages
        /usr/lib/python3/dist-packages
      Traceback (most recent call last):
        File "(builtin)", line 93, in ensure_shibokensupport
        File "(builtin)", line 133, in bootstrap
        File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 222, in <module>
          move_into_pyside_package()
        File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/files.dir/shibokensupport/signature/loader.py", line 196, in move_into_pyside_package
          import PySide2.support
        File "/home/jon/.local/lib/python3.10/site-packages/PySide2/support/__init__.py", line 40, in <module>
          from shiboken2 import VoidPtr
      ImportError: cannot import name 'VoidPtr' from partially initialized module 'shiboken2' (most likely due to a circular import) (/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py)
      
      During handling of the above exception, another exception occurred:
      
      Traceback (most recent call last):
        File "(builtin)", line 132, in bootstrap
        File "/usr/lib/python3.10/contextlib.py", line 153, in __exit__
          self.gen.throw(typ, value, traceback)
        File "(builtin)", line 102, in ensure_shibokensupport
      SystemExit: -1
      
      During handling of the above exception, another exception occurred:
      
      Traceback (most recent call last):
        File "(builtin)", line 147, in bootstrap
      UnboundLocalError: local variable 'loader' referenced before assignment
      Fatal Python error: could not initialize part 2
      Python runtime state: initialized
      
      Current thread 0x00007fad29c10000 (most recent call first):
        File "/usr/lib/python3.10/subprocess.py", line 450 in CompletedProcess
        File "/usr/lib/python3.10/subprocess.py", line 424 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "/usr/lib/python3.10/platform.py", line 119 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "/usr/lib/python3/dist-packages/numpy/core/_add_newdocs_scalars.py", line 9 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap>", line 1078 in _handle_fromlist
        File "/usr/lib/python3/dist-packages/numpy/core/__init__.py", line 99 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap>", line 1078 in _handle_fromlist
        File "/usr/lib/python3/dist-packages/numpy/__init__.py", line 150 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap>", line 992 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap>", line 992 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 1176 in create_module
        File "<frozen importlib._bootstrap>", line 571 in module_from_spec
        File "<frozen importlib._bootstrap>", line 674 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "/home/jon/.local/lib/python3.10/site-packages/shiboken2/__init__.py", line 27 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "/home/jon/.local/lib/python3.10/site-packages/PySide2/__init__.py", line 58 in _setupQtDirectories
        File "/home/jon/.local/lib/python3.10/site-packages/PySide2/__init__.py", line 107 in <module>
        File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
        File "<frozen importlib._bootstrap_external>", line 883 in exec_module
        File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
        File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
        File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
        File "/home/jon/PySide2/signal.py", line 1 in <module>
      
      Extension modules: numpy.core._multiarray_umath, numpy.core._multiarray_tests, xxsubtype, PySide2.QtCore, apt_pkg (total: 5)
      Aborted (core dumped)
      

      Yep, that's what I get :(

      If I change from PySide2 import QtCore to from PyQt5 import QtCore all is well. So it's a PySide (or shiboken) issue.

      Sat for a while completely befuddled. Eventually totally on a hunch I renamed script file from signal.py to ABCsignal.py. Guess what, sure enough it works fine under PySide2....

      So that means something about PySide2 cannot cope correctly with certain filenames, doubtless which happen to be the same as supplied one. I note that my Python 3.10 comes with a /usr/lib/python3.10/signal.py, which I would guess is the issue. Goodness knows how many other filenames could potentially have similar behaviour.

      Sorry, but this is terrible, especially since PyQt5 has no problem!

      I cannot test with Qt6/PySide6. Would somebody be so kind as to test:

      • This one-line program with PySide2, perhaps under Linux. Do you get the same core dump?
      • Test with PySide6. Does that work, or is it just as bad?

      From this I will know whether/what to report as a PySide bug.
      Thank you.

      SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      It did work with PySide6 and PyQt6 on macOS.

      I currently don't have PySide2 at hand but will try when I have.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      JonBJ 1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        It did work with PySide6 and PyQt6 on macOS.

        I currently don't have PySide2 at hand but will try when I have.

        JonBJ Offline
        JonBJ Offline
        JonB
        wrote on last edited by
        #3

        @SGaist
        Thank you, please try with PySide2 if you have the time.

        I keep forgetting you are MacOS, for some reason. I am told by Mac users that "everything just works, all the time", so maybe this is hardly surprising ;-)

        SGaistS 1 Reply Last reply
        0
        • JonBJ JonB

          @SGaist
          Thank you, please try with PySide2 if you have the time.

          I keep forgetting you are MacOS, for some reason. I am told by Mac users that "everything just works, all the time", so maybe this is hardly surprising ;-)

          SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          @JonB It's more a question of architecture. PySide2 is, to the best of my knowledge, not available pre-built for Apple's M series of processor.

          As for everything always working, well, that's not absolutely completely true ;-)

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0

          • Login

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved