HEADS UP: SIP v6.7.0 Snapshots

Phil Thompson phil at riverbankcomputing.com
Sat Oct 8 08:59:07 BST 2022


On 06/10/2022 21:31, Ben Greiner wrote:
> Hi,
> 
> Am 08.09.22 um 16:40 schrieb Phil Thompson:
>> The current SIP v6.7.0 snapshot is the next stage of migrating SIP to 
>> a pure Python implementation. As with the replacement of the old 
>> parser in v6.6.0...
>> 
>> - the new code is slower (for now)
>> - error reporting is improved
>> - the generated code should be identical to that generated by earlier 
>> versions
>> - it builds PyQt correctly but PyQt does not use all the 
>> functionality.
>> 
>> Other projects that use SIP (eg. wxPython, QGIS) should test and 
>> report problems.
> 
> I didn't have the time to test the pre-release snapshots, but I am now
> updating SIP from 6.6.2 to 6.7.1 for openSUSE Tumbleweed. Acceptance
> into the distribtution is not possible right now, because it fails to
> build wxPython:
> 
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp: In
> member function ‘bool
> sip_ScrolledWindowBase::sipProtectVirt_ProcessEvent(bool, wxEvent&)’:
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp:837:62:
> error: cannot call member function ‘virtual bool
> wxEvtHandler::ProcessEvent(wxEvent&)’ without object
> [ 1420s]   837 |     return (sipSelfWasArg ?
> ::wxScrolledCanvas::ProcessEvent(event) : ProcessEvent(event));
> [ 1420s]       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp: In
> member function ‘void
> sip_ScrolledWindowBase::sipProtectVirt_DoEnable(bool, bool)’:
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp:842:51:
> error: cannot call member function ‘virtual void
> wxWindow::DoEnable(bool)’ without object
> [ 1420s]   842 |     (sipSelfWasArg ?
> ::wxScrolledCanvas::DoEnable(enable) : DoEnable(enable));
> [ 1420s]       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp: In
> member function ‘void
> sip_ScrolledWindowBase::sipProtectVirt_DoGetPosition(bool, int*, int*)
> const’:
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp:847:56:
> error: cannot call member function ‘virtual void
> wxWindow::DoGetPosition(int*, int*) const’ without object
> [ 1420s]   847 |     (sipSelfWasArg ?
> ::wxScrolledCanvas::DoGetPosition(x,y) : DoGetPosition(x,y));
> [ 1420s]       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp: In
> member function ‘void
> sip_ScrolledWindowBase::sipProtectVirt_DoGetSize(bool, int*, int*)
> const’:
> [ 1420s] ../../../../sip/cpp/sip_core_ScrolledWindowBase.cpp:852:52:
> error: cannot call member function ‘virtual void
> wxWindow::DoGetSize(int*, int*) const’ without object
> [ 1420s]   852 |     (sipSelfWasArg ?
> ::wxScrolledCanvas::DoGetSize(width,height) :
> DoGetSize(width,height));
> [ 1420s]       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
> ...
> and so on.
> 
> The full failing build log can be found here:
> https://paste.opensuse.org/63871699
> 
> The diff for the failing generated cpp code is here:
> https://paste.opensuse.org/71620253
> 
> The etg-generated .sip code is here:
> https://cloud.bnavigator.de/index.php/s/EL3ZmGqHgwWdiJ5, differing
> slightly from those shipped with the wxPython 4.2.0 sdist on PyPI.
> 
> Regards, Ben
> 
> P.S.: QGIS successfully builds with the new SIP.

Should be fixed in the current repo/next snapshot.

Please continue to test and I'll release v6.7.2 when wxPython builds.

Thanks,
Phil


More information about the PyQt mailing list