Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								08ff6822cc 
								
							 
						 
						
							
							
								
								Handle the repeat keyword argument for itertools.product().  
							
							
							
						 
						
							2008-02-29 02:21:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b4cbc98c39 
								
							 
						 
						
							
							
								
								Add alternate constructor for itertools.chain().  
							
							
							
						 
						
							2008-02-28 22:46:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								05bf6338b8 
								
							 
						 
						
							
							
								
								Have itertools.chain() consume its inputs lazily instead of building a tuple of iterators at the outset.  
							
							
							
						 
						
							2008-02-28 22:30:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								2ab0552b5e 
								
							 
						 
						
							
							
								
								Larger test range  
							
							
							
						 
						
							2008-02-27 01:08:30 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								93e804da9c 
								
							 
						 
						
							
							
								
								Add itertools.combinations().  
							
							
							
						 
						
							2008-02-26 23:40:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								9d63837e9b 
								
							 
						 
						
							
							
								
								Make sure the itertools filter functions give the same performance for func=bool as func=None.  
							
							
							
						 
						
							2008-02-25 22:42:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								73d7963242 
								
							 
						 
						
							
							
								
								Improve the implementation of itertools.product()  
							
							... 
							
							
							
							* Fix-up issues pointed-out by Neal Norwitz.
* Add extensive comments.
* The lz->result variable is now a tuple instead of a list.
* Use fast macro getitem/setitem calls so most code is in-line.
* Re-use the result tuple if available (modify in-place instead of copy). 
							
						 
						
							2008-02-23 02:20:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								50986cc45b 
								
							 
						 
						
							
							
								
								First draft for itertools.product().  Docs and other updates forthcoming.  
							
							
							
						 
						
							2008-02-22 03:16:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								473170908e 
								
							 
						 
						
							
							
								
								Make starmap() match its pure python definition and accept any itertable input (not just tuples).  
							
							
							
						 
						
							2008-01-17 03:02:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								3a0de08d54 
								
							 
						 
						
							
							
								
								Fix test of count.__repr__() to ignore the 'L' if the count is a long  
							
							
							
						 
						
							2007-10-12 17:53:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								50e90e265f 
								
							 
						 
						
							
							
								
								itertools.count() no longer limited to sys.maxint.  
							
							
							
						 
						
							2007-10-04 00:20:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kristján Valur Jónsson 
								
							 
						 
						
							
							
							
							
								
							
							
								170eee9d6a 
								
							 
						 
						
							
							
								
								Fix those parts in the testsuite that assumed that sys.maxint would cause overflow on x64.  Now the testsuite is well behaved on that platform.  
							
							
							
						 
						
							2007-05-03 20:09:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								ea5962f86e 
								
							 
						 
						
							
							
								
								Whitespace normalization.  
							
							
							
						 
						
							2007-03-12 18:07:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								d36862cf78 
								
							 
						 
						
							
							
								
								Add itertools.izip_longest().  
							
							
							
						 
						
							2007-02-21 05:20:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								6d121f168c 
								
							 
						 
						
							
							
								
								Do not let overflows in enumerate() and count() pass silently.  
							
							
							
						 
						
							2007-02-08 00:07:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Georg Brandl 
								
							 
						 
						
							
							
							
							
								
							
							
								b84c13792d 
								
							 
						 
						
							
							
								
								Bug  #1486663 : don't reject keyword arguments for subclasses of builtin  
							
							... 
							
							
							
							types. 
							
						 
						
							2007-01-21 10:28:43 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jack Diederich 
								
							 
						 
						
							
							
							
							
								
							
							
								36234e8f66 
								
							 
						 
						
							
							
								
								* regression bug, count_next was coercing a Py_ssize_t to an unsigned Py_size_t  
							
							... 
							
							
							
							which breaks negative counts
* added test for negative numbers
will backport to 2.5.1 
							
						 
						
							2006-09-21 17:50:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Neal Norwitz 
								
							 
						 
						
							
							
							
							
								
							
							
								69e8897505 
								
							 
						 
						
							
							
								
								Bug  #1550714 : fix SystemError from itertools.tee on negative value for n.  
							
							... 
							
							
							
							Needs backport to 2.5.1 and earlier. 
							
						 
						
							2006-09-02 02:58:13 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Armin Rigo 
								
							 
						 
						
							
							
							
							
								
							
							
								a3f092751a 
								
							 
						 
						
							
							
								
								("Forward-port" of r46506)  
							
							... 
							
							
							
							Remove various dependencies on dictionary order in the standard library
