cpython
cpython copied to clipboard
gh-140550: Update xxlimited with 3.15 limited API & PEP 697
- Copy the existing
xxlimitedtoxxlimited_3_13: this module serves as a rudimentary check that we don't break older Limited API. This is similar toxxlimited_35. (Nowadays we know that it's good to have a separator between the major/minor versions, but renaming toxxlimited_3_5isn't worth the churn.) - Reorganize
test_xxlimitedto make similar copies easier in the future - Switch
xxlimitedto Limited API 3.15,PyModExport(PEP-793), standalone instance struct with extended basicsize (PEP-697) - treat PyObject as opaque, as proposed in PEP-803 and PEP-809, using a private knob (
_Py_OPAQUE_PYOBJECT) for now to ensure we don't rely onPyObjectlayout details accidentally. (I'll replace/remove the private API in 3.15 beta at latest.)
- Issue: gh-140550
I'll mark this draft -- this PR makes some shortcomings quite visible, and I guess it's better to address them before suggesting the new API :)