Commit Graph

227 Commits

Author SHA1 Message Date
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.
2015-12-27 15:51:32 +02:00
Serhiy Storchaka bdb908ea54 Issue #20440: Applied yet one patch for using Py_SETREF.
The patch is automatically generated, it replaces the code that uses Py_CLEAR.
2015-12-27 12:38:28 +02:00
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.
2015-12-27 12:36:18 +02:00
Serhiy Storchaka f006940351 Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
2015-12-24 10:39:57 +02:00
Serhiy Storchaka 5a57ade58e Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
2015-12-24 10:35:59 +02:00
Serhiy Storchaka a9406e77fa 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.
2015-12-19 20:07:11 +02:00
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.
2015-12-19 20:05:25 +02:00
Serhiy Storchaka 4a7c03aab4 Issue #25523: Merge a-to-an corrections from 3.5. 2015-11-02 14:44:29 +02:00
Serhiy Storchaka a84f6c3dd3 Issue #25523: Merge a-to-an corrections from 3.4. 2015-11-02 14:39:05 +02:00
Serhiy Storchaka d65c9496da Issue #25523: Further a-to-an corrections. 2015-11-02 14:10:23 +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 a6ea44aed1 Minor cleanups 2015-08-17 23:55:28 -07:00
Raymond Hettinger ca3788c2e8 Issue #24874: Speed-up itertools and make it pickles more compact. 2015-08-16 14:49:24 -07:00
Raymond Hettinger a6a2d44dc7 Neaten-up whitespace, vertical alignment, and line-wrapping. 2015-08-16 14:38:07 -07:00
Raymond Hettinger b5244a3fe5 Inline PyIter_Next() matching what was done for other itertools. 2015-08-16 14:24:20 -07:00
Raymond Hettinger c39786dc08 Fix oddly placed whitespace 2015-08-15 15:16:12 -07:00
Raymond Hettinger 98958fedb6 Remove dead code (unreachable) 2015-08-15 15:09:30 -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
Raymond Hettinger b468e1f595 Neaten-up vertical alignment of comments 2015-08-14 14:10:49 -07:00
Raymond Hettinger d2117e18a0 merge 2015-07-28 02:07:14 -07:00
Raymond Hettinger acd61b6e40 Issue #24735: Fix invalid memory access in combinations_with_replacement() 2015-07-28 02:05:44 -07:00
Serhiy Storchaka 553e156921 Fixed indentation of Python examples in C comments. 2015-06-11 00:07:47 +03:00
Serhiy Storchaka d741a88049 Fixed indentation of Python examples in C comments. 2015-06-11 00:06:39 +03:00
Serhiy Storchaka 483405bcca Issue #22883: Got rid of outdated references to PyInt and PyString in comments. 2015-02-17 10:14:30 +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 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 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 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
Raymond Hettinger 97d3555029 Issue #19145: Fix handling of negative values for a "times" keyword argument to itertools.repeat()>
(Patch contributed by Vajrasky Kok.)
2014-06-24 21:36:58 -07:00
Antoine Pitrou 26f82efe59 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
Serhiy Storchaka 2dae92a807 Issue #15475: Add __sizeof__ implementations for itertools objects. 2013-12-09 17:45:57 +02:00
Antoine Pitrou b4a46cb428 Add a comment making it explicit that itertools.tee() is already 64bit-safe (issue #19049) 2013-09-20 22:19:22 +02:00
Raymond Hettinger fb92f393b0 Issue 18752: Make chain.from_iterable() more visible in the documentation. 2013-09-09 02:01:35 -05:00
Raymond Hettinger 8df58f7ae8 Issue 18752: Make chain.from_iterable() more visible in the documentation. 2013-09-09 01:29:40 -05:00
Tim Peters 9edb168dd7 cwr_next(): move invariants out of loops.
This simplifies and clarifies the code, and gives a small speedup.
2013-09-03 11:49:31 -05:00
Eli Bendersky c554f725a0 Issue #18912: Fix indentation in docstring
Contributed by Jeroen Van Goey
2013-09-03 06:37:19 -07:00
Andrew Kuchling da30acf50b Closes #18220: expand itertools.islice docstring to 2 lines 2013-06-22 19:20:54 -04:00
Andrew Kuchling 446a39f78f Close #18285: add 'repeat' parameter to docstring for product 2013-06-22 19:04:11 -04:00
Andrew Kuchling b003ffa0ab Closes #18239: correct description of count() in module docstring 2013-06-21 07:58:35 -04:00
Serhiy Storchaka 278d03bd66 Revert a premature patch for issue #14010 (changeset aaaf36026511). 2013-04-06 22:52:34 +03:00
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).
2013-04-06 21:14:43 +03:00
Serhiy Storchaka d269b5e73d Clean trailing whitespace in itertoolsmodule.c. 2013-01-25 13:38:56 +02:00
Serhiy Storchaka e7e9c32195 Clean trailing whitespace in itertoolsmodule.c. 2013-01-25 13:37:39 +02:00
Serhiy Storchaka 339e91d4cb 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:24:47 +02:00
Serhiy Storchaka a3e9128aba 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:19:31 +02:00
Antoine Pitrou 721738fbee Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
2012-08-15 23:20:39 +02:00
Antoine Pitrou 6f430e4963 Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
2012-08-15 23:18:25 +02:00
Martin v. Löwis 33cac8578b Add safecase to silence Win64 warning. 2012-05-15 14:34:58 +02:00
Kristján Valur Jónsson 31668b8f7a Issue #14288: Serialization support for builtin iterators. 2012-04-03 10:49:41 +00:00
Martin v. Löwis 1c67dd9b15 Port SetAttrString/HasAttrString to SetAttrId/GetAttrId. 2011-10-14 15:16:45 +02:00
Martin v. Löwis bd928fef42 Rename _Py_identifier to _Py_IDENTIFIER. 2011-10-14 10:20:37 +02:00
Martin v. Löwis afe55bba33 Add API for static strings, primarily good for identifiers.
Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
2011-10-09 10:38:36 +02:00
Mark Dickinson a61b053e61 Merge #12973 itertools fix. 2011-09-24 08:57:00 +01:00
Mark Dickinson b2f6bc72a2 Issue #12973: Fix itertools bug caused by signed integer overflow. Thanks Stefan Krah. 2011-09-24 08:56:09 +01:00
Kristjan Valur Jonsson 978da33c7a Merge 3.2 2011-03-30 11:32:06 +00:00
Kristjan Valur Jonsson fa3edbed25 Merge 3.1 2011-03-30 11:24:58 +00:00
Kristjan Valur Jonsson 35722a9376 Bugfix: Properly test for errors from PyLong_AsLong() in itertools.cycle.
ti can raise an exception even if PyLong_Check() has
succeeded.
2011-03-30 11:04:28 +00:00
Raymond Hettinger 5bf7091df0 Update docstrings for itertools.accumulate(). 2011-03-27 18:59:51 -07:00
Raymond Hettinger 5d44613e3b Add optional *func* argument to itertools.accumulate(). 2011-03-27 18:52:10 -07:00
Raymond Hettinger d8ff4658fb Simplify the signature for itertools.accumulate() to match numpy. Handle one item iterable the same way as min()/max(). 2010-12-03 02:09:34 +00:00
Raymond Hettinger 482ba77245 Add itertools.accumulate(). 2010-12-01 22:48:00 +00:00
Raymond Hettinger 101f09e72f Issue #10323: Predictable final state for slice(). 2010-11-30 03:09:05 +00:00
Raymond Hettinger 69b34bfe9c Issue #10323: Predictable final state for slice(). 2010-11-30 02:49:29 +00:00
Ezio Melotti 7a61e3c359 Merged revisions 81891 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81891 | ezio.melotti | 2010-06-11 05:26:42 +0300 (Fri, 11 Jun 2010) | 9 lines

  Merged revisions 81889 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81889 | ezio.melotti | 2010-06-11 05:21:25 +0300 (Fri, 11 Jun 2010) | 1 line

    Remove extra ] from itertools.count docstring.
  ........
