Serhiy Storchaka
095ef73492
Issue #29513 : Fix outdated comment and remove redundand code is os.scandir().
2017-02-09 20:05:51 +02:00
Victor Stinner
dd407d5006
Optimize deque index, insert and rotate() methods
...
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
2017-02-06 16:06:49 +01:00
Serhiy Storchaka
68a001dd59
Issue #29460 : _PyArg_NoKeywords(), _PyArg_NoStackKeywords() and
...
_PyArg_NoPositional() now are macros.
2017-02-06 10:41:46 +02:00
Serhiy Storchaka
97353845f8
Issue #20186 : Regenerated Argument Clinic.
2017-02-05 22:58:46 +02:00
Steve Dower
8c67fdd24b
Merge from 3.6
2017-02-04 17:37:00 -08:00
Steve Dower
a7e164881e
Adds precheck for console filename to fix Windows 7.
2017-02-04 17:36:47 -08:00
Steve Dower
49226e23f6
Issue #29319 : Prevent RunMainFromImporter overwriting sys.path[0].
2017-02-04 15:41:12 -08:00
Steve Dower
c008ddeb21
Issue #29319 : Prevent RunMainFromImporter overwriting sys.path[0].
2017-02-04 15:39:38 -08:00
Steve Dower
6d46ae7d12
Issue #29319 : Prevent RunMainFromImporter overwriting sys.path[0].
2017-02-04 15:39:21 -08:00
Steve Dower
43fec9b419
Merge issue #28164 and issue #29409
2017-02-04 15:14:18 -08:00
Steve Dower
722e3e2705
Issue #28164 : Correctly handle special console filenames (patch by Eryk Sun)
2017-02-04 15:07:46 -08:00
Steve Dower
eacee98679
Issue #29409 : Implement PEP 529 for io.FileIO (Patch by Eryk Sun)
2017-02-04 14:38:11 -08:00
Serhiy Storchaka
ef5176769d
Issue #29444 : Fixed out-of-bounds buffer access in the group() method of
...
the match object. Based on patch by WGH.
2017-02-04 22:57:44 +02:00
Serhiy Storchaka
86e42376c2
Issue #29444 : Fixed out-of-bounds buffer access in the group() method of
...
the match object. Based on patch by WGH.
2017-02-04 22:55:40 +02:00
Serhiy Storchaka
7e10dbbd45
Issue #29444 : Fixed out-of-bounds buffer access in the group() method of
...
the match object. Based on patch by WGH.
2017-02-04 22:53:57 +02:00
Serhiy Storchaka
b451f91786
Issue #20186 : Converted the tracemalloc module to Argument Clinic.
...
Based on patch by Georg Brandl.
2017-02-04 12:18:38 +02:00
Serhiy Storchaka
5106ad13b2
Issue #20186 : Converted the symtable module to Argument Clinic.
...
Original patch by Georg Brandl.
2017-02-04 12:13:20 +02:00
Serhiy Storchaka
685c203e84
Removed redundant Argument Clinic directives.
2017-02-04 11:53:22 +02:00
Serhiy Storchaka
9326028115
Issue #20185 : Converted the gc module to Argument Clinic.
2017-02-04 11:19:59 +02:00
Serhiy Storchaka
a5a55902c1
Issue #29300 : Use Argument Clinic for getting struct object from the format.
2017-02-04 11:14:52 +02:00
Victor Stinner
c0f59ad145
Rename struct.unpack() 2nd parameter to "buffer"
...
Issue #29300 : Rename struct.unpack() second parameter from "inputstr" to
"buffer", and use the Py_buffer type.
Fix also unit tests on struct.unpack() which passed a Unicode string instead of
a bytes string as struct.unpack() second parameter. The purpose of
test_trailing_counter() is to test invalid format strings, not to test the
buffer parameter.
2017-02-02 14:24:16 +01:00
Victor Stinner
3f2d10132d
Issue #29300 : Convert _struct module to Argument Clinic
...
* The struct module now requires contiguous buffers.
* Convert most functions and methods of the _struct module to Argument Clinic
* Use "Py_buffer" type for the "buffer" argument. Argument Clinic is
responsible to create and release the Py_buffer object.
* Use "PyStructObject *" type for self to avoid explicit conversions.
* Add an unit test on the _struct.Struct.unpack_from() method to test passing
arguments as keywords.
* Rephrase docstrings.
* Rename "fmt" argument to "format" in docstrings and the documentation.
As a side effect, functions and methods which used METH_VARARGS calling
convention like struct.pack() now use the METH_FASTCALL calling convention
which avoids the creation of temporary tuple to pass positional arguments and
so is faster. For example, struct.pack("i", 1) becomes 1.56x faster (-36%)::
$ ./python -m perf timeit \
-s 'import struct; pack=struct.pack' 'pack("i", 1)' \
--compare-to=../default-ref/python
Median +- std dev: 119 ns +- 1 ns -> 76.8 ns +- 0.4 ns: 1.56x faster (-36%)
Significant (t=295.91)
Patch co-written with Serhiy Storchaka.
2017-02-02 12:09:30 +01:00
Victor Stinner
fd6d0d2a18
Issue #29368 : Fix _Pickle_FastCall() usage in do_append()
...
_Pickle_FastCall() has a surprising API: it decrements the reference counter of
its second argument.
2017-02-02 10:56:47 +01:00
Serhiy Storchaka
bee09aecc2
Issue #29368 : The extend() method is now called instead of the append()
...
method when unpickle collections.deque and other list-like objects.
This can speed up unpickling to 2 times.
2017-02-02 11:12:47 +02:00
Benjamin Peterson
2145387abc
merge 3.6 ( #29398 )
2017-01-31 23:31:20 -08:00
Benjamin Peterson
2b3f4c1efb
merge 3.5 ( #29398 )
2017-01-31 23:31:10 -08:00
Benjamin Peterson
ec977c3028
gc types needs to be allocated as such ( closes #29398 )
2017-01-31 23:31:02 -08:00
doko@ubuntu.com
9ac4815240
merge 3.6
2017-01-31 13:53:39 +01:00
doko@ubuntu.com
cd12f7cb5c
merge 3.5
2017-01-31 13:51:21 +01:00
doko@ubuntu.com
34e7e2ecb1
- Issue #29169 : Update zlib to 1.2.10.
2017-01-31 13:49:48 +01:00
Martin Panter
3f16f57ea4
Issue #29384 : Remove Be OS scripts from Modules/, unused in 3.0+
2017-01-29 10:21:57 +00:00
Serhiy Storchaka
d1302c0154
Issue #28999 : Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever
...
possible but Coccinelle couldn't find opportunity.
2017-01-23 10:23:58 +02:00
Serhiy Storchaka
228b12edcc
Issue #28999 : Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever
...
possible. Patch is writen with Coccinelle.
2017-01-23 09:47:21 +02:00
Serhiy Storchaka
2a404b63d4
Issue #28769 : The result of PyUnicode_AsUTF8AndSize() and PyUnicode_AsUTF8()
...
is now of type "const char *" rather of "char *".
2017-01-22 23:07:07 +02:00
Xiang Zhang
1dfaa6c38a
Issue #29092 : Merge 3.6.
2017-01-22 13:10:12 +08:00
Xiang Zhang
4459e009ed
Issue #29092 : Sync os.stat's doc and docstring on path type.
2017-01-22 13:04:17 +08:00
Mark Dickinson
5e65cd39df
Issue #29282 : Backed out changeset b33012ef1417
2017-01-21 13:10:52 +00:00
Mark Dickinson
d1b230e48b
Issue #29282 : add fused multiply-add function, math.fma.
2017-01-21 12:35:30 +00:00
Serhiy Storchaka
c9ea933586
Issue #20186 : Converted the math module to Argument Clinic.
...
Patch by Tal Einat.
2017-01-19 18:13:09 +02:00
Serhiy Storchaka
b813a0e948
Issue #20186 : Converted the _operator module to Argument Clinic.
...
Patch by Tal Einat.
2017-01-19 17:44:13 +02:00
Gregory P. Smith
8128d5a491
Address a minor Coverity warning re: unchecked PyArg_ParseTuple calls
...
in socket.sendto(). A PyErr_Occurred() check was happening later, but
it is better to just use the return value and not call PyErr_Occurred().
2017-01-17 16:54:56 -08:00
Victor Stinner
aeaf294608
_hashopenssl uses METH_FASTCALL
2017-01-17 04:20:26 +01:00
Victor Stinner
0c4a828cad
Run Argument Clinic: METH_VARARGS=>METH_FASTCALL
...
Issue #29286 . Run Argument Clinic to get the new faster METH_FASTCALL calling
convention for functions using "boring" positional arguments.
Manually fix _elementtree: _elementtree_XMLParser_doctype() must remain
consistent with the clinic code.
2017-01-17 02:21:47 +01:00
Victor Stinner
259f0e4437
Run Argument Clinic: METH_VARARGS=>METH_FASTCALL
...
Issue #29286 . Run Argument Clinic to get the new faster METH_FASTCALL calling
convention for functions using only positional arguments.
2017-01-17 01:35:17 +01:00
Victor Stinner
3e1fad6913
Rename _PyArg_ParseStack to _PyArg_ParseStackAndKeywords
...
Issue #29286 .
2017-01-17 01:29:01 +01:00
Benjamin Peterson
510df6f272
merge 3.6
2017-01-16 00:05:54 -08:00
Benjamin Peterson
741c45adab
merge 3.5
2017-01-16 00:05:47 -08:00
Benjamin Peterson
a105dd3dc0
generate spaces instead of tabs into config.c
2017-01-16 00:05:12 -08:00
Martin Panter
446a498a63
Merge doc fixes from 3.6
2017-01-14 09:56:00 +00:00
Martin Panter
4659ddc433
Merge doc fixes from 3.5
2017-01-14 09:54:57 +00:00