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.
9 years ago
T. Wouters
5466d4af5f
bpo-29942: Fix the use of recursion in itertools.chain.from_iterable. ( #889 )
Fix the use of recursion in itertools.chain.from_iterable. Using recursion
is unnecessary, and can easily cause stack overflows, especially when
building in low optimization modes or with Py_DEBUG enabled.
9 years ago
Serhiy Storchaka
ba85d69a3e
bpo-29878: Add global instances of int for 0 and 1. ( #852 )
9 years ago
Serhiy Storchaka
fff9a31a91
bpo-29865: Use PyXXX_GET_SIZE macros rather than Py_SIZE for concrete types. ( #748 )
9 years ago
Serhiy Storchaka
5ab81d787f
Issue #28959 : Added private macro PyDict_GET_SIZE for retrieving the size of dict.
9 years ago
Victor Stinner
de4ae3d486
Backed out changeset b9c9691c72c5
Issue #28858 : The change b9c9691c72c5 introduced a regression. It seems like
_PyObject_CallArg1() uses more stack memory than
PyObject_CallFunctionObjArgs().
9 years ago
Victor Stinner
27580c1fb5
Replace PyObject_CallFunctionObjArgs() with fastcall
* PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func)
* PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg)
PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires
extra work to "parse" C arguments to build a C array of PyObject*.
_PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate
memory on the C stack.
This change is part of the fastcall project. The change on listsort() is
related to the issue #23507 .
9 years ago
Serhiy Storchaka
85c3f268f4
Issue #28322 : Fixed possible crashes when unpickle itertools objects from
incorrect pickle data. Based on patch by John Leitch.
9 years ago
Serhiy Storchaka
8ddcf3abf7
Issue #28019 : itertools.count() no longer rounds non-integer step in range
between 1.0 and 2.0 to 1.
9 years ago
Martin Panter
eb9957065a
Issue #27626 : Spelling fixes in docs, comments and internal names
Based on patch by Ville Skyttä.
10 years ago
Serhiy Storchaka
6a7b3a77b4
Issue #26778 : Fixed "a/an/and" typos in code comment and documentation.
10 years ago
Serhiy Storchaka
57a01d3a0e
Issue #26200 : Added Py_SETREF and replaced Py_XSETREF with Py_SETREF
in places where Py_DECREF was used.
10 years ago
Serhiy Storchaka
48842714b9
Issue #22570 : Renamed Py_SETREF to Py_XSETREF.
10 years ago
Serhiy Storchaka
d55162517d
Issue #25718 : Fixed pickling and copying the accumulate() iterator with total is None.
10 years ago
Benjamin Peterson
0e617e22f0
remove some copyright notices supserseded by the toplevel ones
10 years ago
Serhiy Storchaka
1ed017ae92
Issue #20440 : Cleaning up the code by using Py_SETREF and Py_CLEAR.
Old code is correct, but with Py_SETREF and Py_CLEAR it can be cleaner.
This patch doesn't fix bugs and hence there is no need to backport it.
10 years ago
Serhiy Storchaka
4a1e70fc31
Issue #20440 : Applied yet one patch for using Py_SETREF.
The patch is automatically generated, it replaces the code that uses Py_CLEAR.
10 years ago
Serhiy Storchaka
5a57ade58e
Issue #20440 : Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
10 years ago
Serhiy Storchaka
5c4064e8bd
Issue #25421 : __sizeof__ methods of builtin types now use dynamic basic size.
This allows sys.getsize() to work correctly with their subclasses with
__slots__ defined.
10 years ago
Serhiy Storchaka
d65c9496da
Issue #25523 : Further a-to-an corrections.
10 years ago
Kristján Valur Jónsson
102764a1f6
Issue #25021 : Correctly make sure that product.__setstate__ does not access
invalid memory.
10 years ago
Raymond Hettinger
a6ea44aed1
Minor cleanups
11 years ago
Raymond Hettinger
ca3788c2e8
Issue #24874 : Speed-up itertools and make it pickles more compact.
11 years ago
Raymond Hettinger
a6a2d44dc7
Neaten-up whitespace, vertical alignment, and line-wrapping.
11 years ago
Raymond Hettinger
b5244a3fe5
Inline PyIter_Next() matching what was done for other itertools.
11 years ago
Raymond Hettinger
c39786dc08
Fix oddly placed whitespace
11 years ago
Raymond Hettinger
98958fedb6
Remove dead code (unreachable)
11 years ago
Raymond Hettinger
79c878d5f2
Fix crash in itertools.cycle.__setstate__() caused by lack of type checking.
Will backport after the 3.6 release is done.
11 years ago
Raymond Hettinger
b468e1f595
Neaten-up vertical alignment of comments
11 years ago
Raymond Hettinger
acd61b6e40
Issue #24735 : Fix invalid memory access in combinations_with_replacement()
11 years ago
Serhiy Storchaka
d741a88049
Fixed indentation of Python examples in C comments.
11 years ago
Serhiy Storchaka
483405bcca
Issue #22883 : Got rid of outdated references to PyInt and PyString in comments.
11 years ago
Serhiy Storchaka
dee948b359
Issues #23363 , #23364 , #23365 , #23366 : Fixed itertools overflow tests.
Used PyMem_New to check overflow.
11 years ago
Benjamin Peterson
0eaabf1c05
check for overflows in permutations() and product() ( closes #23363 , closes #23364 )
11 years ago
Benjamin Peterson
6f082297b2
check for overflow in combinations_with_replacement ( closes #23365 )
11 years ago
Benjamin Peterson
4b40eeb339
detect overflow in combinations ( closes #23366 )
11 years ago
Raymond Hettinger
97d3555029
Issue #19145 : Fix handling of negative values for a "times" keyword argument to itertools.repeat()>
(Patch contributed by Vajrasky Kok.)
12 years ago
Antoine Pitrou
26f82efe59
Issue #21321 : itertools.islice() now releases the reference to the source iterator when the slice is exhausted.
Patch by Anton Afanasyev.
12 years ago
Serhiy Storchaka
2dae92a807
Issue #15475 : Add __sizeof__ implementations for itertools objects.
12 years ago
Antoine Pitrou
b4a46cb428
Add a comment making it explicit that itertools.tee() is already 64bit-safe (issue #19049 )
12 years ago
Raymond Hettinger
fb92f393b0
Issue 18752: Make chain.from_iterable() more visible in the documentation.
12 years ago
Raymond Hettinger
8df58f7ae8
Issue 18752: Make chain.from_iterable() more visible in the documentation.
12 years ago
Tim Peters
9edb168dd7
cwr_next(): move invariants out of loops.
This simplifies and clarifies the code, and gives a small speedup.
13 years ago
Eli Bendersky
c554f725a0
Issue #18912 : Fix indentation in docstring
Contributed by Jeroen Van Goey
13 years ago
Andrew Kuchling
da30acf50b
Closes #18220 : expand itertools.islice docstring to 2 lines
13 years ago
Andrew Kuchling
446a39f78f
Close #18285 : add 'repeat' parameter to docstring for product
13 years ago
Andrew Kuchling
b003ffa0ab
Closes #18239 : correct description of count() in module docstring
13 years ago
Serhiy Storchaka
278d03bd66
Revert a premature patch for issue #14010 (changeset aaaf36026511).
13 years ago
Serhiy Storchaka
e8f706eda7
Issue #14010 : Fix a crash when iterating or deleting deeply nested filters
(builting and in itertools module, i.e. map(), itertools.chain(), etc).
13 years ago
Serhiy Storchaka
e7e9c32195
Clean trailing whitespace in itertoolsmodule.c.
13 years ago