Le Fri, 18 Oct 2013 20:16:03 +1000, Nick Coghlan <ncogh...@gmail.com> a écrit : > > > > Also, shouldn't it be excluded from the stable/limited API? > > Since it didn't expose any struct layouts, I just followed the > precedent set by the other PySet_* APIs on that front. Moving it > would be fine, too, though, since "embedding the interpreter" and > "using the limited API" don't exactly mix :)
As far as I understand, when we *add* something to the stable ABI, it should ideally be versioned. There are a couple examples of this in the include files, e.g.: #if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000 /* New in 3.3 */ PyAPI_FUNC(int) PyState_AddModule(PyObject*, struct PyModuleDef*); PyAPI_FUNC(int) PyState_RemoveModule(struct PyModuleDef*); #endif (this is so people wanting to conform to e.g. a 3.2-compatible ABI don't start depending on 3.3-and-upwards stuff by mistake) However, it seems we haven't been following that rule, for the most part. Regards Antoine. _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com