cpython/Python
Victor Stinner 0327bde9da
bpo-32030: Rewrite calculate_path() (#4521)
* calculate_path() rewritten in Modules/getpath.c and PC/getpathp.c
* Move global variables into a new PyPathConfig structure.
* calculate_path():

  * Split the huge calculate_path() function into subfunctions.
  * Add PyCalculatePath structure to pass data between subfunctions.
  * Document PyCalculatePath fields.
  * Move cleanup code into a new calculate_free() subfunction
  * calculate_init() now handles Py_DecodeLocale() failures properly
  * calculate_path() is now atomic: only replace PyPathConfig
    (path_config) at once on success.

* _Py_GetPythonHomeWithConfig() now returns an error on failure
* Add _Py_INIT_NO_MEMORY() helper: report a memory allocation failure
* Coding style fixes (PEP 7)
2017-11-23 17:03:20 +01:00
..
clinic bpo-30950: Convert round() to Argument Clinic. (#2740) 2017-11-15 17:51:14 +02:00
Python-ast.c bpo-31572: Get rid of _PyObject_HasAttrId() in the ASDL parser. (#3725) 2017-11-11 16:41:32 +02:00
README Issue #18093: Factor out the programs that embed the runtime 2014-07-25 21:52:14 +10:00
_warnings.c bpo-32030: Add _PyMainInterpreterConfig.pythonhome (#4513) 2017-11-23 10:43:14 +01:00
asdl.c replace PY_SIZE_MAX with SIZE_MAX 2016-09-07 09:26:18 -07:00
ast.c bpo-32023: Disallow genexprs without parenthesis in class definitions. (#4400) 2017-11-15 17:39:37 +02:00
bltinmodule.c bpo-30950: Convert round() to Argument Clinic. (#2740) 2017-11-15 17:51:14 +02:00
bootstrap_hash.c bpo-32030: Enhance Py_Main() (#4412) 2017-11-15 18:11:45 -08:00
ceval.c bpo-31857: Make the behavior of USE_STACKCHECK deterministic (#4098) 2017-10-25 23:03:01 -07:00
ceval_gil.h bpo-30860: Consolidate stateful runtime globals. (#3397) 2017-09-07 23:51:28 -06:00
codecs.c bpo-30860: Consolidate stateful runtime globals. (#3397) 2017-09-07 23:51:28 -06:00
compile.c Add the const qualifier to "char *" variables that refer to literal strings. (#4370) 2017-11-11 13:06:26 +02:00
condvar.h bpo-30860: Consolidate stateful runtime globals. (#3397) 2017-09-07 23:51:28 -06:00
dtoa.c bpo-30923: Silence fall-through warnings included in -Wextra since gcc-7.0. (#3157) 2017-08-21 13:09:59 +02:00
dup2.c
dynamic_annotations.c
dynload_aix.c PEP 489: Multi-phase extension module initialization 2015-05-23 22:24:10 +10:00
dynload_dl.c Issue #24268: Fix import naming when loading extension modules. Patch by Petr Viktorin. 2015-05-23 14:13:41 -07:00
dynload_hpux.c Issue #24268: Fix import naming when loading extension modules. Patch by Petr Viktorin. 2015-05-23 14:13:41 -07:00
dynload_next.c Issue #24268: Fix import naming when loading extension modules. Patch by Petr Viktorin. 2015-05-23 14:13:41 -07:00
dynload_shlib.c bpo-30860: Consolidate stateful runtime globals. (#3397) 2017-09-07 23:51:28 -06:00
dynload_stub.c
dynload_win.c [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302) 2017-06-28 08:30:06 +03:00
errors.c bpo-28994: PyErr_NormalizeException() no longer use C stack for recursion. (#2035) 2017-11-05 11:27:48 +02:00
fileutils.c Replace KB unit with KiB (#4293) 2017-11-08 14:44:44 -08:00
formatter_unicode.c bpo-31780: Fix incorrect error message for ',x', ',b', ',o' specs (#4002) 2017-10-14 23:41:13 -04:00
frozen.c Issue #26647: Python interpreter now uses 16-bit wordcode instead of bytecode. 2016-05-24 09:15:14 +03:00
frozenmain.c bpo-32030: Split Py_Main() into subfunctions (#4399) 2017-11-15 15:48:08 -08:00
future.c bpo-29463: Add docstring field to some AST nodes. (#46) 2017-02-22 16:31:59 +01:00
getargs.c bpo-31373: remove overly strict float range checks (#3486) 2017-09-10 23:50:46 -07:00
getcompiler.c closes bpo-31696: don't mention GCC in sys.version when building with clang (#3891) 2017-10-05 21:15:14 -07:00
getcopyright.c ring in 2017 for Python 2017-01-01 22:04:13 -06:00
getopt.c #16306: report only the first unknown option and add more tests. Patch by Serhiy Storchaka. 2012-11-23 18:48:32 +02:00
getplatform.c
getversion.c
graminit.c bpo-30406: Make async and await proper keywords (#1669) 2017-10-05 23:24:46 -04:00
import.c bpo-32030: Add more options to _PyCoreConfig (#4485) 2017-11-20 18:12:22 -08:00
importdl.c bpo-31315: Fix an assertion failure in imp.create_dynamic(), when spec.name is not a string. (#3257) 2017-09-19 14:39:47 +03:00
importdl.h PEP 489: Multi-phase extension module initialization 2015-05-23 22:24:10 +10:00
importlib.h bpo-21720: Restore the Python 2.7 logic in handling a fromlist. (#4118) 2017-10-26 10:41:59 +03:00
importlib_external.h bpo-31709: Update importlib magic (#3906) 2017-10-06 10:18:10 -04:00
makeopcodetargets.py makeopcodetargets.py: we need to import Lib/opcode.py 2016-03-26 01:04:37 +01:00
marshal.c bpo-32011: Revert "Issue #15480: Remove the deprecated and unused TYPE_INT64 code from marshal." (#4381) 2017-11-15 17:41:05 +02:00
modsupport.c bpo-29852: Argument Clinic Py_ssize_t converter now supports None (#716) 2017-03-30 09:15:31 +03:00
mysnprintf.c
mystrtoul.c bpo-31370: Remove support for threads-less builds (#3385) 2017-09-07 18:56:24 +02:00
opcode_targets.h Issue #26110: Add LOAD_METHOD/CALL_METHOD opcodes. 2016-12-13 19:03:51 -05:00
peephole.c bpo-30501: Make the compiler producing optimized code for condition expressions. (#1851) 2017-06-11 14:50:22 +03:00
pyarena.c Issue #18203: Replace malloc() with PyMem_Malloc() to allocate arena objects 2013-07-07 17:18:53 +02:00
pyctype.c
pyfpe.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
pyhash.c Add the const qualifier to "char *" variables that refer to literal strings. (#4370) 2017-11-11 13:06:26 +02:00
pylifecycle.c bpo-32030: Rewrite calculate_path() (#4521) 2017-11-23 17:03:20 +01:00
pymath.c Issue 24366: Indent code (thanks to li4ick for reporting). 2015-06-02 18:53:46 -04:00
pystate.c bpo-32030: Add _PyCoreConfig.module_search_path_env (#4504) 2017-11-23 00:12:09 +01:00
pystrcmp.c
pystrhex.c Silence a gcc "may be used uninitialized" compiler warning. Not true. 2015-04-25 23:51:39 -07:00
pystrtod.c Add the const qualifier to "char *" variables that refer to literal strings. (#4370) 2017-11-11 13:06:26 +02:00
pythonrun.c bpo-32030: Add more options to _PyCoreConfig (#4485) 2017-11-20 18:12:22 -08:00
pytime.c Fix miscellaneous typos (#4275) 2017-11-05 15:37:50 +02:00
strdup.c Issue #18722: Remove uses of the "register" keyword in C code. 2013-08-13 20:18:52 +02:00
structmember.c Added the const qualifier to char* variables that refer to readonly internal 2016-11-20 10:16:47 +02:00
symtable.c bpo-28936: Detect lexically first syntax error first (#4097) 2017-10-27 00:28:35 +03:00
sysmodule.c bpo-32030: Split Py_Main() into subfunctions (#4399) 2017-11-15 15:48:08 -08:00
thread.c bpo-25658: Implement PEP 539 for Thread Specific Storage (TSS) API (GH-1362) 2017-10-06 20:41:34 +10:00
thread_nt.h Replace KB unit with KiB (#4293) 2017-11-08 14:44:44 -08:00
thread_pthread.h Replace KB unit with KiB (#4293) 2017-11-08 14:44:44 -08:00
traceback.c bpo-31949: Fixed several issues in printing tracebacks (PyTraceBack_Print()). (#4289) 2017-11-15 17:38:52 +02:00
wordcode_helpers.h bpo-31338 (#3374) 2017-09-14 18:13:16 -07:00

README

Miscellaneous source files for the main Python shared library