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 vstinner
Recipients Jim Fasarakis-Hilliard, amaury.forgeotdarc, corona10, eric.snow, erlendaasland, isoschiz, koubaa, kylotan, lukasz.langa, miss-islington, pconnell, phsilva, python-dev, santoso.wijaya, shihai1991, tlesher, vstinner, ysj.ray
Date 2020-10-06.11:28:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1601983696.73.0.947568080536.issue1635741@roundup.psfhosted.org>
In-reply-to
Content
Statistics on C extension modules using the old API (PyModule_Create) / new API (PyModuleDef_Init):

* 3.5: 84 / 24 (22%), total: 108
* 3.6: 87 / 25 (22%), total: 112 (+4)
* 3.7 : 89 / 26 (23%), total: 115 (+3)
* 3.8: 91 / 27 (23%), total: 118 (+3)
* 3.9: 68 / 52 (43%), total: 120 (+2)
* master: 42 / 76 (64%), total: 118 (-2)

Before Python 3.8, it doesn't evolve much. Between 3.8 and 3.9, 25 extensions have been ported to the new API. Between 3.9 and master, 24 more extensions have been ported. Nice work so far!

I didn't check if these extensions use a module state or if they still use some kind of global shared state such as static types. I just used a dummy grep:

grep -E '\<PyModule_Create\>' $(find Modules/ -name "*.c")|wc -l

grep -E '\<PyModuleDef_Init\>' $(find Modules/ -name "*.c")|wc -l

Anyway, it's going in the right direction!
History
Date User Action Args
2020-10-06 11:28:16vstinnersetrecipients: + vstinner, amaury.forgeotdarc, kylotan, tlesher, phsilva, ysj.ray, santoso.wijaya, lukasz.langa, python-dev, eric.snow, pconnell, isoschiz, Jim Fasarakis-Hilliard, corona10, miss-islington, shihai1991, erlendaasland, koubaa
2020-10-06 11:28:16vstinnersetmessageid: <1601983696.73.0.947568080536.issue1635741@roundup.psfhosted.org>
2020-10-06 11:28:16vstinnerlinkissue1635741 messages
2020-10-06 11:28:16vstinnercreate