bpo-42260: Add _PyInterpreterState_SetConfig() (GH-23158)
* Inline _PyInterpreterState_SetConfig(): replace it with
_PyConfig_Copy().
* Add _PyErr_SetFromPyStatus()
* Add _PyInterpreterState_GetConfigCopy()
* Add a new _PyInterpreterState_SetConfig() function.
* Add an unit which gets, modifies, and sets the config.
diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py
index 31dc39f..36a0e77 100644
--- a/Lib/test/test_embed.py
+++ b/Lib/test/test_embed.py
@@ -1394,6 +1394,15 @@ def test_init_warnoptions(self):
self.check_all_configs("test_init_warnoptions", config, preconfig,
api=API_PYTHON)
+ def test_init_set_config(self):
+ config = {
+ '_init_main': 0,
+ 'bytes_warning': 2,
+ 'warnoptions': ['error::BytesWarning'],
+ }
+ self.check_all_configs("test_init_set_config", config,
+ api=API_ISOLATED)
+
def test_get_argc_argv(self):
self.run_embedded_interpreter("test_get_argc_argv")
# ignore output