• Victor Stinner's avatar
    bpo-32030: Enhance Py_Main() (#4412) · a7368ac6
    Victor Stinner yazdı
    Parse more env vars in Py_Main():
    
    * Add more options to _PyCoreConfig:
    
      * faulthandler
      * tracemalloc
      * importtime
    
    * Move code to parse environment variables from _Py_InitializeCore()
      to Py_Main(). This change fixes a regression from Python 3.6:
      PYTHONUNBUFFERED is now read before calling pymain_init_stdio().
    * _PyFaulthandler_Init() and _PyTraceMalloc_Init() now take an
      argument to decide if the module has to be enabled at startup.
    * tracemalloc_start() is now responsible to check the maximum number
      of frames.
    
    Other changes:
    
    * Cleanup Py_Main():
    
      * Rename some pymain_xxx() subfunctions
      * Add pymain_run_python() subfunction
    
    * Cleanup Py_NewInterpreter()
    * _PyInterpreterState_Enable() now reports failure
    * init_hash_secret() now considers pyurandom() failure as an "user
      error": don't fail with abort().
    * pymain_optlist_append() and pymain_strdup() now sets err on memory
      allocation failure.
    a7368ac6
test_tracemalloc.py 35.6 KB