................
2010-06-11 02:28:37 +00:00
Ezio Melotti bfd73faf86 Merged revisions 81889 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81889 | ezio.melotti | 2010-06-11 05:21:25 +0300 (Fri, 11 Jun 2010) | 1 line

  Remove extra ] from itertools.count docstring.
........
2010-06-11 02:26:42 +00:00
Antoine Pitrou 7f14f0d8a0 Recorded merge of revisions 81032 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r81032 | antoine.pitrou | 2010-05-09 17:52:27 +0200 (dim., 09 mai 2010) | 9 lines

  Recorded merge of revisions 81029 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines

    Untabify C files. Will watch buildbots.
  ........
................
2010-05-09 16:14:21 +00:00
Antoine Pitrou f95a1b3c53 Recorded merge of revisions 81029 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines

  Untabify C files. Will watch buildbots.
........
2010-05-09 15:52:27 +00:00
Raymond Hettinger a3e1ad27a8 Issue 7410: deepcopy of itertools.count() reset the count. 2009-11-30 22:02:31 +00:00
Raymond Hettinger 6c8ee7a333 Issue #7410: deepcopy of itertools.count was resetting the count. 2009-11-30 21:55:17 +00:00
Raymond Hettinger d3a77c0ad3 Fix docstrings for itertools combinatoric functions. 2009-11-19 01:23:41 +00:00
Raymond Hettinger 36c3c027ad Fix docstrings for itertools combinatoric functions. 2009-11-19 01:20:07 +00:00
Raymond Hettinger a9311a3c50 Fix exception handling in itertools.izip_longest(). 2009-11-01 21:02:38 +00:00
Raymond Hettinger fc438518a0 Fix exception handling in itertools.izip_longest(). 2009-11-01 20:55:33 +00:00
Benjamin Peterson bbcd1eb64c add sys prefix 2009-06-24 02:29:57 +00:00
Raymond Hettinger ec7bfb314c Issue 6305: Clarify error message for large arguments to itertools.islice(). 2009-06-23 21:27:39 +00:00
Benjamin Peterson 912fbcade3 Merged revisions 69855 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69855 | benjamin.peterson | 2009-02-21 17:09:33 -0600 (Sat, 21 Feb 2009) | 1 line

  fix compiler warnings
