| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
Update also the Release Schedule to Python 3.7.
|
|
|
|
|
|
|
| |
If the IRC notification is stored in plaintext, then anyone who forks
the repository and also adds it to travis will send notifications to
the IRC channel for their fork by default. Since the secure variable
is encrypted using a repository specific key, this will only work when
it is being built using the correct repository.
|
|
|
| |
bpo-29527.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
This file will be displayed to contributors when they create a pull request in any branch (hence why it is not written in a branch-specific way).
|
|
|
|
|
| |
Sorry, I didn't want to push this change before the review :-( I was pushing a
change into the 2.7 branch.
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|\ |
|
| |
| |
| |
| |
| | |
Issue #29100: On Windows, datetime.datetime.fromtimestamp(min_ts) fails with an
OSError in test_timestamp_limits().
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Issue #29100: Catch OverflowError in the new test_timestamp_limits() test.
|
|\ \
| |/ |
|
| |
| |
| |
| |
| | |
Issue #29100: Fix datetime.fromtimestamp() regression introduced in Python
3.6.0: check minimum and maximum years.
|
|\ \
| |/ |
|
| |\ |
|
| | | |
|
|\ \ \
| |/ / |
|
| | | |
|
| | |
| | |
| | |
| | | |
is_size_t test was reversed. Bug spotted by INADA Naoki.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
|\ \ \
| |/ / |
|
| | | |
|
| | | |
|
|\ \ \
| |/ / |
|
| |\ \
| | |/ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add canonical header link on each page to corresponding major
version of the documentation.
Patch by Matthias Bussonnier.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
Serhiy Storshaka pointed me that str(path) can emit a BytesWarning: use
repr(path) instead.
|
| | |
| | |
| | |
| | | |
Issue #29306: Destroy argstuple and kwdict if Py_EnterRecursiveCall() fails.
|
| | |
| | |
| | |
| | | |
Write also dots into stderr, instead of stdout.
|
| | | |
|
| | |
| | |
| | |
| | | |
Log the OSError exception message.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* *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
|
|\ \ \
| |/ / |
|
| |\ \
| | |/ |
|
| | |
| | |
| | |
| | | |
asyncio-task.rst
|
|\ \ \
| |/ / |
|
| |\ \
| | |/ |
|
| | | |
|
|\ \ \
| |/ / |
|
| |\ \
| | |/ |
|
| | | |
|
|\ \ \
| |/ / |
|