Commit Graph

137 Commits

Author SHA1 Message Date
Serhiy Storchaka 2fb6921ab2
[2.7] bpo-34410: Fix a crash in the tee iterator when re-enter it. (GH-15625) (GH-15740)
RuntimeError is now raised in this case.
(cherry picked from commit 526a01467b)
2019-09-09 12:38:05 +03:00
Miss Islington (bot) c0dce6aa2c bpo-36430: Fix a possible reference leak in itertools.count(). (GH-12551) (GH-12554)
(cherry picked from commit 0523c39e77)

Co-authored-by: Zackery Spytz <zspytz@gmail.com>
2019-03-26 00:55:35 -07:00
Serhiy Storchaka d0b9dc3367 [2.7] bpo-30347: Stop crashes when concurrently iterate over itertools.groupby() iterators. (GH-1557). (#3772)
(cherry picked from commit c740e4fe8a)
2017-09-26 23:15:36 +03:00
T. Wouters d694a06206 bpo-29942: Fix the use of recursion in itertools.chain.from_iterable. (#913)
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.
(cherry picked from commit 5466d4af5f)
2017-03-30 12:49:22 -07:00
Martin Panter a850ef698e Issue #27626: Spelling fixes in docs, comments and internal names
Based on patch by Ville Skyttä.
2016-07-28 01:11:04 +00:00
Serhiy Storchaka 763a61ca95 Issue #26200: Added Py_SETREF and replaced Py_XSETREF with Py_SETREF
in places where Py_DECREF was used.
2016-04-10 18:05:12 +03:00
Serhiy Storchaka bc62af1bbe Issue #22570: Renamed Py_SETREF to Py_XSETREF. 2016-04-06 09:51:18 +03:00
Benjamin Peterson f30bad284b remove some copyright notices supserseded by the toplevel ones 2016-01-01 11:53:47 -06:00
Serhiy Storchaka 5951f2300f Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
2015-12-24 10:35:35 +02:00
Serhiy Storchaka c72e66a048 Issue #25523: Backported a-to-an corrections. 2015-11-02 15:06:09 +02:00
Serhiy Storchaka f0aa88f6e8 Fixed indentation of Python examples in C comments. 2015-06-11 00:06:27 +03:00
Serhiy Storchaka 42aa9c078a 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 dda9121ad1 check for overflows in permutations() and product() (closes #23363, closes #23364) 2015-02-01 21:34:07 -05:00
Benjamin Peterson 17845c1786 check for overflow in combinations_with_replacement (closes #23365) 2015-02-01 21:10:47 -05:00
Benjamin Peterson 021dec1c96 detect overflow in combinations (closes #23366) 2015-02-01 20:59:00 -05:00
Raymond Hettinger 58ad24512a Issue #19145: Fix handling of negative values for a "times" keyword argument to itertools.repeat()>
(Patch contributed by Vajrasky Kok.)
2014-06-24 21:53:45 -07:00
Antoine Pitrou 3ec903fce4 Issue #21321: itertools.islice() now releases the reference to the source iterator when the slice is exhausted.
Patch by Anton Afanasyev.
2014-04-29 12:13:46 +02:00
Eli Bendersky e6802db7d1 Close #18912: Fix indentation in docstring
Contributed by Jeroen Van Goey
2013-09-03 06:41:58 -07:00
Serhiy Storchaka 6c467a41bc Revert a premature patch for issue #14010 (changeset d17d10c84d27). 2013-04-06 22:51:29 +03:00
Serhiy Storchaka bb84565cdb Issue #14010: Fix a crash when iterating or deleting deeply nested filters
in itertools module (i.e. itertools.izip(), itertools.chain(), etc).
2013-04-06 22:04:10 +03:00
Serhiy Storchaka b09ec9b618 Issue #13454: Fix a crash when deleting an iterator created by itertools.tee()
if all other iterators were very advanced before.
2013-01-25 13:31:05 +02:00
Antoine Pitrou c5bef75c77 Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
2012-08-15 23:16:51 +02:00
Mark Dickinson a96b0d119d Backport issue #12973 itertools fix from 3.x. 2011-09-24 09:01:16 +01:00
Raymond Hettinger 061bf7a11a Issue #10323: Predictable final state for slice(). 2010-11-30 03:15:35 +00:00
Ezio Melotti fdc1e0d013 Remove extra ] from itertools.count docstring. 2010-06-11 02:21:25 +00:00
Antoine Pitrou c83ea137d7 Untabify C files. Will watch buildbots. 2010-05-09 14:46:46 +00:00
Raymond Hettinger 9b4197ba53 Handle step values other than one. 2009-11-30 21:13:52 +00:00
Raymond Hettinger e09f45a2e3 Issue 7410: deepcopy of itertools.count resets the count 2009-11-30 19:44:40 +00:00
Raymond Hettinger 9eac119ba8 Fix docstrings for itertools combinatoric functions. 2009-11-19 01:22:04 +00:00
Raymond Hettinger fa7dadd339 Fix exception handling in itertools.izip_longest(). 2009-11-01 20:45:16 +00:00
Raymond Hettinger 0115e098da Issue 6305: Clarify error message for large arguments to itertools.islice(). 2009-06-23 21:32:28 +00:00
Benjamin Peterson 873389dbd8 fix compiler warnings 2009-02-21 23:09:33 +00:00
Raymond Hettinger aa681c7b99 Fix keyword arguments for itertools.count().
Step arg without a start arg was ignored.
2009-02-21 07:17:22 +00:00
Raymond Hettinger 182edaefb5 Add keyword arg support to itertools.repeat(). 2009-02-19 02:38:25 +00:00
Raymond Hettinger 2e2909f584 Add keyword arg support to itertools.compress(). 2009-02-19 02:15:14 +00:00
Benjamin Peterson a7b0c12152 PyList_Append() can fail 2009-02-16 21:23:04 +00:00
Benjamin Peterson 062a7c3675 fix compiler warnings 2009-02-16 21:07:52 +00:00
Raymond Hettinger b21d8109af Add GC support to count() objects. Backport candidate. 2009-02-16 20:39:12 +00:00
Raymond Hettinger a4038038c6 Add keyword argument support to itertools.count(). 2009-02-14 00:25:51 +00:00
Raymond Hettinger 66373ab888 Fix spaces/tabs in example. 2009-02-12 10:16:19 +00:00
Raymond Hettinger 31c769ca89 Issue 5032: added a step argument to itertools.count() and allowed non-integer arguments. 2009-02-12 05:39:46 +00:00
Raymond Hettinger 94034ea584 Issue 5171: itertools.product docstring missing 'repeat' argument 2009-02-09 18:39:41 +00:00
Raymond Hettinger e76816b146 Fix typo. 2009-01-29 03:43:44 +00:00
Raymond Hettinger 36d816b0ab Update itertools.__doc__ to include all tools. 2009-01-29 03:21:42 +00:00
Raymond Hettinger d081abc8be Promote combinations_with_replacement() from a recipe to a regular itertool. 2009-01-27 02:58:49 +00:00
Raymond Hettinger 2bcb8e9b0d Promote compress() from a recipe to being a regular itertool. 2009-01-25 21:04:14 +00:00
Amaury Forgeot d'Arc a40d573664 #3720: Interpreter crashes when an evil iterator removes its own next function.
Now the slot is filled with a function that always raises.

Will not backport: extensions compiled with 2.6.x would not run on 2.6.0.
2009-01-12 23:36:55 +00:00
Raymond Hettinger 5b913e31a1 Forward port r68394 for issue 4816. 2009-01-08 06:39:04 +00:00
Georg Brandl 8550d69a84 #2536: fix itertools.permutations and itertools.combinations docstrings. 2008-06-10 12:46:39 +00:00
Gregory P. Smith dd96db63f6 This reverts r63675 based on the discussion in this thread:
http://mail.python.org/pipermail/python-dev/2008-June/079988.html

Python 2.6 should stick with PyString_* in its codebase.  The PyBytes_* names
in the spirit of 3.0 are available via a #define only.  See the email thread.
2008-06-09 04:58:54 +00:00