[New-bugs-announce] [issue40943] Drop support for PyArg_ParseTuple() format when PY_SSIZE_T_CLEAN is not defined

STINNER Victor report at bugs.python.org
Wed Jun 10 12:09:12 EDT 2020


New submission from STINNER Victor <vstinner at python.org>:

Follow-up of bpo-36381: In Python 3.8, PyArg_ParseTuple() and Py_BuildValue() formats using "int" when PY_SSIZE_T_CLEAN is not defined, but Py_ssize_t when PY_SSIZE_T_CLEAN is defined, were deprecated by:

commit d3c72a223a5f771f964fc34557c55eb5bfa0f5a0
Author: Inada Naoki <songofacandy at gmail.com>
Date:   Sat Mar 23 21:04:40 2019 +0900

    bpo-36381: warn when no PY_SSIZE_T_CLEAN defined (GH-12473)
    
    We will remove int support from 3.10 or 4.0.

I propose to drop support for these formats in Python 3.10. It is a backward incompatible change on purpose, to ensure that all C extensions are compatible with objects larger than 2 GB, and that all C extensions behave the same.

I'm not sure of the effects of this issue on bpo-27499 "PY_SSIZE_T_CLEAN conflicts with Py_LIMITED_API".

----------
components: C API
messages: 371216
nosy: inada.naoki, serhiy.storchaka, vstinner
priority: normal
severity: normal
status: open
title: Drop support for PyArg_ParseTuple() format when PY_SSIZE_T_CLEAN is not defined
versions: Python 3.10

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue40943>
_______________________________________


More information about the New-bugs-announce mailing list