[Python-Dev] Using PEP384 Stable ABI for the lzma extension module

Nick Coghlan ncoghlan at gmail.com
Tue Oct 4 21:37:42 CEST 2011


On Tue, Oct 4, 2011 at 3:12 PM, Antoine Pitrou <solipsis at pitrou.net> wrote:
> Uh, no, it depends what you're doing. There's no reason not to allow
> people to resize a bytes object which they've just allocated and is
> still private to their code. That's the whole reason why
> _PyBytes_Resize() exists, and the use case is not exotic.
>
> Telling people to "first create a bytearray and then create a bytes
> object from that when you're finished" would be a shame.

If developers want to use private CPython functions, then they can't
use the stable API - the whole point of having private APIs is that we
don't even promise *source* compatibility for those, let alone binary
compatibility. If they want the stability guarantee, then they have to
eschew hacks that rely on implementation details (like the ability to
resize "immutable" objects). That seems pretty reasonable to me.

Cheers,
Nick.

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia


More information about the Python-Dev mailing list