Commit Graph

98776 Commits

Author SHA1 Message Date
Steve Dower 21fae03e16 Issue #29392: Prevent crash when passing invalid arguments into msvcrt module. 2017-02-04 15:05:13 -08:00
Steve Dower 479d96c694 Issue #29416: Prevent infinite loop in pathlib.Path.mkdir 2017-02-04 14:56:57 -08:00
Steve Dower 1add96f1b6 Issue #29416: Prevent infinite loop in pathlib.Path.mkdir 2017-02-04 14:55:16 -08:00
Steve Dower d3c4853b78 Issue #29416: Prevent infinite loop in pathlib.Path.mkdir 2017-02-04 14:54:56 -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
Stefan Krah 26581785f3 Merge 3.6. 2017-02-04 14:59:11 +01:00
Stefan Krah 75c0d4f6bb Issue29439: _decimal on Android requires linking with libm.
Patch by Chi Hsuan Yen.
2017-02-04 14:58:50 +01:00
Raymond Hettinger 5cd87a8d61 Reduce load factor (from 66% to 60%) to improve effectiveness of linear probing.
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).
2017-02-04 02:43:42 -08: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
Serhiy Storchaka 8973de5bab Issue #27867: Silenced may-be-used-uninitialized warnings after
using PySlice_GetIndicesEx() in debug builds.
2017-02-04 11:08:04 +02:00
Serhiy Storchaka ed4de13f06 Issue #27867: Silenced may-be-used-uninitialized warnings after
using PySlice_GetIndicesEx() in debug builds.
2017-02-04 11:07:17 +02:00
Serhiy Storchaka c7611362b4 Issue #27867: Silenced may-be-used-uninitialized warnings after
using PySlice_GetIndicesEx() in debug builds.
2017-02-04 11:04:00 +02:00
Berker Peksag 09f939d2c4 Issue #29198: Merge from 3.6 2017-02-04 09:35:10 +03:00
Berker Peksag 5a001eea5b Issue #29198: Merge from 3.5 2017-02-04 09:34:48 +03:00
Berker Peksag 5702fb7b4d Issue #29198: Fix indentation and markup in typing.rst
Patch by Jelle Zijlstra.
2017-02-04 09:34:16 +03:00
Berker Peksag b1d3f661d7 Issue #29198: Merge from 3.6 2017-02-04 09:19:04 +03:00
Berker Peksag 14169b2a89 Issue #29198: Merge from 3.5 2017-02-04 09:18:42 +03:00
Berker Peksag 38962a6fe2 Issue #29198: Document typing.AsyncGenerator
Patch by Jelle Zijlstra.
2017-02-04 09:18:11 +03:00
Serhiy Storchaka 19d2597ed5 Issue #29311: Regenerate Argument Clinic. 2017-02-04 08:05:07 +02:00
Xiang Zhang bbd256984d null merge 2017-02-03 11:08:45 +08:00
INADA Naoki 5566bbb8d5 Issue #29263: LOAD_METHOD support for C methods
Calling builtin method is at most 10% faster.
2017-02-03 07:43:03 +09:00
Vinay Sajip 144fff8b90 Closes #29213: Merged fix from 3.6. 2017-02-02 19:33:43 +00:00
Vinay Sajip 3746619b84 Fixes #29213: merged fix from 3.5. 2017-02-02 19:26:48 +00:00
Vinay Sajip db38b6c9a9 Fixes #29213: regularised EOLs of venv scripts. 2017-02-02 19:25:24 +00:00
Vinay Sajip 7601d780a7 Closes #24875: Merged fix from 3.6. 2017-02-02 19:17:51 +00:00
Vinay Sajip 993f535ae9 Fixes #24875: Merged fix from 3.5. 2017-02-02 19:17:02 +00:00
Vinay Sajip db6322cb8a Fixes #24875: pip can now be installed in a venv with --system-site-packages. 2017-02-02 19:05:19 +00:00
Raymond Hettinger e1af6964b4 Remove unnecessary variables.
* so->used never gets changed during a resize
* so->filled only changes when dummies are present and being eliminated
2017-02-02 08:24:48 -08:00
Serhiy Storchaka 196a7bc1ea Issue #29421: Make int.to_bytes() and int.from_bytes() slightly faster
(10-20% for small integers).
2017-02-02 16:54:45 +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 a0e454b69d Null merge 3.6 2017-02-02 14:19:26 +01:00
Victor Stinner 64e91275e3 Merge 3.5 2017-02-02 14:18:43 +01:00
Victor Stinner a5917d1d15 Issue #29300: test_struct tests unpack_from() with keywords
Add an unit test on the _struct.Struct.unpack_from() method to test passing
arguments as keywords.
2017-02-02 14:18:18 +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
Mariatta Wijaya bb19bf275b Issue #29381: merge with 3.6 2017-02-01 21:03:48 -08:00
Mariatta Wijaya 23dcccb75b Issue #29381: Clarify ordering of UNIX shebang line as source encoding line 2017-02-01 20:55:47 -08:00
Mariatta Wijaya 77bb0f4900 Backed out changeset 3d712292f2fa 2017-02-01 20:38:55 -08:00
Mariatta Wijaya e2d8bc52c4 Issue #29381: Clarify ordering of UNIX shebang line as source encoding line 2017-02-01 20:21:22 -08:00
Serhiy Storchaka 495e8808d7 Issue #20185: Converted the int class to Argument Clinic.
Based on patch by Vajrasky Kok.
2017-02-01 23:12:20 +02:00
Berker Peksag ebf8a6d9b0 Issue #29407: Merge from 3.6 2017-02-01 22:38:12 +03:00
Berker Peksag c6fe419d1b Issue #29407: Merge from 3.5 2017-02-01 22:37:49 +03:00