This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients eric.snow, rhettinger, serhiy.storchaka
Date 2016-12-27.13:59:17
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1482847157.79.0.799208161515.issue29084@psf.upfronthosting.co.za>
In-reply-to
Content
C API of the C implementation of OrderedDict was added in 3.5 together with the C implementation of OrderedDict. But it was never announced nor documented. Some macros contain bugs. PyODict_Check() and PyODict_CheckExact() are declared in the limited API, but don't work since use PyODict_Type not available in the limited API. PyODict_SIZE() is expanded to syntactically incorrect code and it's name is not consistent with similar macros: PyTuple_GET_SIZE, PyList_GET_SIZE and just added PyDict_GET_SIZE. Many names are just transparent wrappers around PyDict API (and they can't be different).

Since PyODict C API is not documented, partially not working and partially redundant, and the C implementation of OrderedDict is optional (other Python implementations can provide just Python implementation of OrderedDict), I think this C API should be made private if not removed.
History
Date User Action Args
2016-12-27 13:59:17serhiy.storchakasetrecipients: + serhiy.storchaka, rhettinger, eric.snow
2016-12-27 13:59:17serhiy.storchakasetmessageid: <1482847157.79.0.799208161515.issue29084@psf.upfronthosting.co.za>
2016-12-27 13:59:17serhiy.storchakalinkissue29084 messages
2016-12-27 13:59:17serhiy.storchakacreate