[Python-Dev] cpython: Issue #16129: Add Py_SetStandardStreamEncoding
(original) (raw)
Antoine Pitrou solipsis at pitrou.net
Fri Oct 18 12:28:53 CEST 2013
- Previous message: [Python-Dev] cpython: Issue #16129: Add `Py_SetStandardStreamEncoding`
- Next message: [Python-Dev] cpython: Try doing a raw test of os.fork()/os.kill().
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Le Fri, 18 Oct 2013 20:16:03 +1000, Nick Coghlan <ncoghlan at 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.
- Previous message: [Python-Dev] cpython: Issue #16129: Add `Py_SetStandardStreamEncoding`
- Next message: [Python-Dev] cpython: Try doing a raw test of os.fork()/os.kill().
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]