Re: Private sip modules conflict with public sip module
Phil Thompson <[email protected]>
| Newsgroups | gmane.comp.python.pyqt-pykde |
|---|---|
| Message-ID | <[email protected]> |
On 18/08/2019 15:45, Scott Talbert wrote: > On Sun, 18 Aug 2019, Phil Thompson wrote: > >>> See the below example: >>> >>> $ python3 >>> Python 3.7.4 (default, Jul 9 2019, 16:32:37) >>> [GCC 9.1.1 20190503 (Red Hat 9.1.1-1)] on linux >>> Type "help", "copyright", "credits" or "license" for more >>> information. >>>>>> import PyQt5.sip >>>>>> import sip >>>>>> sip >>> <module 'PyQt5.sip' from >>> '/usr/lib64/python3.7/site-packages/PyQt5/sip.so'> >>>>>> >>> >>> Basically, if you import a private sip module and then import the >>> public one, it doesn't work. It seems to be due to this: >>> >>> https://www.riverbankcomputing.com/hg/sip/file/4.19-maint/siplib/siplib.c#l1293 >> >> Why would you want to do that? > > I don't particularly *want* to do that, but it happens in the wild > with applications. For example: > > fsleyes imports matplotlib > matplotlib imports PyQt as part of its backend detection > fsleyes imports wxpython > wxpython imports sip -> fail wxpython uses a private copy of the sip module so I don't see what is importing a top-level sip module in that situation. Phil _______________________________________________ PyQt mailing list [email protected] https://www.riverbankcomputing.com/mailman/listinfo/pyqt