[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: change in the extention importation with 3.11




On 06/12/2022 16:13, PICCA Frederic-Emmanuel wrote:
There is a fix from the upstream around enum.


https://github.com/boostorg/python/commit/a218babc8daee904a83f550fb66e5cb3f1cb3013


  Fix enum_type_object type on Python 3.11

The enum_type_object type inherits from PyLong_Type which is not tracked
by the GC. Instances doesn't have to be tracked by the GC: remove the
Py_TPFLAGS_HAVE_GC flag.

The Python C API documentation says:

     "To create a container type, the tp_flags field of the type object
     must include the Py_TPFLAGS_HAVE_GC and provide an implementation of
     the tp_traverse handler."

https://docs.python.org/dev/c-api/gcsupport.html

The new exception was introduced in Python 3.11 by:
python/cpython#88429


an opinion ?

I'd favour that being added to boost1.74. It would fix my ecflow bug  (#1024911).

A minor (?) fix also needed for Swig wrapping too (#1024555)


--
Alastair McKinstry,
GPG: 82383CE9165B347C787081A2CBE6BB4E5D9AD3A5
ph: +353 87 6847928 e: alastair@sceal.ie, im: @sceal.ie:mckinstry


Reply to: