Sylvain
7445381c60
bpo-30600: Fix error messages (condition order in Argument Clinic) ( #2051 )
...
The function '_PyArg_ParseStack()' and
'_PyArg_UnpackStack' were failing (with error
"XXX() takes Y argument (Z given)") before
the function '_PyArg_NoStackKeywords()' was called.
Thus, the latter did not raise its more meaningful
error : "XXX() takes no keyword arguments".
2017-06-10 07:51:48 +03:00
Lisa Roach
64505a1f6c
bpo-30486: Allow setting cell value ( #1840 )
...
The cell_contents attribute of the cell object is now writable.
2017-06-08 14:43:26 +03:00
Serhiy Storchaka
6cca5c8459
bpo-30592: Fixed error messages for some builtins. ( #1996 )
...
Error messages when pass keyword arguments to some builtins that
don't support keyword arguments contained double parenthesis: "()()".
The regression was introduced by bpo-30534.
2017-06-08 14:41:19 +03:00
Serhiy Storchaka
5eb788bf7f
bpo-30534: Fixed error messages when pass keyword arguments ( #1901 )
...
to functions implemented in C that don't support this.
Also unified error messages for functions that don't take positional or keyword
arguments.
2017-06-06 18:45:22 +03:00
Serhiy Storchaka
4e624ca50a
bpo-30509: Clean up calling type slots. ( #1883 )
...
Also speed up slot_sq_item.
2017-06-01 08:18:25 +03:00
Serhiy Storchaka
753bca3934
bpo-27945: Fixed various segfaults with dict. ( #1657 )
...
Based on patches by Duane Griffin and Tim Mitchell.
2017-05-20 12:30:02 +03:00
Serhiy Storchaka
d896985bb2
bpo-25794: Fix `type.__setattr__()` for non-interned attribute names. ( #1652 )
...
Based on patch by Eryk Sun.
2017-05-20 08:48:06 +03:00
Serhiy Storchaka
7e19dbc92e
bpo-28974: `object.__format__(x, '')` is now equivalent to `str(x)` ( #506 )
...
rather than `format(str(self), '')`.
2017-05-13 12:40:52 +03:00
Xiang Zhang
a66f9c6bb1
bpo-30341: Improve _PyTrash_thread_destroy_chain() a little bit ( #1545 )
...
* add a comment about why we need to increase trash_delete_nesting
* move increase and decrese outside of the loop
2017-05-13 13:36:14 +08:00
Xiang Zhang
2ddf5a19c3
bpo-30281: Fix the default value for stop in PySlice_Unpack() ( #1480 )
2017-05-10 18:19:41 +08:00
Serhiy Storchaka
1a5856bf92
bpo-29867: Add asserts in PyTuple_GET_SIZE, PyList_GET_SIZE and PySet_GET_SIZE. ( #751 )
2017-04-22 01:48:11 +02:00
Serhiy Storchaka
40db90c1ce
bpo-29802: Fix reference counting in module-level struct functions ( #1213 )
...
when pass arguments of wrong type.
2017-04-20 21:19:31 +03:00
Dong-hee Na
b4dc6af7a7
bpo-12414: Update code_sizeof() to take in account co_extra memory. ( #1168 )
2017-04-20 10:31:17 +03:00
Serhiy Storchaka
bf623ae884
bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() ( #1096 )
...
raised an error.
Replace them with using concrete types API that never fails if appropriate.
2017-04-19 20:03:52 +03:00
Xiang Zhang
8e1ddbd592
fix a refleak in slot_sq_length ( #1162 )
2017-04-17 00:54:21 +08:00
Serhiy Storchaka
55fe1ae970
bpo-30022: Get rid of using EnvironmentError and IOError (except test… ( #1051 )
2017-04-16 10:46:38 +03:00
Serhiy Storchaka
baf9f29811
bpo-29839: Raise ValueError rather than OverflowError in len() for negative values. ( #701 )
2017-04-16 09:37:18 +03:00
Serhiy Storchaka
813f943c59
bpo-29838: Add asserts for checking results of sq_length and mq_length slots. ( #700 )
...
Negative result should be returned only when an error is set.
2017-04-16 09:21:44 +03:00
Serhiy Storchaka
b785396ab4
bpo-29998: Pickling and copying ImportError now preserves name and path ( #1010 )
...
attributes.
2017-04-08 09:55:07 +03:00
Serhiy Storchaka
b879fe82e7
Expand the PySlice_GetIndicesEx macro. ( #1023 )
2017-04-08 09:53:51 +03:00
Serhiy Storchaka
205e00c5cf
bpo-29914: Fix default implementations of __reduce__ and __reduce_ex__(). ( #843 )
...
object.__reduce__() no longer takes arguments, object.__reduce_ex__() now
requires one argument.
2017-04-08 09:52:59 +03:00
Serhiy Storchaka
bae6881b42
Update Argument Clinic generated code for bpo-29878. ( #1001 )
2017-04-05 12:00:42 +03:00
Lisa Roach
43ba8861e0
bpo-29549: Fixes docstring for str.index ( #256 )
...
* Updates B.index documentation.
* Updates str.index documentation, makes it Argument Clinic compatible.
* Removes ArgumentClinic code.
* Finishes string.index documentation.
* Updates string.rindex documentation.
* Documents B.rindex.
2017-04-04 22:36:22 -07:00
INADA Naoki
e82cf8675b
bpo-29949: Fix set memory usage regression (GH-943)
...
Revert "Minor factoring: move redundant resize scaling logic into the resize function."
This reverts commit 4897300276
.
2017-04-01 17:20:25 +09:00
T. Wouters
06bb4873d6
Fix spurious MemoryError introduced by PR #886 . ( #930 )
...
Fix MemoryError caused by moving around code in PR #886 ; nbytes was sometimes used unitinitalized (in non-debug builds, when use_calloc was false and elsize was 0).
2017-03-31 10:10:19 -07:00
T. Wouters
a00c3fd12d
bpo-29941: Assert fixes ( #886 )
...
Make a non-Py_DEBUG, asserts-enabled build of CPython possible. This means
making sure helper functions are defined when NDEBUG is not defined, not
just when Py_DEBUG is defined.
Also fix a division-by-zero in obmalloc.c that went unnoticed because in Py_DEBUG mode, elsize is never zero.
2017-03-31 09:14:41 -07:00
Serhiy Storchaka
d4edfc9abf
bpo-29935: Fixed error messages in the index() method of tuple, list and deque ( #887 )
...
when pass indices of wrong type.
2017-03-30 18:29:23 +03:00
Serhiy Storchaka
918403cfc3
bpo-29816: Shift operation now has less opportunity to raise OverflowError. ( #680 )
...
ValueError always is raised rather than OverflowError for negative counts.
Shifting zero with non-negative count always returns zero.
2017-03-30 09:47:07 +03:00
Serhiy Storchaka
0a58f72762
bpo-24821: Fixed the slowing down to 25 times in the searching of some ( #505 )
...
unlucky Unicode characters.
2017-03-30 09:11:10 +03:00
Serhiy Storchaka
ba85d69a3e
bpo-29878: Add global instances of int for 0 and 1. ( #852 )
2017-03-30 09:09:41 +03:00
Louie Lu
c431854a09
bpo-29927: Remove duplicate BufferError init and unnecessary semicolons (GH-866)
2017-03-29 13:28:15 +08:00
Sylvain
d67a103702
bpo-29924: Remove useless argument ( #854 )
2017-03-27 23:36:08 +02:00
Serhiy Storchaka
671079ef60
bpo-29894: Deprecate returning an instance of complex subclass from __complex__. ( #798 )
...
In a future versions of Python this can be an error.
2017-03-24 21:28:43 +02:00
Serhiy Storchaka
fff9a31a91
bpo-29865: Use PyXXX_GET_SIZE macros rather than Py_SIZE for concrete types. ( #748 )
2017-03-21 08:53:25 +02:00
Serhiy Storchaka
c61ac1642d
Don't use Py_SIZE for dict object. ( #747 )
2017-03-21 08:52:38 +02:00
4kir4
e46fb86118
bpo-28876: bool of large range raises OverflowError ( #699 )
2017-03-20 08:44:46 +02:00
Serhiy Storchaka
6b5a9ec478
bpo-29116: Fix error messages for concatenating bytes and bytearray with unsupported type. ( #709 )
2017-03-19 19:47:02 +02:00
Serhiy Storchaka
004e03fb0c
bpo-29116: Improve error message for concatenating str with non-str. ( #710 )
2017-03-19 19:38:42 +02:00
Serhiy Storchaka
80ec8364f1
bpo-29748: Added the slice index converter in Argument Clinic. ( #549 )
2017-03-19 19:37:40 +02:00
Serhiy Storchaka
18b250f844
bpo-29793: Convert some builtin types constructors to Argument Clinic. ( #615 )
2017-03-19 08:51:07 +02:00
Serhiy Storchaka
0b5615926a
bpo-20186: Convert tuple object implementation to Argument Clinic. ( #614 )
2017-03-19 08:47:58 +02:00
Serhiy Storchaka
5c643a028e
bpo-20185: Convert typeobject.c to Argument Clinic. ( #544 )
...
Based on patch by Vajrasky Kok.
2017-03-19 08:46:44 +02:00
Victor Stinner
0f7b0b397e
bpo-29735: Optimize partial_call(): avoid tuple ( #516 )
...
* Add _PyObject_HasFastCall()
* partial_call() now avoids temporary tuple to pass positional
arguments if the callable supports the FASTCALL calling convention
for positional arguments.
* Fix also a performance regression in partial_call() if the callable
doesn't support FASTCALL.
2017-03-14 21:37:20 +01:00
Ivan Levkivskyi
9135275cba
bpo-28810: Update lnotab_notes.txt ( #665 )
2017-03-14 21:42:09 +02:00
INADA Naoki
aa289a59ff
bpo-29548: Recommend PyObject_Call APIs over PyEval_Call APIs. (GH-75)
...
PyEval_Call* APIs are not documented and they doesn't respect PY_SSIZE_T_CLEAN.
So add comment block which recommends PyObject_Call* APIs to ceval.h.
This commit also changes PyEval_CallMethod and PyEval_CallFunction
implementation same to PyObject_CallMethod and PyObject_CallFunction
to reduce future maintenance cost. Optimization to avoid temporary
tuple are copied too.
PyEval_CallFunction(callable, "i", (int)i) now calls callable(i) instead of
raising TypeError. But accepting this edge case is backward compatible.
2017-03-14 18:00:59 +09:00
Xiang Zhang
7e2a54cdd9
bpo-28856: Let %b format for bytes support objects that follow the buffer protocol (GH-546)
2017-03-14 15:07:15 +08:00
Oren Milman
004251059b
bpo-29730: replace some calls to PyNumber_Check and improve some error messages ( #650 )
2017-03-13 00:37:05 +02:00
Yury Selivanov
b7c9150b68
Fix wrapping into StopIteration of return values in generators and coroutines ( #644 )
2017-03-12 15:53:07 -04:00
Serhiy Storchaka
202fda55c2
bpo-24037: Add Argument Clinic converter `bool(accept={int})`. ( #485 )
2017-03-12 10:10:47 +02:00
Serhiy Storchaka
b5c51d3dd9
bpo-20185: Convert float object implementation to Argument Clinic. ( #543 )
...
Based on patch by Vajrasky Kok.
2017-03-11 09:21:05 +02:00