tests, and one (clearly an oversight, potentially critical) in the
standard library itself - base64.py.
Remaining open issues:
 * test_extcall is an output test, messy to make robust
 * tarfile.py has a potential bug here, but I'm not familiar
   enough with this code.  Filed in as SF bug #1496501 .
 * urllib2.HTTPPasswordMgr() returns a random result if there is more
   than one matching root path.  I'm asking python-dev for
   clarification... 
							
						 
						
							2006-05-28 19:13:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								6b27cda643 
								
							 
						 
						
							
							
								
								Convert iterator __len__() methods to a private API.  
							
							
							
						 
						
							2005-09-24 21:23:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								fdf3bd6630 
								
							 
						 
						
							
							
								
								SF patch  #1171417 :  bug fix for islice() in docs  
							
							
							
						 
						
							2005-03-27 20:11:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								f77d0334f3 
								
							 
						 
						
							
							
								
								Revised the itertools quantifier recipes to match the performance of the  
							
							... 
							
							
							
							new builtins. 
							
						 
						
							2005-03-11 22:17:30 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b2594050ea 
								
							 
						 
						
							
							
								
								Added optional None arguments to itertools.islice().  
							
							
							
						 
						
							2004-12-05 09:25:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								a9f6092904 
								
							 
						 
						
							
							
								
								Fix and test weak referencing of itertools.tee objects.  
							
							
							
						 
						
							2004-10-17 16:40:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								ff5dc0ee77 
								
							 
						 
						
							
							
								
								Improve test coverage.  
							
							
							
						 
						
							2004-09-29 11:40:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								4cda01e260 
								
							 
						 
						
							
							
								
								* Increase test coverage.  
							
							... 
							
							
							
							* Have groupby() be careful about decreffing structure members. 
							
						 
						
							2004-09-28 04:45:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								ffdb8bb99c 
								
							 
						 
						
							
							
								
								Use floor division operator.  
							
							
							
						 
						
							2004-09-27 15:29:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								4533f1fb7f 
								
							 
						 
						
							
							
								
								Improve three recipes in the itertools docs.  
							
							
							
						 
						
							2004-09-23 07:27:39 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								beb7c0c434 
								
							 
						 
						
							
							
								
								test_sf_950057's gen1() used an assert statement, which caused the test  
							
							... 
							
							
							
							to fail when running with -O.  Changed to raise AssertionError instead. 
							
						 
						
							2004-07-18 17:34:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								9d7c870c6d 
								
							 
						 
						
							
							
								
								SF  #950057 :  itertools.chain doesn't "process" exceptions as they occur  
							
							... 
							
							
							
							Both cycle() and chain() were handling exceptions only when switching
input sources.  The patch makes the handle more immediate.
Will backport. 
							
						 
						
							2004-05-08 19:49:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								5cab2e3a88 
								
							 
						 
						
							
							
								
								Give itertools.repeat() a length method.  
							
							
							
						 
						
							2004-02-10 09:25:40 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								734fb5724f 
								
							 
						 
						
							
							
								
								Add a Guido inspired example for groupby().  
							
							
							
						 
						
							2004-01-20 20:04:40 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								64958a15d7 
								
							 
						 
						
							
							
								
								Guido grants a Christmas wish:  
							
							... 
							
							
							
							sorted() becomes a regular function instead of a classmethod. 
							
						 
						
							2003-12-17 20:43:33 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								d25c1c6351 
								
							 
						 
						
							
							
								
								Implement itertools.groupby()  
							
							... 
							
							
							
							Original idea by Guido van Rossum.
Idea for skipable inner iterators by Raymond Hettinger.
Idea for argument order and identity function default by Alex Martelli.
Implementation by Hye-Shik Chang (with tweaks by Raymond Hettinger). 
							
						 
						
							2003-12-06 16:23:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								ad983e79d6 
								
							 
						 
						
							
							
								
								Improve the implementation of itertools.tee().  
							
							... 
							
							
							
							Formerly, underlying queue was implemented in terms of two lists.  The
