Serhiy Storchaka
578c3955e0
bpo-37999: No longer use __int__ in implicit integer conversions. (GH-15636)
...
Only __index__ should be used to make integer conversions lossless.
2020-05-26 18:43:38 +03:00
Inada Naoki
d5d9a71866
bpo-36346: array: Don't use deprecated APIs (GH-19653)
...
* Py_UNICODE -> wchar_t
* Py_UNICODE -> unicode in Argument Clinic
* PyUnicode_AsUnicode -> PyUnicode_AsWideCharString
* Don't use "u#" format.
Co-authored-by: Victor Stinner <vstinner@python.org >
2020-05-11 15:37:25 +09:00
Victor Stinner
4a21e57fe5
bpo-40268: Remove unused structmember.h includes (GH-19530)
...
If only offsetof() is needed: include stddef.h instead.
When structmember.h is used, add a comment explaining that
PyMemberDef is used.
2020-04-15 02:35:41 +02:00
Andy Lester
702e09fd0a
bpo-39770, array module: Remove unnecessary descriptor counting (GH-18675)
2020-03-04 15:52:15 +01:00
Dong-hee Na
1b55b65638
bpo-39573: Clean up modules and headers to use Py_IS_TYPE() function (GH-18521)
2020-02-17 11:09:15 +01:00
Victor Stinner
60ac6ed557
bpo-39573: Use Py_SET_SIZE() function (GH-18402)
...
Replace direct acccess to PyVarObject.ob_size with usage of
the Py_SET_SIZE() function.
2020-02-07 23:18:08 +01:00
Victor Stinner
d2ec81a8c9
bpo-39573: Add Py_SET_TYPE() function (GH-18394)
...
Add Py_SET_TYPE() function to set the type of an object.
2020-02-07 09:17:07 +01:00
Victor Stinner
0131aba5ae
bpo-38916: array.array: remove fromstring() and tostring() (GH-17487)
...
array.array: Remove tostring() and fromstring() methods. They were
aliases to tobytes() and frombytes(), deprecated since Python 3.2.
2019-12-09 14:09:14 +01:00
Marco Paolini
b44ffc8b40
bpo-38677: Fix arraymodule error handling in module initialization. (GH-17039)
2019-11-15 10:42:51 +02:00
Hai Shi
06cd5b6acd
bpo-38465: Convert the type of exports counters to Py_ssize_t. (GH-16746)
2019-10-21 09:31:46 +03:00
Disconnect3d
13ab570feb
Remove redundant check from arraymodule b_getitem (GH-14676)
...
The `arraymodule`'s `b_getitem` function returns a `PyLong` converted
from `arrayobject`'s array, by dereferencing a pointer to `char`.
When the `char` type is `signed char`, the `if (x >= 128) x -= 256;` comparison/code is redundant because a `signed char` will have a value of `[-128, 127]` and so `x` will never be greater or equal than 128.
This check was indeed needed for situations where a given compiler would assume `char` being `unsigned char` which would make `x` in `[0, 256]` range.
However, the check can be removed if we cast the `ob_item` into a signed char pointer (`signed char*`) instead of `char*`.
This PR/commit introduces this change.
2019-07-11 14:57:42 -07:00
Jeroen Demeyer
59ad110d7a
bpo-37547: add _PyObject_CallMethodOneArg (GH-14685)
2019-07-11 17:59:05 +09:00
Jeroen Demeyer
530f506ac9
bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464)
...
Automatically replace
tp_print -> tp_vectorcall_offset
tp_compare -> tp_as_async
tp_reserved -> tp_as_async
2019-05-30 19:13:39 -07:00
Steve Dower
b82e17e626
bpo-36842: Implement PEP 578 (GH-12613)
...
Adds sys.audit, sys.addaudithook, io.open_code, and associated C APIs.
2019-05-23 08:45:22 -07:00
Zackery Spytz
14514d9084
bpo-36946: Fix possible signed integer overflow when handling slices. (GH-13375)
...
The final addition (cur += step) may overflow, so use size_t for "cur".
"cur" is always positive (even for negative steps), so it is safe to use
size_t here.
Co-Authored-By: Martin Panter <vadmium+py@gmail.com >
2019-05-17 10:13:03 +03:00
sth
aa3ecb8041
bpo-36285: Fix integer overflow in the array module. (GH-12317)
2019-03-20 21:49:39 +02:00
Serhiy Storchaka
6a44f6eef3
bpo-36048: Use __index__() instead of __int__() for implicit conversion if available. (GH-11952)
...
Deprecate using the __int__() method in implicit conversions of Python
numbers to C integers.
2019-02-25 17:57:58 +02:00
Serhiy Storchaka
afb3e71a17
bpo-35489: Use "const Py_UNICODE *" for the Py_UNICODE converter in AC. (GH-11150)
2018-12-14 11:19:51 +02:00
Serhiy Storchaka
bb86bf4c4e
bpo-35444: Unify and optimize the helper for getting a builtin object. (GH-11047)
...
This speeds up pickling of some iterators.
This fixes also error handling in pickling methods when fail to
look up builtin "getattr".
2018-12-11 08:28:18 +02:00
Zackery Spytz
99d56b5356
bpo-35441: Remove dead and buggy code related to PyList_SetItem(). (GH-11033)
...
In _localemodule.c and selectmodule.c, remove dead code that would
cause double decrefs if run.
In addition, replace PyList_SetItem() with PyList_SET_ITEM() in cases
where a new list is populated and there is no possibility of an error.
In addition, check if the list changed size in the loop in array_array_fromlist().
2018-12-08 16:16:55 +02:00
oldk
aa0735f597
bpo-32747: Remove trailing spaces in docstrings. (GH-5491)
2018-02-02 10:52:55 +02:00
Serhiy Storchaka
f320be77ff
bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code (GH-5222)
...
Add two new private APIs: _PyObject_LookupAttr() and _PyObject_LookupAttrId()
2018-01-25 17:49:40 +09:00
Mat M
56935a53b1
bpo-32020: arraymodule: Correct missing Py_DECREF in failure case of make_array() ( #4391 )
2017-11-14 08:00:54 +02:00
Serhiy Storchaka
b3a77964ea
bpo-27541: Reprs of subclasses of some classes now contain actual type name. ( #3631 )
...
Affected classes are bytearray, array, deque, defaultdict, count and repeat.
2017-09-21 14:24:13 +03:00
Adrian Wielgosik
7c17e2304b
bpo-24700: Add a fast path for comparing array.array of equal type ( #3009 )
2017-08-17 14:46:06 +02:00