classification
Title: Install Include/internal/ header files
Type: Stage: resolved
Components: Interpreter Core Versions: Python 3.8, Python 3.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: eric.snow, nascheme, ncoghlan, vstinner
Priority: normal Keywords: patch

Created on 2018-11-22 17:33 by vstinner, last changed 2018-12-04 20:30 by vstinner. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 10665 merged vstinner, 2018-11-22 17:43
PR 10897 merged vstinner, 2018-12-04 16:12
Messages (7)
msg330271 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-11-22 17:33
For some very specific use cases (ex: debuggers), it can be interesting to access the internal API of CPython. I propose to install the internal API: Include/internal/*.h header files.

Attached PR implements this idea.
msg330274 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-11-22 17:48
Example of debuggers: vmprof or faulthandler (now part of the stdlib).
msg330275 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-11-22 17:56
TODO: Update the Windows installer:
https://github.com/python/cpython/pull/10624#issuecomment-441090519
msg330332 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-11-23 15:30
New changeset f653fd4d950ac092719b6152e38d77c62b443125 by Victor Stinner in branch 'master':
bpo-35296: make install now installs the internal API (GH-10665)
https://github.com/python/cpython/commit/f653fd4d950ac092719b6152e38d77c62b443125
msg330333 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-11-23 15:41
I decided to merge my PR because I started to *remove* functions from the public C API to move them to the CPython internal API: _PyObject_GC_TRACK() and _PyObject_GC_UNTRACK() are two examples from bpo-35081. So some people might want even more to use the internal API. The main issue with this API is the requirement to use the same compiler with the same compilation options, especially to access atomic variables.
msg331060 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-12-04 16:15
I reopen the issue since I'm now also interested to make the change in Python 3.7. I wrote PR 10897.

See discussion on python-dev:
https://mail.python.org/pipermail/python-dev/2018-December/155921.html
msg331076 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-12-04 20:28
New changeset b02774f42108aaf18eb19865472c8d5cd95b5f11 by Victor Stinner in branch '3.7':
bpo-35296: make install now installs the internal API (GH-10665) (GH-10897)
https://github.com/python/cpython/commit/b02774f42108aaf18eb19865472c8d5cd95b5f11
History
Date User Action Args
2018-12-04 20:30:54vstinnersetstatus: open -> closed
resolution: fixed
2018-12-04 20:28:31vstinnersetmessages: + msg331076
2018-12-04 16:15:13vstinnersetstatus: closed -> open
resolution: fixed -> (no value)
messages: + msg331060

versions: + Python 3.7
2018-12-04 16:12:51vstinnersetpull_requests: + pull_request10137
2018-11-23 15:41:27vstinnersetstatus: open -> closed
resolution: fixed
messages: + msg330333

stage: patch review -> resolved
2018-11-23 15:30:16vstinnersetmessages: + msg330332
2018-11-22 17:56:08vstinnersetmessages: + msg330275
2018-11-22 17:48:25vstinnersetmessages: + msg330274
2018-11-22 17:43:05vstinnersetkeywords: + patch
stage: patch review
pull_requests: + pull_request9918
2018-11-22 17:33:21vstinnercreate