Brandt Bucher
226a012d1c
bpo-42536: GC track recycled tuples (GH-23623)
...
Several built-in and standard library types now ensure that their internal result tuples are always tracked by the garbage collector:
- collections.OrderedDict.items
- dict.items
- enumerate
- functools.reduce
- itertools.combinations
- itertools.combinations_with_replacement
- itertools.permutations
- itertools.product
- itertools.zip_longest
- zip
Previously, they could have become untracked by a prior garbage collection.
2020-12-04 19:45:57 -08:00
Raymond Hettinger
cc061d0e6f
bpo-38200: Add itertools.pairwise() (GH-23549)
2020-11-30 20:42:54 -08:00
Raymond Hettinger
fc40b3020c
bpo-42450: Minor updates to the itertools recipes (GH-23555)
2020-11-29 10:47:22 -08:00
Serhiy Storchaka
526a01467b
bpo-34410: Fix a crash in the tee iterator when re-enter it. (GH-15625)
...
RuntimeError is now raised in this case.
2019-09-09 11:47:14 +03:00
Sergey Fedoseev
6a650aaf77
bpo-37976: Prevent shadowing of TypeError in zip() (GH-15592)
2019-08-29 21:25:48 -07:00
Neil Schemenauer
52a48e62c6
bpo-37707: Exclude expensive unit tests from PGO task (GH-15009)
...
Mark some individual tests to skip when --pgo is used. The tests
marked increase the PGO task time significantly and likely don't
help improve optimization of the final executable.
2019-07-30 11:08:18 -07:00
Lisa Roach
9718b59ee5
bpo-34659: Adds initial kwarg to itertools.accumulate() (GH-9345)
2018-09-23 17:34:59 -07:00
Raymond Hettinger
9265dd72e5
Add a prepend() recipe to teach a chain() idiom (GH-6415)
2018-04-08 08:44:20 -07:00
Cheryl Sabella
da1734c58d
bpo-27212: Modify islice recipe to consume initial values preceding start (GH-6195)
2018-03-26 18:29:33 -07:00
Raymond Hettinger
d37258dd2e
Add itertools recipe for directly finding the n-th combination ( #5161 )
2018-01-13 10:35:40 -08:00
Serhiy Storchaka
c740e4fe8a
bpo-30347: Stop crashes when concurrently iterate over itertools.groupby() iterators. ( #1557 )
2017-09-26 21:47:56 +03:00
Serhiy Storchaka
c247caf33f
bpo-30346: An iterator produced by the itertools.groupby() iterator ( #1569 )
...
now becames exhausted after advancing the groupby iterator.
2017-09-24 13:36:11 +03:00
Will Roberts
0ecdc52514
bpo-30537: use PyNumber in itertools.islice instead of PyLong ( #1918 )
...
* bpo-30537: use PyNumber in itertools instead of PyLong
* bpo-30537: revert changes except to islice_new
* bpo-30537: test itertools.islice and add entry to Misc/NEWS
2017-06-07 23:03:04 -07: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
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.
2017-03-30 09:58:35 -07:00
Serhiy Storchaka
8f0f205649
Issue #28322 : Fixed possible crashes when unpickle itertools objects from
...
incorrect pickle data. Based on patch by John Leitch.
2016-10-02 09:13:14 +03:00
Serhiy Storchaka
85c3f268f4
Issue #28322 : Fixed possible crashes when unpickle itertools objects from
...
incorrect pickle data. Based on patch by John Leitch.
2016-10-02 08:34:53 +03:00
Serhiy Storchaka
8f9cafad3d
Issue #28019 : itertools.count() no longer rounds non-integer step in range
...
between 1.0 and 2.0 to 1.
2016-09-10 09:53:51 +03:00
Serhiy Storchaka
8ddcf3abf7
Issue #28019 : itertools.count() no longer rounds non-integer step in range
...
between 1.0 and 2.0 to 1.
2016-09-10 09:49:24 +03:00
Martin Panter
f157982b2c
Issue #27076 : More doc and comment spelling fixes for 3.6, by Ville Skyttä
2016-05-26 06:03:33 +00:00
Serhiy Storchaka
c7f44aa99a
Issue #23277 : Remove more unused sys and os imports.
2016-04-24 13:25:01 +03:00
Raymond Hettinger
20b3e72b8d
Merge
2016-03-06 18:12:08 -08:00
Raymond Hettinger
e525ee3b48
Document another recipe for itertools: all_equal(). Inspired by David Beazley.
2016-03-06 18:11:38 -08:00
Serhiy Storchaka
5608411a96
Issue #25718 : Fixed pickling and copying the accumulate() iterator with total is None.
2016-03-06 14:02:26 +02:00
Serhiy Storchaka
d55162517d
Issue #25718 : Fixed pickling and copying the accumulate() iterator with total is None.
2016-03-06 14:00:45 +02:00
Kristján Valur Jónsson
a8a930f863
Issue #25021 : Merge 3.5 to default
2015-09-12 16:36:15 +00:00
Kristján Valur Jónsson
d7f65e5763
Issue #25021 : Merge 3.4 to 3.5
2015-09-12 16:34:33 +00:00
Kristján Valur Jónsson
95c3e6cb22
Issue #25021 : Merge from 3.3 to 3.4
2015-09-12 15:30:23 +00:00
Kristján Valur Jónsson
102764a1f6
Issue #25021 : Correctly make sure that product.__setstate__ does not access
...
invalid memory.
2015-09-12 15:20:54 +00:00
Raymond Hettinger
1cadf769b3
Improve comment
2015-08-15 14:47:27 -07:00
Raymond Hettinger
a166ce561c
Add more tests for pickling itertools.cycle
2015-08-15 14:45:49 -07:00
Raymond Hettinger
79c878d5f2
Fix crash in itertools.cycle.__setstate__() caused by lack of type checking.
...
Will backport after the 3.6 release is done.
2015-08-15 13:51:59 -07:00
Serhiy Storchaka
1770fde94c
Make some tests more frienly to MemoryError.
...
Free memory, unlock hanging threads.
2015-03-28 20:39:51 +02:00
Serhiy Storchaka
9db55004a1
Make some tests more frienly to MemoryError.
...
Free memory, unlock hanging threads.
2015-03-28 20:38:37 +02:00
Serhiy Storchaka
a60c2fe480
Issue #23641 : Cleaned out legacy dunder names from tests and docs.
...
Fixed 2 to 3 porting bug in pynche.ColorDB.
2015-03-12 21:56:08 +02:00
Serhiy Storchaka
c2ccce791c
Issue #23641 : Cleaned out legacy dunder names from tests and docs.
...
Fixed 2 to 3 porting bug in pynche.ColorDB.
Added few tests for __truediv__, __floordiv__ and __matmul__.
2015-03-12 22:01:30 +02:00
Serhiy Storchaka
7a27c97216
Issues #23363 , #23364 , #23365 , #23366 : Fixed itertools overflow tests.
...
Used PyMem_New to check overflow.
2015-02-03 01:50:31 +02:00
Serhiy Storchaka
b5e8e57555
Issues #23363 , #23364 , #23365 , #23366 : Fixed itertools overflow tests.
...
Used PyMem_New to check overflow.
2015-02-03 01:35:10 +02:00
Serhiy Storchaka
dee948b359
Issues #23363 , #23364 , #23365 , #23366 : Fixed itertools overflow tests.
...
Used PyMem_New to check overflow.
2015-02-03 01:34:09 +02:00
Benjamin Peterson
5d0bb852a2
merge 3.4 ( #23364 , #23363 )
2015-02-01 21:36:01 -05:00
Benjamin Peterson
c468b537cd
merge 3.3 ( #23364 , #23363 )
2015-02-01 21:35:34 -05:00
Benjamin Peterson
0eaabf1c05
check for overflows in permutations() and product() ( closes #23363 , closes #23364 )
2015-02-01 21:34:07 -05:00
Benjamin Peterson
38d9772622
merge 3.4 ( #23365 )
2015-02-01 21:11:54 -05:00
Benjamin Peterson
f635dc32b1
merge 3.3 ( #23365 )
2015-02-01 21:11:39 -05:00
Benjamin Peterson
6f082297b2
check for overflow in combinations_with_replacement ( closes #23365 )
2015-02-01 21:10:47 -05:00
Benjamin Peterson
4db56d5002
merge 3.4 ( #23366 )
2015-02-01 21:01:43 -05:00
Benjamin Peterson
819c4e9bc4
merge 3.3 ( #23366 )
2015-02-01 21:00:15 -05:00
Benjamin Peterson
4b40eeb339
detect overflow in combinations ( closes #23366 )
2015-02-01 20:59:00 -05:00
Serhiy Storchaka
65ee4674e2
Issue #22777 : Test pickling with all protocols.
2014-12-15 14:06:02 +02:00
Serhiy Storchaka
bad1257c96
Issue #22777 : Test pickling with all protocols.
2014-12-15 14:03:42 +02:00