Re: Private sip modules conflict with public sip module

Scott Talbert <[email protected]>
Newsgroups gmane.comp.python.pyqt-pykde
Message-ID <[email protected]>

On August 18, 2019 11:03:21 AM EDT, Phil Thompson <[email protected]> wrote:
>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.

I guess I left out an important detail.  I patch wxPython to use the top-level sip module.

Scott
_______________________________________________
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.