new queue is a series of singly-linked fixed length lists.
The new implementation runs much faster, supports multi-way tees, and
allows tees of tees without additional memory costs.
The root ideas for this structure were contributed by Andrew Koenig
and Guido van Rossum. 
							
						 
						
							2003-11-12 14:32:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								d591f666de 
								
							 
						 
						
							
							
								
								Replace the window() example with pairwise() which demonstrates tee().  
							
							
							
						 
						
							2003-10-26 15:34:50 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								f0c5aec85f 
								
							 
						 
						
							
							
								
								Minor improvements to itertools.tee():  
							
							... 
							
							
							
							* tee object is no longer subclassable
* independent iterators renamed to "itertools.tee_iterator"
* fixed doc string typo and added entry in the module doc string 
							
						 
						
							2003-10-26 14:25:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								6a5b027742 
								
							 
						 
						
							
							
								
								Added itertools.tee()  
							
							... 
							
							
							
							It works like the pure python verion except:
* it stops storing data after of the iterators gets deallocated
* the data queue is implemented with two stacks instead of one dictionary. 
							
						 
						
							2003-10-24 08:45:23 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								dbe3d280e7 
								
							 
						 
						
							
							
								
								Adopt Christian Stork's suggested argument order for the logic quantifiers.  
							
							... 
							
							
							
							Adopt Jeremy Fincher's suggested function name, "any", instead of "some". 
							
						 
						
							2003-10-05 16:47:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								42a61ed277 
								
							 
						 
						
							
							
								
								Simplify doctest of tee().  
							
							
							
						 
						
							2003-09-13 01:01:34 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								a098b33c93 
								
							 
						 
						
							
							
								
								Add an example to address a common question of how to split iterators.  
							
							
							
						 
						
							2003-09-08 23:58:40 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								a56f6b6600 
								
							 
						 
						
							
							
								
								SF bug  #793826 :  using itertools.izip to mutate tuples  
							
							... 
							
							
							
							Avoid Armin Rigo's dastardly exercise in re-entrancy. 
							
						 
						
							2003-08-29 23:09:58 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b5a420883c 
								
							 
						 
						
							
							
								
								Modified itertools.izip() to match the behavior of __builtin__.zip()  
							
							... 
							
							
							
							which can now take zero arguments. 
							
						 
						
							2003-08-08 05:10:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								77fe69bd08 
								
							 
						 
						
							
							
								
								Re-sync doc tests with the doc updates.  
							
							
							
						 
						
							2003-08-08 04:33:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								0242070d04 
								
							 
						 
						
							
							
								
								More tests  
							
							... 
							
							
							
							* Test with infinite inputs (using take() on the output)
* Test whether GC can find and eliminate cycles. 
							
						 
						
							2003-06-29 20:36:23 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								3567a876c7 
								
							 
						 
						
							
							
								
								Add take() to examples.  Tighten the islice() example  
							
							
							
						 
						
							2003-06-28 05:44:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								befa37dd05 
								
							 
						 
						
							
							
								
								Minor updates:  
							
							... 
							
							
							
							* Updated comment on design of imap()
* Added untraversed object in izip() structure
* Replaced the pairwise() example with a more general window() example 
							
						 
						
							2003-06-18 19:25:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								f0fa1c03a0 
								
							 
						 
						
							
							
								
								Test ability to handle various type of iterators.  
							
							
							
						 
						
							2003-05-29 07:18:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								929f06c570 
								
							 
						 
						
							
							
								
								Minor cleanups.  
							
							
							
						 
						
							2003-05-16 23:16:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								7c2bb5bc57 
								
							 
						 
						
							
							
								
								* Added a substantial number of edge case and argument tests for  
							
							... 
							
							
							
							the itertoolsmodule.
* Taught itertools.repeat(obj, n) to treat negative repeat counts as
  zero.  This behavior matches that for sequences and prevents
  infinite loops. 
							
						 
						
							2003-05-03 05:59:48 +00:00