bpo-36142: Add _PyPreConfig_SetAllocator() (GH-12187)
* _PyPreConfig_Write() now reallocates the pre-configuration with the
new memory allocator.
* It is no longer needed to force the "default raw memory allocator"
to clear pre-configuration and core configuration. Simplify the
code.
* _PyPreConfig_Write() now does nothing if called after
Py_Initialize(): no longer check if the allocator is the same.
* Remove _PyMem_GetDebugAllocatorsName(): dev mode sets again
allocator to "debug".
diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py
index 2827e87..1f236a9 100644
--- a/Lib/test/test_embed.py
+++ b/Lib/test/test_embed.py
@@ -336,7 +336,6 @@
'legacy_windows_fs_encoding': 0,
'legacy_windows_stdio': 0,
})
- DEBUG_ALLOCATOR = 'pymalloc_debug' if support.with_pymalloc() else 'malloc_debug'
# main config
COPY_MAIN_CONFIG = (
@@ -589,7 +588,7 @@
def test_init_env_dev_mode(self):
config = dict(self.INIT_ENV_CONFIG,
- allocator=self.DEBUG_ALLOCATOR,
+ allocator='debug',
dev_mode=1)
self.check_config("init_env_dev_mode", config)
@@ -597,7 +596,7 @@
config = {
'dev_mode': 1,
'faulthandler': 1,
- 'allocator': self.DEBUG_ALLOCATOR,
+ 'allocator': 'debug',
}
self.check_config("init_dev_mode", config)