summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* bpo-31373: fix undefined floating-point demotions (#3396)Benjamin Peterson2017-09-072-16/+21
|
* remove current_filename optimization from marshal (#3423) (closes bpo-31384)Benjamin Peterson2017-09-071-19/+0
|
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-078-216/+3
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* bpo-30465: Fix lineno and col_offset in fstring AST nodes (#1800)Łukasz Langa2017-09-071-5/+67
| | | For f-string ast nodes, fix the line and columns so that tools such as flake8 can identify them correctly.
* Revert "pytime: include winsock2, so we can have a complete timeval type ↵Antoine Pitrou2017-09-061-1/+0
| | | | | (#3377)" (#3383) This reverts commit 833860615bedfd2484ac0623d6f01ff0578ba09f, as it broke Windows builds.
* Revert "bpo-30860: Consolidate stateful runtime globals." (#3379)Eric Snow2017-09-0610-418/+452
| | | Windows buildbots started failing due to include-related errors.
* pytime: include winsock2, so we can have a complete timeval type (#3377)Benjamin Peterson2017-09-061-0/+1
|
* correct initialization code (#3376)Benjamin Peterson2017-09-062-3/+2
| | | Explicitly initialize struct members rather than relying on compiler extensions.
* bpo-30860: Consolidate stateful runtime globals. (#2594)Eric Snow2017-09-0610-452/+419
| | | | | | | | | * group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py).
* bpo-28411: Remove "modules" field from Py_InterpreterState. (#1638)Eric Snow2017-09-048-84/+207
| | | sys.modules is the one true source.
* bpo-31286, bpo-30024: Fixed stack usage in absolute imports with (#3217)Serhiy Storchaka2017-08-291-10/+16
| | | binding a submodule to a name.
* bpo-31095: fix potential crash during GC (GH-2974)INADA Naoki2017-08-241-0/+2
|
* bpo-31229: Fixed wrong error messages when too many keyword arguments are ↵Oren Milman2017-08-231-2/+8
| | | | received. (#3180)
* bpo-31236: Improved some error messages of min() and max().Oren Milman2017-08-211-2/+3
|
* bpo-30923: Silence fall-through warnings included in -Wextra since gcc-7.0. ↵Stefan Krah2017-08-219-14/+27
| | | | (#3157)
* bpo-31070: Fix a race condition in importlib _get_module_lock(). (#3033)Serhiy Storchaka2017-08-091-1473/+1478
|
* Fix a shadow-compatible-local warning (#2180)Yuan Chao Chou2017-08-041-165/+165
| | | | Change the shadowing naming, 'value' (Python-ast.c:4652), to 'val' to prevent the variables from being misused.
* bpo-31071: Avoid masking original TypeError in call with * unpacking (#2957)Serhiy Storchaka2017-08-031-29/+34
| | | when other arguments are passed.
* Spelling fixes (#2902)Ville Skyttä2017-08-031-1/+1
|
* bpo-31091: Remove dead code in PyErr_GivenExceptionMatches(). (#2963)scoder2017-07-311-13/+1
| | | According to the comment, there was previously a call to PyObject_IsSubclass() involved which could fail, but since it was replaced with a call to PyType_IsSubtype(), it can no longer fail.
* bpo-30640: Fix undefined behavior in _PyFunction_FastCallDict() and ↵Zackery Spytz2017-07-311-1/+2
| | | | | PyEval_EvalCodeEx() (#2919) k + 1 was calculated with k = NULL.
* bpo-9566: Fix a warning in Python/getargs.c (#2890)Segev Finer2017-07-261-1/+1
|
* Fix a small typo in a comment (#2863)Stéphane Wirtel2017-07-251-1/+1
|
* bpo-30891: Fix again importlib _find_and_load() (#2665)Victor Stinner2017-07-211-351/+352
| | | | | | | | | Use sys.modules.get() in the "with _ModuleLockManager(name):" block to protect the dictionary key with the module lock and use an atomic get to prevent race condition. Remove also _bootstrap._POPULATE since it was unused (_bootstrap_external now has its own _POPULATE object), add a new _SENTINEL object instead.
* bpo-30876: Relative import from unloaded package now reimports the package ↵Serhiy Storchaka2017-07-122-380/+365
| | | | | | | | | (#2639) instead of failing with SystemError. Relative import from non-package now fails with ImportError rather than SystemError.
* bpo-30891: Fix importlib _find_and_load() race condition (#2646)Victor Stinner2017-07-102-1539/+1526
| | | | | | * Rewrite importlib _get_module_lock(): it is now responsible to hold the imp lock directly. * _find_and_load() now holds the module lock to check if name is in sys.modules to prevent a race condition
* Remove _PyArg_NoStackKeywords(). (#2641)Serhiy Storchaka2017-07-101-18/+0
|
* bpo-30814: Fixed a race condition when import a submodule from a package. ↵Serhiy Storchaka2017-07-062-323/+306
| | | | (#2580)
* bpo-30854: Fix compile error when --without-threads (#2581)Masayuki Yamamoto2017-07-051-1/+1
| | | | | | * bpo-30854: Fix compile error when --without-threads * bpo-30854: fix news
* bpo-29464: Rename METH_FASTCALL to METH_FASTCALL|METH_KEYWORDS and make (#1955)Serhiy Storchaka2017-07-035-101/+27
| | | | | the bare METH_FASTCALL be used for functions with positional-only parameters.
* bpo-30832: Remove own implementation for thread-local storage (#2537)Masayuki Yamamoto2017-07-033-220/+8
| | | | | | | | | | | | | | | | * bpo-30832: Remove own implementation for thread-local storage CPython has provided the own implementation for thread-local storage (TLS) on Python/thread.c, it's used in the case which a platform has not supplied native TLS. However, currently all supported platforms (NT and pthreads) have provided native TLS and defined the Py_HAVE_NATIVE_TLS macro with unconditional in any case. * bpo-30832: replace NT with Windows * bpo-30832: change to directive chain * bpo-30832: remove comemnt which making no sense
* bpo-30647: Check nl_langinfo(CODESET) in locale coercion (GH-2374)Nick Coghlan2017-06-291-8/+11
| | | | | | | | | | | | | - On some versions of FreeBSD, setting the "UTF-8" locale succeeds, but a subsequent "nl_langinfo(CODESET)" fails - adding a check for this in the coercion logic means that coercion will happen on systems where this check succeeds, and will be skipped otherwise - that way CPython should automatically adapt to changes in platform behaviour, rather than needing a new release to enable coercion at build time - this also allows UTF-8 to be re-enabled as a coercion target, restoring the locale coercion behaviour on Mac OS X
* bpo-29585: Fix sysconfig.get_config_var("PYTHONFRAMEWORK") (GH-2483)INADA Naoki2017-06-291-1/+1
| | | | | | | | | | | `PYTHONFRAMEWORK` is defined in `Makefile` and it shoulnd't be used in `pyconfig.h`. `sysconfig.py --generate-posix-vars` reads config vars from Makefile and `pyconfig.h`. Conflicting variables should be avoided. Especially, string config variables in Makefile are unquoted, but in `pyconfig.h` are keep quoted. So it should be private (starts with underscore).
* bpo-30703: Improve signal delivery (#2415)Antoine Pitrou2017-06-281-21/+54
| | | | | | | | | | | | | | | | | | | | * Improve signal delivery Avoid using Py_AddPendingCall from signal handler, to avoid calling signal-unsafe functions. * Remove unused function * Improve comments * Add stress test * Adapt for --without-threads * Add second stress test * Add NEWS blurb * Address comments @haypo
* bpo-29585: optimize site.py startup time (GH-136)INADA Naoki2017-06-281-0/+1
| | | | Avoid importing `sysconfig` from `site` by copying minimum code. Python startup is 5% faster on Linux and 30% faster on macOS
* [security] bpo-13617: Reject embedded null characters in wchar* strings. (#2302)Serhiy Storchaka2017-06-282-8/+19
| | | | | | | Based on patch by Victor Stinner. Add private C API function _PyUnicode_AsUnicode() which is similar to PyUnicode_AsUnicode(), but checks for null characters.
* bpo-30765: Avoid blocking when PyThread_acquire_lock() is asked not to (#2403)Antoine Pitrou2017-06-261-45/+50
| | | | | | | | | | | * bpo-30765: Avoid blocking when PyThread_acquire_lock() is asked not to lock This is especially important if PyThread_acquire_lock() is called reentrantly (for example from a signal handler). * Update 2017-06-26-14-29-50.bpo-30765.Q5iBmf.rst * Avoid core logic when taking the mutex failed
* Trivial cleanup: remove redundant variable stores in ceval.c (#2012)Adrian Wielgosik2017-06-231-6/+1
| | | Redundant code leftover from cleanup in #16191: the variable `err` is being written to, even though it wasn't used after that point.
* bpo-30604: clean up co_extra support (#2144)Dino Viehland2017-06-212-5/+5
| | | bpo-30604: port fix from 3.6 dropping binary compatibility tweaks
* bpo-30183: Fixes HP-UX cc compilation error in pytime.c (#1351)haney2017-06-211-0/+20
| | | | | | | | | | | | | | | | * bpo-30183: Fixes HP-UX cc compilation error in pytime.c HP-UX does not support the CLOCK_MONOTONIC identifier, and will fail to compile: "Python/pytime.c", line 723: error #2020: identifier "CLOCK_MONOTONIC" is undefined const clockid_t clk_id = CLOCK_MONOTONIC; Add a new section for __hpux that calls 'gethrtime()' instead of 'clock_gettime()'. * bpo-30183: Removes unnecessary return
* bpo-30565: Add PYTHONCOERCECLOCALE=warn runtime flag (GH-2260)Nick Coghlan2017-06-181-25/+40
| | | | | | | | | | | | - removes PY_WARN_ON_C_LOCALE build time flag - locale coercion and compatibility warnings are now always compiled in, but are off by default - adds PYTHONCOERCECLOCALE=warn runtime option to aid in debugging potentially locale related compatibility problems Due to not-yet-resolved test failures on *BSD systems (including Mac OS X), this also temporarily disables UTF-8 as a locale coercion target, and skips testing the interpreter's behavior in the POSIX locale.
* bpo-30682: Removed a too-strict assertion that failed for certain f-strings. ↵ericvsmith2017-06-161-2/+2
| | | | | | (#2232) This caused a segfault on eval("f'\\\n'") and eval("f'\\\r'") in debug build.
* bpo-30626: Fix error handling in PyImport_Import(). (#2103)Serhiy Storchaka2017-06-151-2/+6
| | | | In rare circumstances PyImport_Import() could return NULL without raising an error.
* bpo-20627: Fix error message when keyword arguments are used (#2115)Sylvain2017-06-151-6/+6
|
* bpo-30501: Make the compiler producing optimized code for condition ↵Serhiy Storchaka2017-06-114-2448/+2533
| | | | expressions. (#1851)
* bpo-28180: Implementation for PEP 538 (#659)Nick Coghlan2017-06-111-7/+167
| | | | | | | | | | - new PYTHONCOERCECLOCALE config setting - coerces legacy C locale to C.UTF-8, C.utf8 or UTF-8 by default - always uses C.UTF-8 on Android - uses `surrogateescape` on stdin and stdout in the coercion target locales - configure option to disable locale coercion at build time - configure option to disable C locale warning at build time
* bpo-30600: Fix error messages (condition order in Argument Clinic) (#2051)Sylvain2017-06-103-63/+63
| | | | | | | | The function '_PyArg_ParseStack()' and '_PyArg_UnpackStack' were failing (with error "XXX() takes Y argument (Z given)") before the function '_PyArg_NoStackKeywords()' was called. Thus, the latter did not raise its more meaningful error : "XXX() takes no keyword arguments".
* Fix regression in error message introduced in bpo-29951. (#2028)Serhiy Storchaka2017-06-091-2/+2
| | | | | | | | * Fix regression in error message introduced in bpo-29951. * Add test. * Make the test more strong.
* bpo-30529: Fix errors for invalid whitespaces in f-string subexpressions. ↵Serhiy Storchaka2017-06-081-24/+7
| | | | | | | | (#1888) 'invalid character in identifier' now is raised instead of 'f-string: empty expression not allowed' if a subexpression contains only whitespaces and they are not accepted by Python parser.
* bpo-30592: Fixed error messages for some builtins. (#1996)Serhiy Storchaka2017-06-081-3/+3
| | | | | Error messages when pass keyword arguments to some builtins that don't support keyword arguments contained double parenthesis: "()()". The regression was introduced by bpo-30534.