Skip to content

BUG: Cython 3 pyd file doesn't allow access to multiterobject fields #24649

@seberg

Description

@seberg

Originally posted by @zoj613 in #16986 (comment)

The cython 3 .pyd file is a bit more restrictive, with the aim of being more compatible with the opaque structs probably: It removed some struct fields, e.g. from the numpy.broadcast cdef class.

Some of these fields, however, are required and we don't actually have a macro version that users can use instead (unlike the .pyd file suggests).
We could just add those fields for now. Alternatively, we could add the macro's and use the properties in the .pyd file to avoid explicit access.
(This would not change things for now, but will make it a bit easier to make the struct truly opaque in some future version.)


The missing fields probably mean that the legacy multi-iterator is effectively not usable from Cython in Cython 3.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions