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.

classification
Title: Add _testinternalcapi module
Type: Stage: resolved
Components: Tests Versions: Python 3.8
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: vstinner
Priority: normal Keywords: patch

Created on 2019-04-15 14:51 by vstinner, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
exports.txt vstinner, 2019-04-17 10:20
Pull Requests
URL Status Linked Edit
PR 12841 merged vstinner, 2019-04-15 14:59
PR 12853 merged vstinner, 2019-04-16 12:00
PR 12922 merged vstinner, 2019-04-23 08:50
Messages (5)
msg340282 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2019-04-15 14:51
Python headers are being reorganized to clarify what's public, specific to CPython or "internal". See issues bpo-35134 (Add a new Include/cpython/ subdirectory) and bpo-35081 (Move internal headers to Include/internal/).

Problem: the _testcapi module designed to only test the *public* API. Functions tested by _testcapi cannot be made internal.

I propose to add a new _testinternalcapi module reserved to test internal APIs.

Attached PR implements this idea: it makes _Py_GetConfigsAsDict() private and moves _testcapi.get_configs() to _testinternalcapi.get_configs().
msg340387 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2019-04-17 10:20
I listed DLL exports in the Visual Studio Command Prompt:

dumpbin /exports \vstinner\python\master\PCbuild\amd64\python38_d.dll > \vstinner\python\exports.txt

To make sure that I don't mess with commands, I started with a fresh Git checkout using:

git clean -fdx
PCbuild\build.bat -d -p x64 -e

Good news: using PR 12853, exports.txt is exactly the same file (I expected memory address to change, but nope, they are the same). My change doesn't introduce any new symbol. See attached exports.txt file. By the way, there is no symbol which contains "PyInit" nor "Py_pickle_init" in DLL exports.
msg340448 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2019-04-17 21:02
New changeset 5c75f37d473140f0e0b7d9bf3a8c08343447ded1 by Victor Stinner in branch 'master':
bpo-36635: Change pyport.h for Py_BUILD_CORE_MODULE define (GH-12853)
https://github.com/python/cpython/commit/5c75f37d473140f0e0b7d9bf3a8c08343447ded1
msg340477 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2019-04-18 09:37
New changeset 23bace26ec265557697cf3b578b361c178070cd5 by Victor Stinner in branch 'master':
bpo-36635: Add _testinternalcapi module (GH-12841)
https://github.com/python/cpython/commit/23bace26ec265557697cf3b578b361c178070cd5
msg340712 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2019-04-23 10:26
New changeset 574913479f26b5ff48827861bce68281be01d16e by Victor Stinner in branch 'master':
bpo-36635, bpo-36696: Fix setup.py on AIX (GH-12922)
https://github.com/python/cpython/commit/574913479f26b5ff48827861bce68281be01d16e
History
Date User Action Args
2022-04-11 14:59:14adminsetgithub: 80816
2019-04-23 15:44:29vstinnersetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2019-04-23 10:26:38vstinnersetmessages: + msg340712
2019-04-23 08:50:47vstinnersetpull_requests: + pull_request12850
2019-04-18 09:37:35vstinnersetmessages: + msg340477
2019-04-17 21:02:49vstinnersetmessages: + msg340448
2019-04-17 10:21:03vstinnersetfiles: + exports.txt

messages: + msg340387
2019-04-16 12:00:54vstinnersetpull_requests: + pull_request12779
2019-04-15 14:59:39vstinnersetkeywords: + patch
stage: patch review
pull_requests: + pull_request12766
2019-04-15 14:51:20vstinnercreate