Victor Stinner
5670764812
Use _PyObject_CallMethodIdObjArgs() in _ctypes
...
Issue #28915 : Replace _PyObject_CallMethodId() with
_PyObject_CallMethodIdObjArgs() in unpickle(). _PyObject_CallMethodIdObjArgs()
avoids the creation of a temporary tuple and doesn't have to parse a format
string.
Replace _PyObject_CallMethodId() with _PyObject_GetAttrId()+PyObject_Call() for
the second call since it requires to "unpack" a tuple.
Add also a check in the type of the second parameter (state): it must be a
tuple.
2016-12-09 15:18:31 +01:00
Victor Stinner
ddc120f4cf
Fix refleak introduced in change 032cbdb596fe
...
Issue #28915 .
2016-12-09 15:35:40 +01:00
Victor Stinner
c24217e144
regrtest --fromfile now accepts a list of filenames
2016-12-09 16:05:51 +01:00
Victor Stinner
b6ed57d980
Use _PyObject_CallMethodIdObjArgs() in _asyncio
...
Issue #28915 : Replace _PyObject_CallMethodId() with
_PyObject_CallMethodIdObjArgs() when the format string was only made of "O"
formats, PyObject* arguments.
_PyObject_CallMethodIdObjArgs() avoids the creation of a temporary tuple and
doesn't have to parse a format string.
2016-12-09 14:24:02 +01:00
Victor Stinner
070c4d7ca7
Issue #28915 : Use _PyObject_CallNoArg()
...
Replace PyObject_CallFunction(func, NULL) with _PyObject_CallNoArg(func).
2016-12-09 12:29:18 +01:00
Xavier de Gaye
ec80ba4693
Issue #26937 : Merge 3.6.
2016-12-09 09:35:49 +01:00
Xavier de Gaye
f44abdab1e
Issue #26937 : The chown() method of the tarfile.TarFile class does not fail now
...
when the grp module cannot be imported, as for example on Android platforms.
2016-12-09 09:33:09 +01:00
Victor Stinner
887b4307b6
Use _PyObject_FastCallVa() in type slots
...
Issue #28915 : Replace Py_VaBuildValue()+PyObject_Call() with
_PyObject_FastCallVa() to avoid the creation of temporary tuple.
2016-12-09 00:41:46 +01:00
Victor Stinner
7f39c0ccfc
Add _PyObject_VaCallFunctionObjArgs() private function
...
Issue #28915 : Similar to _PyObject_CallFunctionObjArgs() but use va_list to
pass arguments.
2016-12-09 00:40:33 +01:00
Victor Stinner
dbe28d26b4
time_strptime() uses PyObject_Call()
...
Issue #28915 : Use PyObject_Call() to pass a tuple of positional arguments,
instead of relying on _PyObject_CallMethodId() weird behaviour to unpack the
tuple.
2016-12-09 00:38:53 +01:00
Victor Stinner
2b635971e7
build_struct_time() uses Py_BuildValue()
...
Issue #28915 : Avoid calling _PyObject_CallMethodId() with "(...)" format to
avoid the creation of a temporary tuple: use Py_BuildValue() with
_PyObject_CallMethodIdObjArgs().
2016-12-09 00:38:16 +01:00
Victor Stinner
7e42541d08
Use _PyObject_CallMethodIdObjArgs()
...
Issue #28915 : Replace _PyObject_CallMethodId() with
_PyObject_CallMethodIdObjArgs() when the format string only use the format 'O'
for objects, like "(O)".
_PyObject_CallMethodIdObjArgs() avoids the code to parse a format string and
avoids the creation of a temporary tuple.
2016-12-09 00:36:19 +01:00
Victor Stinner
4c38154a43
Don't parenthesis in _PyObject_CallMethodId() format
...
Issue #28915 : Without parenthesis, _PyObject_CallMethodId() avoids the creation
a temporary tuple, and so is more efficient.
2016-12-09 00:33:39 +01:00
Victor Stinner
ef7def94c7
_PyObject_CallFunctionVa() uses fast call
...
Issue #28915 : Use _Py_VaBuildStack() to build a C array of PyObject* and then
use _PyObject_FastCall().
The function has a special case if the stack only contains one parameter and
the parameter is a tuple: "unpack" the tuple of arguments in this case.
2016-12-09 00:31:47 +01:00
Victor Stinner
e9abde4642
Add _Py_VaBuildStack() function
...
Issue #28915 : Similar to Py_VaBuildValue(), but work on a C array of PyObject*,
instead of creating a tuple.
2016-12-09 00:29:49 +01:00
Victor Stinner
b551b6c9f0
modsupport: replace int with Py_ssize_t
...
Issue #28915 : Py_ssize_t type is better for indexes. The compiler might emit
more efficient code for i++. Py_ssize_t is the type of a PyTuple index for
example.
Replace also "int endchar" with "char endchar".
2016-12-09 00:27:22 +01:00
Victor Stinner
e9aae2dcc5
modsupport: replace int with Py_ssize_t
...
Issue #28915 .
2016-12-09 00:24:47 +01:00
Victor Stinner
e83aab12b0
Add _PyObject_CallFunctionVa() helper
...
Issue #28915 : Add _PyObject_CallFunctionVa() helper to factorize code of
functions:
* PyObject_CallFunction()
* _PyObject_CallFunction_SizeT()
* callmethod()
2016-12-09 00:22:56 +01:00
Victor Stinner
3bb711998d
Add _PyObject_FastCallVa() helper
...
Issue #28915 : Add _PyObject_FastCallVa() helper to factorize code of functions:
* PyObject_CallFunctionObjArgs()
* PyObject_CallMethodObjArgs()
* _PyObject_CallMethodIdObjArgs()
Inline objargs_mkstack() into _PyObject_FastCallVa(), remove
objargs_mkstack().
2016-12-09 00:21:55 +01:00
Steve Dower
3b3a7c01bc
Issue #28896 : Deprecate WindowsRegistryFinder
2016-12-08 09:01:39 -08:00
Victor Stinner
808e47ee0c
Null merge 3.6
2016-12-08 17:17:17 +01:00
Xavier de Gaye
f434111332
Issue #26941 : Merge 3.6.
2016-12-08 12:21:53 +01:00
Xavier de Gaye
cb9ab0f50b
Issue #26941 : Fix test_threading that hangs on the Android armv7 qemu emulator.
2016-12-08 12:21:00 +01:00
Xavier de Gaye
cd35959bfc
Issue #26940 : Merge 3.6.
2016-12-08 11:27:27 +01:00
Xavier de Gaye
f79606debd
Issue #26940 : Fix test_importlib that hangs on the Android armv7 qemu emulator.
2016-12-08 11:26:18 +01:00
Xavier de Gaye
566ba3defd
Issue #26939 : Merge 3.6.
2016-12-08 11:09:54 +01:00
Xavier de Gaye
7522ef402c
Issue #26939 : Add the support.setswitchinterval() function to fix
...
test_functools hanging on the Android armv7 qemu emulator.
2016-12-08 11:06:56 +01:00
Benjamin Peterson
4ebcdac556
merge 3.6 ( #28898 )
2016-12-07 23:55:03 -08:00
Benjamin Peterson
0d5742dec0
guard HAVE_LONG_LONG definition to prevent redefinition ( #28898 )
2016-12-07 23:54:28 -08:00
Ned Deily
864a78ed72
Issue #28900 : Update documentation sidebar for 3.6.0rc.
2016-12-07 23:38:30 -05:00
Ned Deily
098f85bb7d
Issue #28900 : Update documentation sidebar for 3.6.0rc.
2016-12-07 23:37:12 -05:00
Ned Deily
932d40abf7
Issue #28900 : Update documentation sidebar for 3.6.0rc.
2016-12-07 23:34:49 -05:00
Yury Selivanov
ee19ab5962
Merge 3.6 (issue #28635 )
2016-12-07 16:20:10 -08:00
Yury Selivanov
eb58936b64
Issue #28635 : Drop the note that whatsnew is incomplete
2016-12-07 16:19:56 -08:00
Steve Dower
20367420c8
Issue #28896 : Deprecate WindowsRegistryFinder
2016-12-07 13:02:27 -08:00
INADA Naoki
ba6097734d
Issue #28818 : Simplify lookdict functions
2016-12-07 20:41:42 +09:00
Serhiy Storchaka
d7d266c113
Merge from 3.6.
2016-12-07 13:32:09 +02:00
Serhiy Storchaka
427f10b442
Merge from 3.5.
2016-12-07 13:31:47 +02:00
Serhiy Storchaka
606ab86c0e
Change order of io.UnsupportedOperation base classes.
...
This makes tests passing after changes by issue #5322 .
2016-12-07 13:31:20 +02:00
INADA Naoki
09e4a695d1
null merge from 3.6
2016-12-07 18:38:15 +09:00
INADA Naoki
2c5a830f2a
Issue #28731 : Optimize _PyDict_NewPresized() to create correct size dict.
...
Improve speed of dict literal with constant keys up to 30%.
2016-12-07 18:34:44 +09:00
Serhiy Storchaka
1b58d8aafa
Issue #5322 : Fixed setting __new__ to a PyCFunction inside Python code.
...
Original patch by Andreas Stührk.
2016-12-07 11:27:55 +02:00
Serhiy Storchaka
0c78634d78
Issue #5322 : Fixed setting __new__ to a PyCFunction inside Python code.
...
Original patch by Andreas Stührk.
2016-12-07 11:26:49 +02:00
Serhiy Storchaka
4fc7942118
Issue #28847 : A deprecation warning is now emitted if the index file is missed
...
and recreated in the 'r' and 'w' modes (will be an error in future Python
releases).
2016-12-07 11:11:12 +02:00
Serhiy Storchaka
43153e4d49
Issue #28847 : dbm.dumb now supports reading read-only files and no longer
...
writes the index file when it is not changed.
2016-12-07 11:02:18 +02:00
Serhiy Storchaka
520348e5c0
Issue #28847 : dbm.dumb now supports reading read-only files and no longer
...
writes the index file when it is not changed.
2016-12-07 11:00:06 +02:00
Serhiy Storchaka
028ace1ccb
Issue #28847 : dbm.dumb now supports reading read-only files and no longer
...
writes the index file when it is not changed.
2016-12-07 10:56:39 +02:00
Ned Deily
c29ba8b489
null merge from 3.6
2016-12-07 02:02:48 -05:00
Ned Deily
3ca43ed956
Prepare for 3.6.1. Any further 3.6.0 release candidates and 3.6.0 final will be cherrypicked and merged here.
2016-12-07 01:59:27 -05:00
Ned Deily
ec415dd88c
merge tag from 3.6
2016-12-06 19:07:19 -05:00