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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.