classification
Title: Expose the subinterpreters C-API in the stdlib.
Type: enhancement Stage: patch review
Components: Library (Lib) Versions: Python 3.8
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: eric.snow Nosy List: eric.snow, ncoghlan, pmpp, steve.dower
Priority: normal Keywords:

Created on 2017-05-23 05:24 by eric.snow, last changed 2018-02-19 21:20 by pmpp.

Pull Requests
URL Status Linked Edit
PR 1748 open eric.snow, 2017-05-23 05:24
PR 1802 closed eric.snow, 2017-05-24 23:29
PR 1803 closed eric.snow, 2017-05-24 23:31
Messages (4)
msg294225 - (view) Author: Eric Snow (eric.snow) * (Python committer) Date: 2017-05-23 05:24
For a variety of reasons, I'd like to be able to manage subinterpreters from Python code.  An initial effort would add a _interpreters module to the stdlib that exposes the basic functionality of the corresponding C-API.
msg294501 - (view) Author: Eric Snow (eric.snow) * (Python committer) Date: 2017-05-25 17:15
proposed: https://mail.python.org/pipermail/python-ideas/2017-May/045765.html
msg294529 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2017-05-26 03:15
A naming suggestion: let's leave the `interpreters` & `_interpreters` names free for a possible future PEP to make this a public API with a fallback multiprocessing backed implementation for implementations that don't have native subinterpreter support.

Then for this "testing and experimentation only" API, we'd go with "_subinterpreters" to match the name typically used to refer to the CPython feature.
msg310315 - (view) Author: Eric Snow (eric.snow) * (Python committer) Date: 2018-01-20 01:59
FYI, I'm working on a low-level patch for use in the test suite for 3.7.  See issue #32604.
History
Date User Action Args
2018-02-19 21:20:48pmppsetnosy: + pmpp
2018-01-20 01:59:30eric.snowsetmessages: + msg310315
versions: + Python 3.8, - Python 3.7
2017-05-26 03:15:29ncoghlansetnosy: + ncoghlan
messages: + msg294529
2017-05-25 17:15:24eric.snowsetmessages: + msg294501
2017-05-24 23:31:11eric.snowsetpull_requests: + pull_request1886
2017-05-24 23:29:56eric.snowsetpull_requests: + pull_request1885
2017-05-23 05:24:54eric.snowsetpull_requests: + pull_request1839
2017-05-23 05:24:25eric.snowcreate