Issue with sip-6.7.8
Phil Thompson
phil at riverbankcomputing.com
Wed Apr 12 18:52:24 BST 2023
On 11/04/2023 19:01, Jeremy Sanders wrote:
> Hi -
>
> I'm getting a CI failure for my project with sip-6.7.8, as installed
> from the wheel on Python 3.8, on both linux and windows.
>
> The definition in the sip file
> (https://github.com/veusz/veusz/blob/master/src/threed/threed.sip)
> looks like:
>
> class LineSegments : public Object
> {
> %TypeHeaderCode
> #include <objects.h>
> %End
> public:
> LineSegments(const ValVector& x1, const ValVector& y1, const
> ValVector& z1,
> const ValVector& x2, const ValVector& y2, const
> ValVector& z2,
> const LineProp* prop /Transfer/);
> LineSegments(const ValVector& pts1, const ValVector& pts2,
> const LineProp* prop /Transfer/);
> };
>
> And the error when running looks like:
>
> File "/home/runner/work/veusz/veusz/veusz/widgets/graph3d.py", line
> 169, in addBorder
> ls = threed.LineSegments(
> TypeError: arguments did not match any overloaded call:
> LineSegments(x1: ValVector, y1: ValVector, z1: ValVector, x2:
> ValVector, y2: ValVector, z2: ValVector, prop: LineProp): argument 3
> has unexpected type 'LineProp'
> LineSegments(pts1: ValVector, pts2: ValVector, prop: LineProp):
> argument 3 has unexpected type 'LineProp'
> LineSegments(a0: LineSegments): argument 1 has unexpected type
> 'ValVector'
>
> The error message doesn't make much sense, as the the second overload
> should work fine (pts1 and pts are ValVector and prop is a LineProp).
>
> It previously built fine with sip-6.7.7.
>
> Could this be a bug?
Yes. Should be fixed in the next snapshot. It only affects constructors
with an argument annotated with /Transfer/.
Thanks,
Phil
More information about the PyQt
mailing list