mirror of https://github.com/python/cpython
gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791)
See https://discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26.
This commit is contained in:
parent
af3c1d817d
commit
03e3e31723
|
@ -54,7 +54,7 @@ struct atexit_state {
|
||||||
int callback_len;
|
int callback_len;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Export for '_xxinterpchannels' shared extension
|
// Export for '_interpchannels' shared extension
|
||||||
PyAPI_FUNC(int) _Py_AtExit(
|
PyAPI_FUNC(int) _Py_AtExit(
|
||||||
PyInterpreterState *interp,
|
PyInterpreterState *interp,
|
||||||
atexit_datacallbackfunc func,
|
atexit_datacallbackfunc func,
|
||||||
|
|
|
@ -9,7 +9,7 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
// Exported for the _xxinterpchannels module.
|
// Exported for the _interpchannels module.
|
||||||
PyAPI_FUNC(int) _PyBuffer_ReleaseInInterpreter(
|
PyAPI_FUNC(int) _PyBuffer_ReleaseInInterpreter(
|
||||||
PyInterpreterState *interp, Py_buffer *view);
|
PyInterpreterState *interp, Py_buffer *view);
|
||||||
PyAPI_FUNC(int) _PyBuffer_ReleaseInInterpreterAndRawFree(
|
PyAPI_FUNC(int) _PyBuffer_ReleaseInInterpreterAndRawFree(
|
||||||
|
|
|
@ -77,10 +77,10 @@ _Py_IsMainInterpreterFinalizing(PyInterpreterState *interp)
|
||||||
interp == &_PyRuntime._main_interpreter);
|
interp == &_PyRuntime._main_interpreter);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Export for _xxsubinterpreters module.
|
// Export for _interpreters module.
|
||||||
PyAPI_FUNC(PyObject *) _PyInterpreterState_GetIDObject(PyInterpreterState *);
|
PyAPI_FUNC(PyObject *) _PyInterpreterState_GetIDObject(PyInterpreterState *);
|
||||||
|
|
||||||
// Export for _xxsubinterpreters module.
|
// Export for _interpreters module.
|
||||||
PyAPI_FUNC(int) _PyInterpreterState_SetRunningMain(PyInterpreterState *);
|
PyAPI_FUNC(int) _PyInterpreterState_SetRunningMain(PyInterpreterState *);
|
||||||
PyAPI_FUNC(void) _PyInterpreterState_SetNotRunningMain(PyInterpreterState *);
|
PyAPI_FUNC(void) _PyInterpreterState_SetNotRunningMain(PyInterpreterState *);
|
||||||
PyAPI_FUNC(int) _PyInterpreterState_IsRunningMain(PyInterpreterState *);
|
PyAPI_FUNC(int) _PyInterpreterState_IsRunningMain(PyInterpreterState *);
|
||||||
|
|
|
@ -99,7 +99,7 @@ extern void _PyThread_AfterFork(struct _pythread_runtime_state *state);
|
||||||
// unset: -1 seconds, in nanoseconds
|
// unset: -1 seconds, in nanoseconds
|
||||||
#define PyThread_UNSET_TIMEOUT ((PyTime_t)(-1 * 1000 * 1000 * 1000))
|
#define PyThread_UNSET_TIMEOUT ((PyTime_t)(-1 * 1000 * 1000 * 1000))
|
||||||
|
|
||||||
// Exported for the _xxinterpchannels module.
|
// Exported for the _interpchannels module.
|
||||||
PyAPI_FUNC(int) PyThread_ParseTimeoutArg(
|
PyAPI_FUNC(int) PyThread_ParseTimeoutArg(
|
||||||
PyObject *arg,
|
PyObject *arg,
|
||||||
int blocking,
|
int blocking,
|
||||||
|
@ -111,7 +111,7 @@ PyAPI_FUNC(int) PyThread_ParseTimeoutArg(
|
||||||
* are returned, depending on whether the lock can be acquired within the
|
* are returned, depending on whether the lock can be acquired within the
|
||||||
* timeout.
|
* timeout.
|
||||||
*/
|
*/
|
||||||
// Exported for the _xxinterpchannels module.
|
// Exported for the _interpchannels module.
|
||||||
PyAPI_FUNC(PyLockStatus) PyThread_acquire_lock_timed_with_retries(
|
PyAPI_FUNC(PyLockStatus) PyThread_acquire_lock_timed_with_retries(
|
||||||
PyThread_type_lock,
|
PyThread_type_lock,
|
||||||
PY_TIMEOUT_T microseconds);
|
PY_TIMEOUT_T microseconds);
|
||||||
|
|
|
@ -114,7 +114,7 @@ def multi_interp_extensions_check(enabled=True):
|
||||||
This only applies to modules that haven't been imported yet.
|
This only applies to modules that haven't been imported yet.
|
||||||
It overrides the PyInterpreterConfig.check_multi_interp_extensions
|
It overrides the PyInterpreterConfig.check_multi_interp_extensions
|
||||||
setting (see support.run_in_subinterp_with_config() and
|
setting (see support.run_in_subinterp_with_config() and
|
||||||
_xxsubinterpreters.create()).
|
_interpreters.create()).
|
||||||
|
|
||||||
Also see importlib.utils.allowing_all_extensions().
|
Also see importlib.utils.allowing_all_extensions().
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
import threading
|
import threading
|
||||||
import weakref
|
import weakref
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
|
|
||||||
# aliases:
|
# aliases:
|
||||||
from _xxsubinterpreters import (
|
from _interpreters import (
|
||||||
InterpreterError, InterpreterNotFoundError, NotShareableError,
|
InterpreterError, InterpreterNotFoundError, NotShareableError,
|
||||||
is_shareable,
|
is_shareable,
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
"""Cross-interpreter Channels High Level Module."""
|
"""Cross-interpreter Channels High Level Module."""
|
||||||
|
|
||||||
import time
|
import time
|
||||||
import _xxinterpchannels as _channels
|
import _interpchannels as _channels
|
||||||
|
|
||||||
# aliases:
|
# aliases:
|
||||||
from _xxinterpchannels import (
|
from _interpchannels import (
|
||||||
ChannelError, ChannelNotFoundError, ChannelClosedError,
|
ChannelError, ChannelNotFoundError, ChannelClosedError,
|
||||||
ChannelEmptyError, ChannelNotEmptyError,
|
ChannelEmptyError, ChannelNotEmptyError,
|
||||||
)
|
)
|
||||||
|
|
|
@ -4,10 +4,10 @@ import pickle
|
||||||
import queue
|
import queue
|
||||||
import time
|
import time
|
||||||
import weakref
|
import weakref
|
||||||
import _xxinterpqueues as _queues
|
import _interpqueues as _queues
|
||||||
|
|
||||||
# aliases:
|
# aliases:
|
||||||
from _xxinterpqueues import (
|
from _interpqueues import (
|
||||||
QueueError, QueueNotFoundError,
|
QueueError, QueueNotFoundError,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,9 +13,9 @@ from test.support import os_helper
|
||||||
from test.support import script_helper
|
from test.support import script_helper
|
||||||
|
|
||||||
|
|
||||||
_interpreters = import_helper.import_module('_xxsubinterpreters')
|
_interpreters = import_helper.import_module('_interpreters')
|
||||||
_testinternalcapi = import_helper.import_module('_testinternalcapi')
|
_testinternalcapi = import_helper.import_module('_testinternalcapi')
|
||||||
from _xxsubinterpreters import InterpreterNotFoundError
|
from _interpreters import InterpreterNotFoundError
|
||||||
|
|
||||||
|
|
||||||
##################################
|
##################################
|
||||||
|
@ -231,7 +231,7 @@ class ModuleTests(TestBase):
|
||||||
def test_import_in_interpreter(self):
|
def test_import_in_interpreter(self):
|
||||||
_run_output(
|
_run_output(
|
||||||
_interpreters.create(),
|
_interpreters.create(),
|
||||||
'import _xxsubinterpreters as _interpreters',
|
'import _interpreters',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -273,7 +273,7 @@ class GetCurrentTests(TestBase):
|
||||||
main, *_ = _interpreters.get_main()
|
main, *_ = _interpreters.get_main()
|
||||||
interp = _interpreters.create()
|
interp = _interpreters.create()
|
||||||
out = _run_output(interp, dedent("""
|
out = _run_output(interp, dedent("""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
cur, *_ = _interpreters.get_current()
|
cur, *_ = _interpreters.get_current()
|
||||||
print(cur)
|
print(cur)
|
||||||
assert isinstance(cur, int)
|
assert isinstance(cur, int)
|
||||||
|
@ -296,7 +296,7 @@ class GetMainTests(TestBase):
|
||||||
[expected] = [id for id, *_ in _interpreters.list_all()]
|
[expected] = [id for id, *_ in _interpreters.list_all()]
|
||||||
interp = _interpreters.create()
|
interp = _interpreters.create()
|
||||||
out = _run_output(interp, dedent("""
|
out = _run_output(interp, dedent("""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
main, *_ = _interpreters.get_main()
|
main, *_ = _interpreters.get_main()
|
||||||
print(main)
|
print(main)
|
||||||
assert isinstance(main, int)
|
assert isinstance(main, int)
|
||||||
|
@ -323,7 +323,7 @@ class IsRunningTests(TestBase):
|
||||||
def test_from_subinterpreter(self):
|
def test_from_subinterpreter(self):
|
||||||
interp = _interpreters.create()
|
interp = _interpreters.create()
|
||||||
out = _run_output(interp, dedent(f"""
|
out = _run_output(interp, dedent(f"""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
if _interpreters.is_running({interp}):
|
if _interpreters.is_running({interp}):
|
||||||
print(True)
|
print(True)
|
||||||
else:
|
else:
|
||||||
|
@ -385,7 +385,7 @@ class CreateTests(TestBase):
|
||||||
main, = [id for id, *_ in _interpreters.list_all()]
|
main, = [id for id, *_ in _interpreters.list_all()]
|
||||||
id1 = _interpreters.create()
|
id1 = _interpreters.create()
|
||||||
out = _run_output(id1, dedent("""
|
out = _run_output(id1, dedent("""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
id = _interpreters.create()
|
id = _interpreters.create()
|
||||||
print(id)
|
print(id)
|
||||||
assert isinstance(id, int)
|
assert isinstance(id, int)
|
||||||
|
@ -402,7 +402,7 @@ class CreateTests(TestBase):
|
||||||
def f():
|
def f():
|
||||||
nonlocal id2
|
nonlocal id2
|
||||||
out = _run_output(id1, dedent("""
|
out = _run_output(id1, dedent("""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
id = _interpreters.create()
|
id = _interpreters.create()
|
||||||
print(id)
|
print(id)
|
||||||
"""))
|
"""))
|
||||||
|
@ -505,7 +505,7 @@ class DestroyTests(TestBase):
|
||||||
main, = [id for id, *_ in _interpreters.list_all()]
|
main, = [id for id, *_ in _interpreters.list_all()]
|
||||||
id = _interpreters.create()
|
id = _interpreters.create()
|
||||||
script = dedent(f"""
|
script = dedent(f"""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
try:
|
try:
|
||||||
_interpreters.destroy({id})
|
_interpreters.destroy({id})
|
||||||
except _interpreters.InterpreterError:
|
except _interpreters.InterpreterError:
|
||||||
|
@ -521,7 +521,7 @@ class DestroyTests(TestBase):
|
||||||
id1 = _interpreters.create()
|
id1 = _interpreters.create()
|
||||||
id2 = _interpreters.create()
|
id2 = _interpreters.create()
|
||||||
script = dedent(f"""
|
script = dedent(f"""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
_interpreters.destroy({id2})
|
_interpreters.destroy({id2})
|
||||||
""")
|
""")
|
||||||
_interpreters.run_string(id1, script)
|
_interpreters.run_string(id1, script)
|
||||||
|
@ -862,7 +862,7 @@ class RunStringTests(TestBase):
|
||||||
script = dedent("""
|
script = dedent("""
|
||||||
from textwrap import dedent
|
from textwrap import dedent
|
||||||
import threading
|
import threading
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
id = _interpreters.create()
|
id = _interpreters.create()
|
||||||
def f():
|
def f():
|
||||||
_interpreters.run_string(id, dedent('''
|
_interpreters.run_string(id, dedent('''
|
|
@ -42,7 +42,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
_testsinglephase = None
|
_testsinglephase = None
|
||||||
try:
|
try:
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
_interpreters = None
|
_interpreters = None
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
_testmultiphase = None
|
_testmultiphase = None
|
||||||
try:
|
try:
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
_interpreters = None
|
_interpreters = None
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -27,7 +27,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
_testmultiphase = None
|
_testmultiphase = None
|
||||||
try:
|
try:
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
_interpreters = None
|
_interpreters = None
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ import unittest
|
||||||
from test import support
|
from test import support
|
||||||
from test.support import import_helper
|
from test.support import import_helper
|
||||||
# Raise SkipTest if subinterpreters not supported.
|
# Raise SkipTest if subinterpreters not supported.
|
||||||
_interpreters = import_helper.import_module('_xxsubinterpreters')
|
_interpreters = import_helper.import_module('_interpreters')
|
||||||
from test.support import Py_GIL_DISABLED
|
from test.support import Py_GIL_DISABLED
|
||||||
from test.support import interpreters
|
from test.support import interpreters
|
||||||
from test.support.interpreters import (
|
from test.support.interpreters import (
|
||||||
|
@ -385,7 +385,7 @@ class TestInterpreterIsRunning(TestBase):
|
||||||
def test_from_subinterpreter(self):
|
def test_from_subinterpreter(self):
|
||||||
interp = interpreters.create()
|
interp = interpreters.create()
|
||||||
out = _run_output(interp, dedent(f"""
|
out = _run_output(interp, dedent(f"""
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
if _interpreters.is_running({interp.id}):
|
if _interpreters.is_running({interp.id}):
|
||||||
print(True)
|
print(True)
|
||||||
else:
|
else:
|
||||||
|
@ -876,7 +876,7 @@ class TestInterpreterExec(TestBase):
|
||||||
with self.assertRaisesRegex(InterpreterError, 'unrecognized'):
|
with self.assertRaisesRegex(InterpreterError, 'unrecognized'):
|
||||||
interp.exec('raise Exception("it worked!")')
|
interp.exec('raise Exception("it worked!")')
|
||||||
|
|
||||||
# test_xxsubinterpreters covers the remaining
|
# test__interpreters covers the remaining
|
||||||
# Interpreter.exec() behavior.
|
# Interpreter.exec() behavior.
|
||||||
|
|
||||||
|
|
||||||
|
@ -1290,7 +1290,7 @@ class LowLevelTests(TestBase):
|
||||||
self.assertEqual(whence, _interpreters.WHENCE_RUNTIME)
|
self.assertEqual(whence, _interpreters.WHENCE_RUNTIME)
|
||||||
|
|
||||||
script = f"""
|
script = f"""
|
||||||
import {_interpreters.__name__} as _interpreters
|
import _interpreters
|
||||||
interpid, whence = _interpreters.get_current()
|
interpid, whence = _interpreters.get_current()
|
||||||
print((interpid, whence))
|
print((interpid, whence))
|
||||||
"""
|
"""
|
||||||
|
@ -1333,7 +1333,7 @@ class LowLevelTests(TestBase):
|
||||||
|
|
||||||
with self.subTest('via interp from _interpreters'):
|
with self.subTest('via interp from _interpreters'):
|
||||||
text = self.run_and_capture(interpid2, f"""
|
text = self.run_and_capture(interpid2, f"""
|
||||||
import {_interpreters.__name__} as _interpreters
|
import _interpreters
|
||||||
print(
|
print(
|
||||||
_interpreters.list_all())
|
_interpreters.list_all())
|
||||||
""")
|
""")
|
||||||
|
@ -1352,7 +1352,7 @@ class LowLevelTests(TestBase):
|
||||||
(interpid5, _interpreters.WHENCE_STDLIB),
|
(interpid5, _interpreters.WHENCE_STDLIB),
|
||||||
]
|
]
|
||||||
text = self.run_temp_from_capi(f"""
|
text = self.run_temp_from_capi(f"""
|
||||||
import {_interpreters.__name__} as _interpreters
|
import _interpreters
|
||||||
_interpreters.create()
|
_interpreters.create()
|
||||||
print(
|
print(
|
||||||
_interpreters.list_all())
|
_interpreters.list_all())
|
||||||
|
@ -1507,7 +1507,7 @@ class LowLevelTests(TestBase):
|
||||||
|
|
||||||
with self.subTest('from C-API, running'):
|
with self.subTest('from C-API, running'):
|
||||||
text = self.run_temp_from_capi(dedent(f"""
|
text = self.run_temp_from_capi(dedent(f"""
|
||||||
import {_interpreters.__name__} as _interpreters
|
import _interpreters
|
||||||
interpid, *_ = _interpreters.get_current()
|
interpid, *_ = _interpreters.get_current()
|
||||||
print(_interpreters.whence(interpid))
|
print(_interpreters.whence(interpid))
|
||||||
"""),
|
"""),
|
||||||
|
@ -1518,7 +1518,7 @@ class LowLevelTests(TestBase):
|
||||||
with self.subTest('from legacy C-API, running'):
|
with self.subTest('from legacy C-API, running'):
|
||||||
...
|
...
|
||||||
text = self.run_temp_from_capi(dedent(f"""
|
text = self.run_temp_from_capi(dedent(f"""
|
||||||
import {_interpreters.__name__} as _interpreters
|
import _interpreters
|
||||||
interpid, *_ = _interpreters.get_current()
|
interpid, *_ = _interpreters.get_current()
|
||||||
print(_interpreters.whence(interpid))
|
print(_interpreters.whence(interpid))
|
||||||
"""),
|
"""),
|
||||||
|
|
|
@ -7,7 +7,7 @@ import time
|
||||||
|
|
||||||
from test.support import import_helper
|
from test.support import import_helper
|
||||||
# Raise SkipTest if subinterpreters not supported.
|
# Raise SkipTest if subinterpreters not supported.
|
||||||
_channels = import_helper.import_module('_xxinterpchannels')
|
_channels = import_helper.import_module('_interpchannels')
|
||||||
from test.support import interpreters
|
from test.support import interpreters
|
||||||
from test.support.interpreters import channels
|
from test.support.interpreters import channels
|
||||||
from .utils import _run_output, TestBase
|
from .utils import _run_output, TestBase
|
||||||
|
@ -22,7 +22,7 @@ class LowLevelTests(TestBase):
|
||||||
# encountered by the high-level module, thus they
|
# encountered by the high-level module, thus they
|
||||||
# mostly shouldn't matter as much.
|
# mostly shouldn't matter as much.
|
||||||
|
|
||||||
# Additional tests are found in Lib/test/test__xxinterpchannels.py.
|
# Additional tests are found in Lib/test/test__interpchannels.py.
|
||||||
# XXX Those should be either moved to LowLevelTests or eliminated
|
# XXX Those should be either moved to LowLevelTests or eliminated
|
||||||
# in favor of high-level tests in this file.
|
# in favor of high-level tests in this file.
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ from test import support
|
||||||
from test.support import import_helper
|
from test.support import import_helper
|
||||||
from test.support import os_helper
|
from test.support import os_helper
|
||||||
# Raise SkipTest if subinterpreters not supported.
|
# Raise SkipTest if subinterpreters not supported.
|
||||||
import_helper.import_module('_xxsubinterpreters')
|
import_helper.import_module('_interpreters')
|
||||||
from .utils import TestBase
|
from .utils import TestBase
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ import time
|
||||||
|
|
||||||
from test.support import import_helper, Py_DEBUG
|
from test.support import import_helper, Py_DEBUG
|
||||||
# Raise SkipTest if subinterpreters not supported.
|
# Raise SkipTest if subinterpreters not supported.
|
||||||
_queues = import_helper.import_module('_xxinterpqueues')
|
_queues = import_helper.import_module('_interpqueues')
|
||||||
from test.support import interpreters
|
from test.support import interpreters
|
||||||
from test.support.interpreters import queues
|
from test.support.interpreters import queues
|
||||||
from .utils import _run_output, TestBase as _TestBase
|
from .utils import _run_output, TestBase as _TestBase
|
||||||
|
|
|
@ -5,7 +5,7 @@ from test import support
|
||||||
from test.support import import_helper
|
from test.support import import_helper
|
||||||
from test.support import threading_helper
|
from test.support import threading_helper
|
||||||
# Raise SkipTest if subinterpreters not supported.
|
# Raise SkipTest if subinterpreters not supported.
|
||||||
import_helper.import_module('_xxsubinterpreters')
|
import_helper.import_module('_interpreters')
|
||||||
from test.support import interpreters
|
from test.support import interpreters
|
||||||
from .utils import TestBase
|
from .utils import TestBase
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ from test import support
|
||||||
# We would use test.support.import_helper.import_module(),
|
# We would use test.support.import_helper.import_module(),
|
||||||
# but the indirect import of test.support.os_helper causes refleaks.
|
# but the indirect import of test.support.os_helper causes refleaks.
|
||||||
try:
|
try:
|
||||||
import _xxsubinterpreters as _interpreters
|
import _interpreters
|
||||||
except ImportError as exc:
|
except ImportError as exc:
|
||||||
raise unittest.SkipTest(str(exc))
|
raise unittest.SkipTest(str(exc))
|
||||||
from test.support import interpreters
|
from test.support import interpreters
|
||||||
|
|
|
@ -1686,11 +1686,11 @@ Modules/pwdmodule.o: $(srcdir)/Modules/pwdmodule.c $(srcdir)/Modules/posixmodule
|
||||||
|
|
||||||
Modules/signalmodule.o: $(srcdir)/Modules/signalmodule.c $(srcdir)/Modules/posixmodule.h
|
Modules/signalmodule.o: $(srcdir)/Modules/signalmodule.c $(srcdir)/Modules/posixmodule.h
|
||||||
|
|
||||||
Modules/_xxsubinterpretersmodule.o: $(srcdir)/Modules/_xxsubinterpretersmodule.c $(srcdir)/Modules/_interpreters_common.h
|
Modules/_interpretersmodule.o: $(srcdir)/Modules/_interpretersmodule.c $(srcdir)/Modules/_interpreters_common.h
|
||||||
|
|
||||||
Modules/_xxinterpqueuesmodule.o: $(srcdir)/Modules/_xxinterpqueuesmodule.c $(srcdir)/Modules/_interpreters_common.h
|
Modules/_interpqueuesmodule.o: $(srcdir)/Modules/_interpqueuesmodule.c $(srcdir)/Modules/_interpreters_common.h
|
||||||
|
|
||||||
Modules/_xxinterpchannelsmodule.o: $(srcdir)/Modules/_xxinterpchannelsmodule.c $(srcdir)/Modules/_interpreters_common.h
|
Modules/_interpchannelsmodule.o: $(srcdir)/Modules/_interpchannelsmodule.c $(srcdir)/Modules/_interpreters_common.h
|
||||||
|
|
||||||
Python/crossinterp.o: $(srcdir)/Python/crossinterp.c $(srcdir)/Python/crossinterp_data_lookup.h $(srcdir)/Python/crossinterp_exceptions.h
|
Python/crossinterp.o: $(srcdir)/Python/crossinterp.c $(srcdir)/Python/crossinterp_data_lookup.h $(srcdir)/Python/crossinterp_exceptions.h
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
We've exposed the low-level :mod:`!_interpreters` module for the sake of the
|
||||||
|
PyPI implementation of :pep:`734`. It was sometimes available as the
|
||||||
|
:mod:`!_xxsubinterpreters` module and was formerly used only for testing. For
|
||||||
|
the most part, it should be considered an internal module, like :mod:`!_thread`
|
||||||
|
and :mod:`!_imp`. See
|
||||||
|
https://discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26.
|
|
@ -137,6 +137,9 @@ PYTHONPATH=$(COREPYTHONPATH)
|
||||||
#_datetime _datetimemodule.c
|
#_datetime _datetimemodule.c
|
||||||
#_decimal _decimal/_decimal.c
|
#_decimal _decimal/_decimal.c
|
||||||
#_heapq _heapqmodule.c
|
#_heapq _heapqmodule.c
|
||||||
|
#_interpchannels _interpchannelsmodule.c
|
||||||
|
#_interpqueues _interpqueuesmodule.c
|
||||||
|
#_interpreters _interpretersmodule.c
|
||||||
#_json _json.c
|
#_json _json.c
|
||||||
#_lsprof _lsprof.c rotatingtree.c
|
#_lsprof _lsprof.c rotatingtree.c
|
||||||
#_multiprocessing -I$(srcdir)/Modules/_multiprocessing _multiprocessing/multiprocessing.c _multiprocessing/semaphore.c
|
#_multiprocessing -I$(srcdir)/Modules/_multiprocessing _multiprocessing/multiprocessing.c _multiprocessing/semaphore.c
|
||||||
|
@ -271,9 +274,6 @@ PYTHONPATH=$(COREPYTHONPATH)
|
||||||
|
|
||||||
# Testing
|
# Testing
|
||||||
|
|
||||||
#_xxsubinterpreters _xxsubinterpretersmodule.c
|
|
||||||
#_xxinterpchannels _xxinterpchannelsmodule.c
|
|
||||||
#_xxinterpqueues _xxinterpqueuesmodule.c
|
|
||||||
#_xxtestfuzz _xxtestfuzz/_xxtestfuzz.c _xxtestfuzz/fuzzer.c
|
#_xxtestfuzz _xxtestfuzz/_xxtestfuzz.c _xxtestfuzz/fuzzer.c
|
||||||
#_testbuffer _testbuffer.c
|
#_testbuffer _testbuffer.c
|
||||||
#_testinternalcapi _testinternalcapi.c
|
#_testinternalcapi _testinternalcapi.c
|
||||||
|
|
|
@ -43,9 +43,10 @@
|
||||||
@MODULE__STRUCT_TRUE@_struct _struct.c
|
@MODULE__STRUCT_TRUE@_struct _struct.c
|
||||||
|
|
||||||
# build supports subinterpreters
|
# build supports subinterpreters
|
||||||
@MODULE__XXSUBINTERPRETERS_TRUE@_xxsubinterpreters _xxsubinterpretersmodule.c
|
@MODULE__INTERPRETERS_TRUE@_interpreters _interpretersmodule.c
|
||||||
@MODULE__XXINTERPCHANNELS_TRUE@_xxinterpchannels _xxinterpchannelsmodule.c
|
@MODULE__INTERPCHANNELS_TRUE@_interpchannels _interpchannelsmodule.c
|
||||||
@MODULE__XXINTERPQUEUES_TRUE@_xxinterpqueues _xxinterpqueuesmodule.c
|
@MODULE__INTERPQUEUES_TRUE@_interpqueues _interpqueuesmodule.c
|
||||||
|
|
||||||
@MODULE__ZONEINFO_TRUE@_zoneinfo _zoneinfo.c
|
@MODULE__ZONEINFO_TRUE@_zoneinfo _zoneinfo.c
|
||||||
|
|
||||||
# needs libm
|
# needs libm
|
||||||
|
|
|
@ -84,7 +84,7 @@ channel's queue, which are safely managed via the _PyCrossInterpreterData_*()
|
||||||
API.. The module does not create any objects that are shared globally.
|
API.. The module does not create any objects that are shared globally.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define MODULE_NAME _xxinterpchannels
|
#define MODULE_NAME _interpchannels
|
||||||
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
||||||
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
#undef REGISTERS_HEAP_TYPES
|
#undef REGISTERS_HEAP_TYPES
|
||||||
|
|
||||||
|
|
||||||
#define MODULE_NAME _xxinterpqueues
|
#define MODULE_NAME _interpqueues
|
||||||
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
||||||
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
#include "_interpreters_common.h"
|
#include "_interpreters_common.h"
|
||||||
|
|
||||||
|
|
||||||
#define MODULE_NAME _xxsubinterpreters
|
#define MODULE_NAME _interpreters
|
||||||
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
#define MODULE_NAME_STR Py_STRINGIFY(MODULE_NAME)
|
||||||
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
#define MODINIT_FUNC_NAME RESOLVE_MODINIT_FUNC_NAME(MODULE_NAME)
|
||||||
|
|
12
PC/config.c
12
PC/config.c
|
@ -35,9 +35,9 @@ extern PyObject* PyInit__codecs(void);
|
||||||
extern PyObject* PyInit__weakref(void);
|
extern PyObject* PyInit__weakref(void);
|
||||||
/* XXX: These two should really be extracted to standalone extensions. */
|
/* XXX: These two should really be extracted to standalone extensions. */
|
||||||
extern PyObject* PyInit_xxsubtype(void);
|
extern PyObject* PyInit_xxsubtype(void);
|
||||||
extern PyObject* PyInit__xxsubinterpreters(void);
|
extern PyObject* PyInit__interpreters(void);
|
||||||
extern PyObject* PyInit__xxinterpchannels(void);
|
extern PyObject* PyInit__interpchannels(void);
|
||||||
extern PyObject* PyInit__xxinterpqueues(void);
|
extern PyObject* PyInit__interpqueues(void);
|
||||||
extern PyObject* PyInit__random(void);
|
extern PyObject* PyInit__random(void);
|
||||||
extern PyObject* PyInit_itertools(void);
|
extern PyObject* PyInit_itertools(void);
|
||||||
extern PyObject* PyInit__collections(void);
|
extern PyObject* PyInit__collections(void);
|
||||||
|
@ -139,9 +139,9 @@ struct _inittab _PyImport_Inittab[] = {
|
||||||
{"_json", PyInit__json},
|
{"_json", PyInit__json},
|
||||||
|
|
||||||
{"xxsubtype", PyInit_xxsubtype},
|
{"xxsubtype", PyInit_xxsubtype},
|
||||||
{"_xxsubinterpreters", PyInit__xxsubinterpreters},
|
{"_interpreters", PyInit__interpreters},
|
||||||
{"_xxinterpchannels", PyInit__xxinterpchannels},
|
{"_interpchannels", PyInit__interpchannels},
|
||||||
{"_xxinterpqueues", PyInit__xxinterpqueues},
|
{"_interpqueues", PyInit__interpqueues},
|
||||||
#ifdef _Py_HAVE_ZLIB
|
#ifdef _Py_HAVE_ZLIB
|
||||||
{"zlib", PyInit_zlib},
|
{"zlib", PyInit_zlib},
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -465,9 +465,9 @@
|
||||||
<ClCompile Include="..\Modules\_typingmodule.c" />
|
<ClCompile Include="..\Modules\_typingmodule.c" />
|
||||||
<ClCompile Include="..\Modules\timemodule.c" />
|
<ClCompile Include="..\Modules\timemodule.c" />
|
||||||
<ClCompile Include="..\Modules\xxsubtype.c" />
|
<ClCompile Include="..\Modules\xxsubtype.c" />
|
||||||
<ClCompile Include="..\Modules\_xxsubinterpretersmodule.c" />
|
<ClCompile Include="..\Modules\_interpretersmodule.c" />
|
||||||
<ClCompile Include="..\Modules\_xxinterpchannelsmodule.c" />
|
<ClCompile Include="..\Modules\_interpchannelsmodule.c" />
|
||||||
<ClCompile Include="..\Modules\_xxinterpqueuesmodule.c" />
|
<ClCompile Include="..\Modules\_interpqueuesmodule.c" />
|
||||||
<ClCompile Include="..\Modules\_io\fileio.c" />
|
<ClCompile Include="..\Modules\_io\fileio.c" />
|
||||||
<ClCompile Include="..\Modules\_io\bytesio.c" />
|
<ClCompile Include="..\Modules\_io\bytesio.c" />
|
||||||
<ClCompile Include="..\Modules\_io\stringio.c" />
|
<ClCompile Include="..\Modules\_io\stringio.c" />
|
||||||
|
|
|
@ -1547,13 +1547,13 @@
|
||||||
<ClCompile Include="..\Parser\peg_api.c">
|
<ClCompile Include="..\Parser\peg_api.c">
|
||||||
<Filter>Parser</Filter>
|
<Filter>Parser</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Modules\_xxsubinterpretersmodule.c">
|
<ClCompile Include="..\Modules\_interpretersmodule.c">
|
||||||
<Filter>Modules</Filter>
|
<Filter>Modules</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Modules\_xxinterpchannelsmodule.c">
|
<ClCompile Include="..\Modules\_interpchannelsmodule.c">
|
||||||
<Filter>Modules</Filter>
|
<Filter>Modules</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Modules\_xxinterpqueuesmodule.c">
|
<ClCompile Include="..\Modules\_interpqueuesmodule.c">
|
||||||
<Filter>Modules</Filter>
|
<Filter>Modules</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\Parser\string_parser.c">
|
<ClCompile Include="..\Parser\string_parser.c">
|
||||||
|
|
|
@ -37,6 +37,9 @@ static const char* _Py_stdlib_module_names[] = {
|
||||||
"_hashlib",
|
"_hashlib",
|
||||||
"_heapq",
|
"_heapq",
|
||||||
"_imp",
|
"_imp",
|
||||||
|
"_interpchannels",
|
||||||
|
"_interpqueues",
|
||||||
|
"_interpreters",
|
||||||
"_io",
|
"_io",
|
||||||
"_ios_support",
|
"_ios_support",
|
||||||
"_json",
|
"_json",
|
||||||
|
|
|
@ -36,9 +36,6 @@ IGNORE = {
|
||||||
'_testmultiphase',
|
'_testmultiphase',
|
||||||
'_testsinglephase',
|
'_testsinglephase',
|
||||||
'_testexternalinspection',
|
'_testexternalinspection',
|
||||||
'_xxsubinterpreters',
|
|
||||||
'_xxinterpchannels',
|
|
||||||
'_xxinterpqueues',
|
|
||||||
'_xxtestfuzz',
|
'_xxtestfuzz',
|
||||||
'idlelib.idle_test',
|
'idlelib.idle_test',
|
||||||
'test',
|
'test',
|
||||||
|
|
|
@ -164,8 +164,8 @@ Python/pylifecycle.c _Py_FatalErrorFormat reentrant -
|
||||||
Python/pylifecycle.c fatal_error reentrant -
|
Python/pylifecycle.c fatal_error reentrant -
|
||||||
|
|
||||||
# explicitly protected, internal-only
|
# explicitly protected, internal-only
|
||||||
Modules/_xxinterpchannelsmodule.c - _globals -
|
Modules/_interpchannelsmodule.c - _globals -
|
||||||
Modules/_xxinterpqueuesmodule.c - _globals -
|
Modules/_interpqueuesmodule.c - _globals -
|
||||||
|
|
||||||
# set once during module init
|
# set once during module init
|
||||||
Modules/_decimal/_decimal.c - minalloc_is_set -
|
Modules/_decimal/_decimal.c - minalloc_is_set -
|
||||||
|
@ -246,11 +246,11 @@ Modules/_struct.c - bigendian_table -
|
||||||
Modules/_struct.c - lilendian_table -
|
Modules/_struct.c - lilendian_table -
|
||||||
Modules/_struct.c - native_table -
|
Modules/_struct.c - native_table -
|
||||||
Modules/_tkinter.c - state_key -
|
Modules/_tkinter.c - state_key -
|
||||||
Modules/_xxinterpchannelsmodule.c - _channelid_end_recv -
|
Modules/_interpchannelsmodule.c - _channelid_end_recv -
|
||||||
Modules/_xxinterpchannelsmodule.c - _channelid_end_send -
|
Modules/_interpchannelsmodule.c - _channelid_end_send -
|
||||||
Modules/_zoneinfo.c - DAYS_BEFORE_MONTH -
|
Modules/_zoneinfo.c - DAYS_BEFORE_MONTH -
|
||||||
Modules/_zoneinfo.c - DAYS_IN_MONTH -
|
Modules/_zoneinfo.c - DAYS_IN_MONTH -
|
||||||
Modules/_xxsubinterpretersmodule.c - no_exception -
|
Modules/_interpretersmodule.c - no_exception -
|
||||||
Modules/arraymodule.c - descriptors -
|
Modules/arraymodule.c - descriptors -
|
||||||
Modules/arraymodule.c - emptybuf -
|
Modules/arraymodule.c - emptybuf -
|
||||||
Modules/cjkcodecs/_codecs_cn.c - _mapping_list -
|
Modules/cjkcodecs/_codecs_cn.c - _mapping_list -
|
||||||
|
|
Can't render this file because it has a wrong number of fields in line 4.
|
|
@ -775,12 +775,12 @@ MODULE__MULTIPROCESSING_FALSE
|
||||||
MODULE__MULTIPROCESSING_TRUE
|
MODULE__MULTIPROCESSING_TRUE
|
||||||
MODULE__ZONEINFO_FALSE
|
MODULE__ZONEINFO_FALSE
|
||||||
MODULE__ZONEINFO_TRUE
|
MODULE__ZONEINFO_TRUE
|
||||||
MODULE__XXINTERPQUEUES_FALSE
|
MODULE__INTERPQUEUES_FALSE
|
||||||
MODULE__XXINTERPQUEUES_TRUE
|
MODULE__INTERPQUEUES_TRUE
|
||||||
MODULE__XXINTERPCHANNELS_FALSE
|
MODULE__INTERPCHANNELS_FALSE
|
||||||
MODULE__XXINTERPCHANNELS_TRUE
|
MODULE__INTERPCHANNELS_TRUE
|
||||||
MODULE__XXSUBINTERPRETERS_FALSE
|
MODULE__INTERPRETERS_FALSE
|
||||||
MODULE__XXSUBINTERPRETERS_TRUE
|
MODULE__INTERPRETERS_TRUE
|
||||||
MODULE__TYPING_FALSE
|
MODULE__TYPING_FALSE
|
||||||
MODULE__TYPING_TRUE
|
MODULE__TYPING_TRUE
|
||||||
MODULE__STRUCT_FALSE
|
MODULE__STRUCT_FALSE
|
||||||
|
@ -28659,9 +28659,9 @@ case $ac_sys_system in #(
|
||||||
py_cv_module__posixsubprocess=n/a
|
py_cv_module__posixsubprocess=n/a
|
||||||
py_cv_module__scproxy=n/a
|
py_cv_module__scproxy=n/a
|
||||||
py_cv_module__tkinter=n/a
|
py_cv_module__tkinter=n/a
|
||||||
py_cv_module__xxsubinterpreters=n/a
|
py_cv_module__interpreters=n/a
|
||||||
py_cv_module__xxinterpchannels=n/a
|
py_cv_module__interpchannels=n/a
|
||||||
py_cv_module__xxinterpqueues=n/a
|
py_cv_module__interpqueues=n/a
|
||||||
py_cv_module_grp=n/a
|
py_cv_module_grp=n/a
|
||||||
py_cv_module_pwd=n/a
|
py_cv_module_pwd=n/a
|
||||||
py_cv_module_resource=n/a
|
py_cv_module_resource=n/a
|
||||||
|
@ -29126,20 +29126,20 @@ then :
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if test "$py_cv_module__xxsubinterpreters" != "n/a"
|
if test "$py_cv_module__interpreters" != "n/a"
|
||||||
then :
|
then :
|
||||||
py_cv_module__xxsubinterpreters=yes
|
py_cv_module__interpreters=yes
|
||||||
fi
|
fi
|
||||||
if test "$py_cv_module__xxsubinterpreters" = yes; then
|
if test "$py_cv_module__interpreters" = yes; then
|
||||||
MODULE__XXSUBINTERPRETERS_TRUE=
|
MODULE__INTERPRETERS_TRUE=
|
||||||
MODULE__XXSUBINTERPRETERS_FALSE='#'
|
MODULE__INTERPRETERS_FALSE='#'
|
||||||
else
|
else
|
||||||
MODULE__XXSUBINTERPRETERS_TRUE='#'
|
MODULE__INTERPRETERS_TRUE='#'
|
||||||
MODULE__XXSUBINTERPRETERS_FALSE=
|
MODULE__INTERPRETERS_FALSE=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_STATE=$py_cv_module__xxsubinterpreters$as_nl"
|
as_fn_append MODULE_BLOCK "MODULE__INTERPRETERS_STATE=$py_cv_module__interpreters$as_nl"
|
||||||
if test "x$py_cv_module__xxsubinterpreters" = xyes
|
if test "x$py_cv_module__interpreters" = xyes
|
||||||
then :
|
then :
|
||||||
|
|
||||||
|
|
||||||
|
@ -29148,20 +29148,20 @@ then :
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if test "$py_cv_module__xxinterpchannels" != "n/a"
|
if test "$py_cv_module__interpchannels" != "n/a"
|
||||||
then :
|
then :
|
||||||
py_cv_module__xxinterpchannels=yes
|
py_cv_module__interpchannels=yes
|
||||||
fi
|
fi
|
||||||
if test "$py_cv_module__xxinterpchannels" = yes; then
|
if test "$py_cv_module__interpchannels" = yes; then
|
||||||
MODULE__XXINTERPCHANNELS_TRUE=
|
MODULE__INTERPCHANNELS_TRUE=
|
||||||
MODULE__XXINTERPCHANNELS_FALSE='#'
|
MODULE__INTERPCHANNELS_FALSE='#'
|
||||||
else
|
else
|
||||||
MODULE__XXINTERPCHANNELS_TRUE='#'
|
MODULE__INTERPCHANNELS_TRUE='#'
|
||||||
MODULE__XXINTERPCHANNELS_FALSE=
|
MODULE__INTERPCHANNELS_FALSE=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
as_fn_append MODULE_BLOCK "MODULE__XXINTERPCHANNELS_STATE=$py_cv_module__xxinterpchannels$as_nl"
|
as_fn_append MODULE_BLOCK "MODULE__INTERPCHANNELS_STATE=$py_cv_module__interpchannels$as_nl"
|
||||||
if test "x$py_cv_module__xxinterpchannels" = xyes
|
if test "x$py_cv_module__interpchannels" = xyes
|
||||||
then :
|
then :
|
||||||
|
|
||||||
|
|
||||||
|
@ -29170,20 +29170,20 @@ then :
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if test "$py_cv_module__xxinterpqueues" != "n/a"
|
if test "$py_cv_module__interpqueues" != "n/a"
|
||||||
then :
|
then :
|
||||||
py_cv_module__xxinterpqueues=yes
|
py_cv_module__interpqueues=yes
|
||||||
fi
|
fi
|
||||||
if test "$py_cv_module__xxinterpqueues" = yes; then
|
if test "$py_cv_module__interpqueues" = yes; then
|
||||||
MODULE__XXINTERPQUEUES_TRUE=
|
MODULE__INTERPQUEUES_TRUE=
|
||||||
MODULE__XXINTERPQUEUES_FALSE='#'
|
MODULE__INTERPQUEUES_FALSE='#'
|
||||||
else
|
else
|
||||||
MODULE__XXINTERPQUEUES_TRUE='#'
|
MODULE__INTERPQUEUES_TRUE='#'
|
||||||
MODULE__XXINTERPQUEUES_FALSE=
|
MODULE__INTERPQUEUES_FALSE=
|
||||||
fi
|
fi
|
||||||
|
|
||||||
as_fn_append MODULE_BLOCK "MODULE__XXINTERPQUEUES_STATE=$py_cv_module__xxinterpqueues$as_nl"
|
as_fn_append MODULE_BLOCK "MODULE__INTERPQUEUES_STATE=$py_cv_module__interpqueues$as_nl"
|
||||||
if test "x$py_cv_module__xxinterpqueues" = xyes
|
if test "x$py_cv_module__interpqueues" = xyes
|
||||||
then :
|
then :
|
||||||
|
|
||||||
|
|
||||||
|
@ -31532,16 +31532,16 @@ if test -z "${MODULE__TYPING_TRUE}" && test -z "${MODULE__TYPING_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"MODULE__TYPING\" was never defined.
|
as_fn_error $? "conditional \"MODULE__TYPING\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
if test -z "${MODULE__XXSUBINTERPRETERS_TRUE}" && test -z "${MODULE__XXSUBINTERPRETERS_FALSE}"; then
|
if test -z "${MODULE__INTERPRETERS_TRUE}" && test -z "${MODULE__INTERPRETERS_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"MODULE__XXSUBINTERPRETERS\" was never defined.
|
as_fn_error $? "conditional \"MODULE__INTERPRETERS\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
if test -z "${MODULE__XXINTERPCHANNELS_TRUE}" && test -z "${MODULE__XXINTERPCHANNELS_FALSE}"; then
|
if test -z "${MODULE__INTERPCHANNELS_TRUE}" && test -z "${MODULE__INTERPCHANNELS_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"MODULE__XXINTERPCHANNELS\" was never defined.
|
as_fn_error $? "conditional \"MODULE__INTERPCHANNELS\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
if test -z "${MODULE__XXINTERPQUEUES_TRUE}" && test -z "${MODULE__XXINTERPQUEUES_FALSE}"; then
|
if test -z "${MODULE__INTERPQUEUES_TRUE}" && test -z "${MODULE__INTERPQUEUES_FALSE}"; then
|
||||||
as_fn_error $? "conditional \"MODULE__XXINTERPQUEUES\" was never defined.
|
as_fn_error $? "conditional \"MODULE__INTERPQUEUES\" was never defined.
|
||||||
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||||||
fi
|
fi
|
||||||
if test -z "${MODULE__ZONEINFO_TRUE}" && test -z "${MODULE__ZONEINFO_FALSE}"; then
|
if test -z "${MODULE__ZONEINFO_TRUE}" && test -z "${MODULE__ZONEINFO_FALSE}"; then
|
||||||
|
|
12
configure.ac
12
configure.ac
|
@ -7433,9 +7433,9 @@ AS_CASE([$ac_sys_system],
|
||||||
[_posixsubprocess],
|
[_posixsubprocess],
|
||||||
[_scproxy],
|
[_scproxy],
|
||||||
[_tkinter],
|
[_tkinter],
|
||||||
[_xxsubinterpreters],
|
[_interpreters],
|
||||||
[_xxinterpchannels],
|
[_interpchannels],
|
||||||
[_xxinterpqueues],
|
[_interpqueues],
|
||||||
[grp],
|
[grp],
|
||||||
[pwd],
|
[pwd],
|
||||||
[resource],
|
[resource],
|
||||||
|
@ -7558,9 +7558,9 @@ PY_STDLIB_MOD_SIMPLE([_random])
|
||||||
PY_STDLIB_MOD_SIMPLE([select])
|
PY_STDLIB_MOD_SIMPLE([select])
|
||||||
PY_STDLIB_MOD_SIMPLE([_struct])
|
PY_STDLIB_MOD_SIMPLE([_struct])
|
||||||
PY_STDLIB_MOD_SIMPLE([_typing])
|
PY_STDLIB_MOD_SIMPLE([_typing])
|
||||||
PY_STDLIB_MOD_SIMPLE([_xxsubinterpreters])
|
PY_STDLIB_MOD_SIMPLE([_interpreters])
|
||||||
PY_STDLIB_MOD_SIMPLE([_xxinterpchannels])
|
PY_STDLIB_MOD_SIMPLE([_interpchannels])
|
||||||
PY_STDLIB_MOD_SIMPLE([_xxinterpqueues])
|
PY_STDLIB_MOD_SIMPLE([_interpqueues])
|
||||||
PY_STDLIB_MOD_SIMPLE([_zoneinfo])
|
PY_STDLIB_MOD_SIMPLE([_zoneinfo])
|
||||||
|
|
||||||
dnl multiprocessing modules
|
dnl multiprocessing modules
|
||||||
|
|
Loading…
Reference in New Issue