summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Backed out changeset f23fa1f7b68fHEADmasterVictor Stinner2017-02-108-1390/+1345
| | | | | Sorry, I didn't want to push this change before the review :-( I was pushing a change into the 2.7 branch.
* Issue #29465: Add Objects/call.c fileVictor Stinner2017-02-108-1345/+1390
| | | | | | | | | | * Move all functions to call objects in a new Objects/call.c file. * Rename fast_function() to _PyFunction_FastCallKeywords(). * Copy null_error() from Objects/abstract.c * Inline type_error() in call.c to not have to copy it, it was only called once. * Export _PyEval_EvalCodeWithName() since it is now called from call.c.
* Merge 3.6Victor Stinner2017-02-101-2/+3
|\
| * Fix test_datetime on Windows3.6Victor Stinner2017-02-101-2/+3
| | | | | | | | | | Issue #29100: On Windows, datetime.datetime.fromtimestamp(min_ts) fails with an OSError in test_timestamp_limits().
* | Merge 3.6Victor Stinner2017-02-101-3/+7
|\ \ | |/
| * Fix test_datetime on system with 32-bit time_tVictor Stinner2017-02-101-3/+7
| | | | | | | | Issue #29100: Catch OverflowError in the new test_timestamp_limits() test.
* | Merge 3.6Victor Stinner2017-02-103-21/+79
|\ \ | |/
| * Fix datetime.fromtimestamp(): check boundsVictor Stinner2017-02-103-21/+79
| | | | | | | | | | Issue #29100: Fix datetime.fromtimestamp() regression introduced in Python 3.6.0: check minimum and maximum years.
* | Merge 3.6 (fix #29519)?ukasz Langa2017-02-10733-159821/+16843
|\ \ | |/ |/|
| * merge 3.6Benjamin Peterson2017-02-091-5/+7
| |\
| * | Issue #29507: Fix _PyObject_CallFunctionVa()Victor Stinner2017-02-101-2/+4
| | | | | | | | | | | | is_size_t test was reversed. Bug spotted by INADA Naoki.
| * | Issue #29507: Update test_exceptionsVictor Stinner2017-02-091-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | test_unraisable() of test_exceptions expects that PyErr_WriteUnraisable(method) fails on repr(method). Before the previous change (7b8df4a5d81d), slot_tp_finalize() called PyErr_WriteUnraisable() with a PyMethodObject. In this case, repr(method) calls repr(self) which is BrokenRepr.__repr__() and the calls raises a new exception. After the previous change, slot_tp_finalize() uses an unbound method: repr() is called on a regular __del__() method which doesn't call repr(self). repr() doesn't fail anymore. PyErr_WriteUnraisable() doesn't call __repr__() anymore, so remove BrokenRepr unit test.
| * | Optimize slots: avoid temporary PyMethodObjectVictor Stinner2017-02-093-58/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #29507: Optimize slots calling Python methods. For Python methods, get the unbound Python function and prepend arguments with self, rather than calling the descriptor which creates a temporary PyMethodObject. Add a new _PyObject_FastCall_Prepend() function used to call the unbound Python method with self. It avoids the creation of a temporary tuple to pass positional arguments. Avoiding temporary PyMethodObject and avoiding temporary tuple makes Python slots up to 1.46x faster. Microbenchmark on a __getitem__() method implemented in Python: Median +- std dev: 121 ns +- 5 ns -> 82.8 ns +- 1.0 ns: 1.46x faster (-31%) Co-Authored-by: INADA Naoki <songofacandy@gmail.com>
| * | Null mergeSerhiy Storchaka2017-02-090-0/+0
| |\ \
| * | | Issue #29513: Fix outdated comment and remove redundand code is os.scandir().Serhiy Storchaka2017-02-091-7/+3
| | | |
| * | | Merge issue #26355 fix from 3.6Nick Coghlan2017-02-09733-159762/+16681
| |\ \ \
| | * | | Fix PyCFunction_Call() performance issueVictor Stinner2017-02-091-4/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #29259, #29465: PyCFunction_Call() doesn't create anymore a redundant tuple to pass positional arguments for METH_VARARGS. Add a new cfunction_call() subfunction.
| | * | | support: temp_dir() and change_cwd() uses repr() in error messageVictor Stinner2017-02-082-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Serhiy Storshaka pointed me that str(path) can emit a BytesWarning: use repr(path) instead.
| | * | | Fix refleaks if Py_EnterRecursiveCall() failsVictor Stinner2017-02-081-1/+4
| | | | | | | | | | | | | | | | | | | | Issue #29306: Destroy argstuple and kwdict if Py_EnterRecursiveCall() fails.
| | * | | Fix regrtest -j0 -R outputVictor Stinner2017-02-081-1/+1
| | | | | | | | | | | | | | | | | | | | Write also dots into stderr, instead of stdout.
| | * | | Update test_support for my temp_dir/change_cwd changesVictor Stinner2017-02-082-6/+19
| | | | |
| | * | | support: add more info on temp_dir() and change_cwd() failureVictor Stinner2017-02-081-4/+6
| | | | | | | | | | | | | | | | | | | | Log the OSError exception message.
| | * | | Issue #29306: Fix usage of Py_EnterRecursiveCall()Victor Stinner2017-02-082-73/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * *PyCFunction_*Call*() functions now call Py_EnterRecursiveCall(). * PyObject_Call() now calls directly _PyFunction_FastCallDict() and PyCFunction_Call() to avoid calling Py_EnterRecursiveCall() twice per function call
| | * | | Issue #29441: Merge from 3.6Berker Peksag2017-02-071-17/+4
| | |\ \ \
| | * \ \ \ Issue #29314: Merge with 3.6Mariatta Wijaya2017-02-061-1/+2
| | |\ \ \ \
| | * \ \ \ \ Issue #29371: merge with 3.6Mariatta Wijaya2017-02-06731-159740/+16578
| | |\ \ \ \ \
| | | * \ \ \ \ Issue #28164: Improves test on Windows 7Steve Dower2017-02-061-16/+22
| | | |\ \ \ \ \
| | | * \ \ \ \ \ Includes ensurepip and venv packages in nuget package.Steve Dower2017-02-061-2/+11
| | | |\ \ \ \ \ \
| | | * \ \ \ \ \ \ mergeRaymond Hettinger2017-02-06731-159740/+16578
| | | |\ \ \ \ \ \ \
| | | | * | | | | | | Optimize deque index, insert and rotate() methodsVictor Stinner2017-02-061-11/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #29452: Use METH_FASTCALL calling convention for index(), insert() and rotate() methods of collections.deque to avoid the creation a temporary tuple to pass position arguments. Speedup on deque methods: * d.rotate(): 1.10x faster * d.rotate(1): 1.24x faster * d.insert(): 1.18x faster * d.index(): 1.24x faster
| | | | * | | | | | | Prohibit implicit C function declarationsVictor Stinner2017-02-063-0/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #27659: use -Werror=implicit-function-declaration when possible (GCC and Clang, but it depends on the compiler version). Patch written by Chi Hsuan Yen.
| | | | * | | | | | | regrtest: don't fail immediately if a child does crashVictor Stinner2017-02-063-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #29362: Catch a crash of a worker process as a normal failure and continue to run next tests. It allows to get the usual test summary: single line result (OK/FAIL), total duration, etc.
| | | | * | | | | | | Merge from 3.6Berker Peksag2017-02-061-5/+5
| | | | |\ \ \ \ \ \ \
| | | | * | | | | | | | Issue #29460: _PyArg_NoKeywords(), _PyArg_NoStackKeywords() andSerhiy Storchaka2017-02-064-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _PyArg_NoPositional() now are macros.
| | | | * | | | | | | | Issue #29405: Make total calculation in _guess_delimiter more accurate.Xiang Zhang2017-02-061-2/+2
| | | | | | | | | | | |
| | | | * | | | | | | | Issue #20186: Regenerated Argument Clinic.Serhiy Storchaka2017-02-052-3/+3
| | | | | | | | | | | |
| | | | * | | | | | | | Merge from 3.6Steve Dower2017-02-04730-159715/+16450
| | | | |\ \ \ \ \ \ \ \
| | | | | * \ \ \ \ \ \ \ Issue #28489: Merge from 3.6Berker Peksag2017-02-051-1/+1
| | | | | |\ \ \ \ \ \ \ \
| | | | | * \ \ \ \ \ \ \ \ Merge from 3.6Steve Dower2017-02-04730-159715/+16450
| | | | | |\ \ \ \ \ \ \ \ \
| | | | | | * \ \ \ \ \ \ \ \ Issue #29319: Prevent RunMainFromImporter overwriting sys.path[0].Steve Dower2017-02-042-2/+14
| | | | | | |\ \ \ \ \ \ \ \ \
| | | | | | * \ \ \ \ \ \ \ \ \ Issue #29326: Ignores blank lines in ._pth files (Patch by Alexey Izbyshev)Steve Dower2017-02-044-14/+31
| | | | | | |\ \ \ \ \ \ \ \ \ \
| | | | | | * \ \ \ \ \ \ \ \ \ \ Merge issue #28164 and issue #29409Steve Dower2017-02-045-39/+101
| | | | | | |\ \ \ \ \ \ \ \ \ \ \
| | | | | | * \ \ \ \ \ \ \ \ \ \ \ Issue #29392: Prevent crash when passing invalid arguments into msvcrt module.Steve Dower2017-02-04730-159703/+16448
| | | | | | |\ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | * \ \ \ \ \ \ \ \ \ \ \ Issue #29416: Prevent infinite loop in pathlib.Path.mkdirSteve Dower2017-02-043-1/+14
| | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | * \ \ \ \ \ \ \ \ \ \ \ \ Issue #29444: Fixed out-of-bounds buffer access in the group() method ofSerhiy Storchaka2017-02-04730-159701/+16446
| | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the match object. Based on patch by WGH.
| | | | | | | | * \ \ \ \ \ \ \ \ \ \ \ \ Merge 3.6.Stefan Krah2017-02-041-1/+1
| | | | | | | | |\ \ \ \ \ \ \ \ \ \ \ \ \
| | | | | | | | * | | | | | | | | | | | | | Reduce load factor (from 66% to 60%) to improve effectiveness of linear probing.Raymond Hettinger2017-02-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Decreased density gives better collision statistics (average of 2.5 probes in a full table versus 3.0 previously) and fewer occurences of starting a second possibly overlapping sequence of 10 linear probes. Makes resizes a little more frequent but each with less work (fewer insertions and fewer collisions).
| | | | | | | | * | | | | | | | | | | | | | Issue #20186: Converted the tracemalloc module to Argument Clinic.Serhiy Storchaka2017-02-042-102/+315
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on patch by Georg Brandl.
| | | | | | | | * | | | | | | | | | | | | | Issue #20186: Converted the symtable module to Argument Clinic.Serhiy Storchaka2017-02-042-11/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original patch by Georg Brandl.
| | | | | | | | * | | | | | | | | | | | | | Removed redundant Argument Clinic directives.Serhiy Storchaka2017-02-043-19/+0
| | | | | | | | | | | | | | | | | | | | | |