........
2009-02-21 23:14:55 +00:00
Raymond Hettinger eb13fdda59 Port r69837: Fix keyword arguments for itertools.count(). Step arg without a start arg was ignored. 2009-02-21 22:30:12 +00:00
Raymond Hettinger f4bb7f2100 Add keyword arg support to itertools.repeat(). 2009-02-19 02:44:01 +00:00
Raymond Hettinger 15a4950da1 Add keyword arg support to itertools.compress(). 2009-02-19 02:17:09 +00:00
Benjamin Peterson 25e26a02f4 Merged revisions 69688,69690 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69688 | benjamin.peterson | 2009-02-16 15:07:52 -0600 (Mon, 16 Feb 2009) | 1 line

  fix compiler warnings
........
  r69690 | benjamin.peterson | 2009-02-16 15:23:04 -0600 (Mon, 16 Feb 2009) | 1 line

  PyList_Append() can fail
........
2009-02-16 21:28:29 +00:00
Raymond Hettinger d6280f4b78 Add GC support to count() objects. 2009-02-16 20:50:56 +00:00
Raymond Hettinger 9e8dbbcdcd Add keyword argument support to itertools.count(). 2009-02-14 04:21:49 +00:00
Raymond Hettinger 6dfff19743 Fix spaces/tabs in example. 2009-02-12 10:19:59 +00:00
Raymond Hettinger 3072921d0e Issue 5032: added a step argument to itertools.count() and allowed non-integer arguments. 2009-02-12 06:28:27 +00:00
Benjamin Peterson a86f2c06fd Merged revisions 69466,69480 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69466 | raymond.hettinger | 2009-02-09 12:39:41 -0600 (Mon, 09 Feb 2009) | 3 lines

  Issue 5171: itertools.product docstring missing 'repeat' argument
........
  r69480 | raymond.hettinger | 2009-02-09 19:24:05 -0600 (Mon, 09 Feb 2009) | 1 line

  Issue 1818: collections.namedtuple() to support automatic renaming of invalid fieldnames.
........
2009-02-10 02:41:10 +00:00
Mark Dickinson e94c679df0 Issue #1717: rename tp_compare to tp_reserved. I'll change the
type of tp_compare in a separate commit, for ease of reversion
should things go wrong.
2009-02-02 20:36:42 +00:00
Raymond Hettinger 811f3dc174 Fix typo. 2009-01-29 03:48:02 +00:00
Raymond Hettinger 3522a58665 Update itertools.__doc__ to include all tools. 2009-01-29 03:41:55 +00:00
Raymond Hettinger d07d939c5e Forward port r69001: itertools.combinations_with_replacement(). 2009-01-27 04:20:44 +00:00
Raymond Hettinger 6b3b0fc4d4 Forward port r68941 adding itertools.compress(). 2009-01-26 02:56:58 +00:00
Amaury Forgeot d'Arc f343e01c17 Merged revisions 68560 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r68560 | amaury.forgeotdarc | 2009-01-13 00:36:55 +0100 (mar., 13 janv. 2009) | 6 lines

  #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:58:21 +00:00
Raymond Hettinger 5bad41eefc Merge in r68394 fixing itertools.permutations() and combinations(). 2009-01-08 21:01:54 +00:00
Martin v. Löwis 1a21451b1d Implement PEP 3121: new module initialization and finalization API. 2008-06-11 05:26:20 +00:00