mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	bpo-32030: Add _PyCoreConfig.warnoptions (#4936)
Merge _PyCoreConfig_ReadEnv() into _PyCoreConfig_Read(), and _Py_CommandLineDetails usage is now restricted to pymain_cmdline(). Changes: * _PyCoreConfig: Add nxoption, xoptions, nwarnoption and warnoptions * Add _PyCoreConfig.program: argv[0] or "" * Move filename, command, module and xoptions from _Py_CommandLineDetails to _PyMain. xoptions _Py_OptList becomes (int, wchar_t**) list. * Add pymain_cmdline() function * Rename copy_argv() to copy_wstrlist(). Rename clear_argv() to clear_wstrlist(). Remove _Py_OptList structure: use (int, wchar_t**) list instead. * Rename pymain_set_flag_from_env() to pymain_get_env_flag() * Rename pymain_set_flags_from_env() to pymain_get_env_flags() * _PyMainInterpreterConfig_Read() now creates the warnoptions from _PyCoreConfig.warnoptions * Inline pymain_add_warning_dev_mode() and pymain_add_warning_bytes_flag() into config_init_warnoptions() * Inline pymain_get_program_name() into _PyCoreConfig_Read() * _Py_CommandLineDetails: Replace warning_options with nwarnoption and warnoptions. Replace env_warning_options with nenv_warnoption and env_warnoptions. * pymain_warnings_envvar() now has a single implementation for Windows and Unix: use config_get_env_var_dup() to also get the variable as wchar_t* on Unix.
This commit is contained in:
		
							parent
							
								
									1f1a34c314
								
							
						
					
					
						commit
						ca719ac42b
					
				
					 5 changed files with 462 additions and 436 deletions
				
			
		|  | @ -882,7 +882,7 @@ _Py_InitializeEx_Private(int install_sigs, int install_importlib) | |||
|     core_config._disable_importlib = !install_importlib; | ||||
|     config.install_signal_handlers = install_sigs; | ||||
| 
 | ||||
|     err = _PyCoreConfig_ReadEnv(&core_config); | ||||
|     err = _PyCoreConfig_Read(&core_config); | ||||
|     if (_Py_INIT_FAILED(err)) { | ||||
|         goto done; | ||||
|     } | ||||
|  | @ -2030,7 +2030,7 @@ void _Py_PyAtExit(void (*func)(PyObject *), PyObject *module) | |||
| { | ||||
|     PyThreadState *ts; | ||||
|     PyInterpreterState *is; | ||||
|      | ||||
| 
 | ||||
|     ts = PyThreadState_GET(); | ||||
|     is = ts->interp; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Victor Stinner
						Victor Stinner