Berker Peksag
09808e7530
Issue #12982 : Merge from 3.5
2016-08-20 11:12:20 +03:00
Berker Peksag
f43bc98c48
Issue #12982 : Thanks to PEP 488, Python no longer creates .pyo files
2016-08-20 11:11:52 +03:00
Martin Panter
d210a70dd9
Minor spelling fixes
2016-08-20 08:03:06 +00:00
Martin Panter
4bf6ed556d
Issue #27614 : Merge test_docxmlrpc from 3.5
2016-08-20 07:39:15 +00:00
Martin Panter
051b2201a7
Issue #27787 : Merge regrtest fixup from 3.5
2016-08-20 07:38:21 +00:00
Ethan Furman
332dbc7325
Issue26988: remove AutoEnum
2016-08-20 00:00:52 -07:00
Martin Panter
d874c05547
Issue #27614 : Avoid race in test_docxmlrpc server setup
2016-08-20 06:50:58 +00:00
Martin Panter
68c1f1ed03
Issue #27787 : Clean up weak references before checking for dangling threads
2016-08-20 06:50:14 +00:00
Ned Deily
1cce732fcf
Issue #27713 : merge from 3.5
2016-08-19 22:13:14 -04:00
Ned Deily
17cfc86422
Issue #27713 : Surpress spurious build warnings when updating importlib's
...
bootstrap files:
Could not find platform dependent libraries <exec_prefix
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Patch by Xiang Zhang
2016-08-19 22:12:06 -04:00
Victor Stinner
a88b2f4e5e
Fix reference leak in tb_printinternal()
...
Issue #26823 .
2016-08-20 03:05:13 +02:00
Victor Stinner
253021dd94
Issue #27366 : Fix init_subclass()
...
Handle PyTuple_New(0) failure.
2016-08-20 02:37:41 +02:00
Victor Stinner
ea5e5990c9
pattern_subx() now uses fast call
...
Issue #27128 .
2016-08-20 01:38:00 +02:00
Victor Stinner
7fbac45287
_elementtree: deepcopy() now uses fast call
...
Issue #27128 .
2016-08-20 01:34:44 +02:00
Victor Stinner
c3ccaae6f3
sys_pyfile_write_unicode() now uses fast call
...
Issue #27128 .
2016-08-20 01:24:22 +02:00
Victor Stinner
78da82bf3e
call_trampoline() now uses fast call
...
Issue #27128 .
2016-08-20 01:22:57 +02:00
Victor Stinner
71cb64acc2
PyErr_PrintEx() now uses fast call
...
Issue #27128 .
2016-08-20 00:57:43 +02:00
Victor Stinner
df142fdc4b
import_name() now uses fast call
...
Issue #27128 : import_name() now calls _PyObject_FastCall() to avoid the
creation of a temporary tuple.
2016-08-20 00:44:42 +02:00
Victor Stinner
9def0901e2
PyFile_WriteObject() now uses fast call
...
Issue #27128 : PyFile_WriteObject() now calls _PyObject_FastCall() to avoid the
creation of a temporary tuple.
2016-08-20 00:44:04 +02:00
Victor Stinner
75210697ec
Issue #27128 : _pickle uses fast call
...
Use _PyObject_FastCall() to avoid the creation of temporary tuple.
2016-08-19 18:59:15 +02:00
Victor Stinner
f7a4c488b5
keyobject_richcompare() now uses fast call
...
Issue #27128 : keyobject_richcompare() now calls _PyObject_FastCall() using a
small stack allocated on the C stack to avoid a temporary tuple.
2016-08-19 18:52:35 +02:00
Victor Stinner
99ee9c70a7
calliter_iternext() now uses fast call
...
Issue #27128 : calliter_iternext() now calls _PyObject_FastCall() to avoid a
temporary empty tuple.
Cleanup also the code to reduce the indentation level.
2016-08-19 18:47:10 +02:00
Victor Stinner
6911267615
slot_tp_iter() now uses fast call
...
Issue #27128 : slot_tp_iter() now calls _PyObject_FastCall() to avoid a
temporary empty tuple.
2016-08-19 18:41:02 +02:00
Victor Stinner
20a3007a8d
slot_nb_bool() now uses fast call
...
Issue #27128 : slot_nb_bool() now calls _PyObject_FastCall() to avoid a
temporary empty tuple to call the slot function.
2016-08-19 18:28:25 +02:00
Victor Stinner
a12eec48b6
Issue #27128 : Cleanup slot_nb_bool()
...
Use an error label to reduce the level of indentation.
2016-08-19 18:26:05 +02:00
Victor Stinner
5e87749a8e
Issue #27128 : slot_sq_item() uses fast call
...
slot_sq_item() now calls _PyObject_FastCall() to avoid the creation of a
temporary tuple of 1 item to pass the 'item' argument to the slot function.
2016-08-19 18:19:42 +02:00
Victor Stinner
018016d8e3
Issue #27128 : Cleanup slot_sq_item()
...
* Invert condition of test to avoid levels of indentation
* Remove useless Py_XDECREF(args) in the error block
* Replace Py_XDECREF(func) with Py_DECREF(func) in the error block: func cannot
be NULL when reaching the error block
2016-08-19 18:17:37 +02:00
Victor Stinner
f736c261a2
call_method() and call_maybe() now use fast call
...
Issue #27128 . The call_method() and call_maybe() functions of typeobject.c now
use fast call for empty format string to avoid the creation of a temporary
empty tuple.
2016-08-19 18:05:37 +02:00
Victor Stinner
94463c980e
Cleanup call_method() and call_maybe()
...
Issue #27128 . Move va_start/va_end around Py_VaBuildValue().
2016-08-19 18:01:41 +02:00
Victor Stinner
56142c701b
Merge 3.5 (fix refleak in call_maybe())
2016-08-19 17:58:30 +02:00
Victor Stinner
6902ddf2ca
Fix a refleak in call_maybe()
...
Issue #27128 . Fix a reference leak if creating the tuple to pass positional
parameters fails.
2016-08-19 17:58:12 +02:00
Victor Stinner
f2abf5c11a
regrtest: replace "Result:" with "Tests result:"
2016-08-19 17:54:25 +02:00
Victor Stinner
59e9ca6bda
Merge 3.5 (fix refleak in call_method)
2016-08-19 17:52:08 +02:00
Victor Stinner
d925bd5794
Fix a refleak in call_method()
...
Issue #27128 . Fix a reference leak if creating the tuple to pass positional
parameters fails.
2016-08-19 17:51:49 +02:00
Victor Stinner
a7720f61aa
contains and rich compare slots use fast call
...
Issue #27128 . Modify slot_sq_contains() and slot_tp_richcompare() to use fast
call to avoid a temporary tuple to pass a single positional parameter.
2016-08-19 17:48:51 +02:00
Victor Stinner
8a31c82093
Fix PyObject_Call() parameter names
...
Issue #27128 : arg=>args, kw=>kwargs.
Same change for PyEval_CallObjectWithKeywords().
2016-08-19 17:12:23 +02:00
Victor Stinner
0d1a799343
Avoid call_function_tail() for empty format str
...
Issue #27128 , PyObject_CallFunction(), _PyObject_FastCall() and callmethod():
if the format string of parameters is empty, avoid the creation of an empty
tuple: call _PyObject_FastCall() without parameters.
2016-08-19 17:04:54 +02:00
Victor Stinner
71aea8e981
PEP 7: add {...} around null_error() in abstract.c
...
Issue #27128 .
2016-08-19 16:59:55 +02:00
Berker Peksag
53926f19cd
Issue #27801 : Skip test_update_lines_cols when update_lines_cols() is not available
2016-08-19 17:59:01 +03:00
Victor Stinner
d042f1f5eb
Cleanup callmethod()
...
Make callmethod() less weird: don't decrement func reference counter,
the caller is now responsible to do that.
Issue #27128 .
2016-08-19 16:56:49 +02:00
Victor Stinner
64faad6e45
Cleanup call_function_tail()
...
Make call_function_tail() less weird: don't decrement args reference counter,
the caller is now responsible to do that. The caller now also checks if args is
NULL.
Issue #27128 .
2016-08-19 16:50:49 +02:00
Victor Stinner
8880708f81
call_function_tail() uses fast call
...
Issue #27128 : Modify call_function_tail() to use _PyObject_FastCall() when args
is not a tuple to avoid the creation of a temporary tuple.
call_function_tail() is used by:
* PyObject_CallFunction()
* PyObject_CallMethod()
* _PyObject_CallMethodId()
2016-08-19 16:44:19 +02:00
Victor Stinner
3f745bf1d9
PyEval_CallObjectWithKeywords() uses fast call
...
Issue #27128 : Modify PyEval_CallObjectWithKeywords() to use
_PyObject_FastCall() when args==NULL and kw==NULL. It avoids the creation of a
temporary empty tuple for positional arguments.
2016-08-19 16:42:42 +02:00
Victor Stinner
9be7e7b52f
Add _PyObject_FastCall()
...
Issue #27128 : Add _PyObject_FastCall(), a new calling convention avoiding a
temporary tuple to pass positional parameters in most cases, but create a
temporary tuple if needed (ex: for the tp_call slot).
The API is prepared to support keyword parameters, but the full implementation
will come later (_PyFunction_FastCall() doesn't support keyword parameters
yet).
Add also:
* _PyStack_AsTuple() helper function: convert a "stack" of parameters to
a tuple.
* _PyCFunction_FastCall(): fast call implementation for C functions
* _PyFunction_FastCall(): fast call implementation for Python functions
2016-08-19 16:11:43 +02:00
Berker Peksag
fa46aa7899
Issue #27801 : Merge from 3.5
2016-08-19 17:59:31 +03:00
Victor Stinner
4bb31e90f0
Fix a clang warning in grammar.c
...
Clang is smarter than GCC and emits a warning for dead code after a function
declared with __attribute__((__noreturn__)) (Py_FatalError).
2016-08-19 15:11:56 +02:00
Berker Peksag
7fbce56a57
Issue #12946 : Remove dead code in PyModule_GetDict
...
PyModule_NewObject already sets md_dict to PyDict_New():
m->md_dict = PyDict_New();
2016-08-19 12:00:13 +03:00
Berker Peksag
7a01508bbe
Issue #12946 : Merge from 3.5
2016-08-19 11:52:08 +03:00
Berker Peksag
c01e766b54
Issue #12946 : Document that PyModule_GetDict can fail in some cases
2016-08-19 11:51:39 +03:00
Berker Peksag
3f015a64b8
Issue #27157 : Make only type() itself accept the one-argument form
...
Patch by Eryk Sun and Emanuel Barry.
2016-08-19 11:04:07 +03:00