cpython/Lib
Guido van Rossum 59d1d2b434 Iterators phase 1. This comprises:
new slot tp_iter in type object, plus new flag Py_TPFLAGS_HAVE_ITER
new C API PyObject_GetIter(), calls tp_iter
new builtin iter(), with two forms: iter(obj), and iter(function, sentinel)
new internal object types iterobject and calliterobject
new exception StopIteration
new opcodes for "for" loops, GET_ITER and FOR_ITER (also supported by dis.py)
new magic number for .pyc files
new special method for instances: __iter__() returns an iterator
iteration over dictionaries: "for x in dict" iterates over the keys
iteration over files: "for x in file" iterates over lines

TODO:

documentation
test suite
decide whether to use a different way to spell iter(function, sentinal)
decide whether "for key in dict" is a good idea
use iterators in map/filter/reduce, min/max, and elsewhere (in/not in?)
speed tuning (make next() a slot tp_next???)
2001-04-20 19:13:02 +00:00
..
compiler Pop loop off the loop stack before handling the loop's else clause. 2001-04-12 21:54:41 +00:00
curses Bug #412086, reported by Peter Wilson: The _curses module doesn't 2001-04-05 16:08:41 +00:00
distutils Pete Shinners discovered that zipfile.ZipFile() is called with mode 2001-04-14 16:17:00 +00:00
encodings
idlelib
lib-old
lib-tk The lower() and tkraise() methods were calling the Canvas widget 2001-04-10 21:13:06 +00:00
plat-aix3 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-aix4 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-beos5 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-freebsd2 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-freebsd3 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-freebsd4 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-freebsd5 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-generic
plat-irix5 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-irix6 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-linux1 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-linux2 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-netbsd1 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-next3
plat-riscos Updated version of RISCOS support. SF patch 411213 by Dietmar Schwertberger 2001-04-10 22:07:43 +00:00
plat-sunos4
plat-sunos5 Replace all the platform-specific TERMIOS modules with a portable version 2001-02-27 21:35:40 +00:00
plat-unixware7 SOCKET.py and TERMIOS.py are no longer used in this release. 2001-04-11 23:43:09 +00:00
site-packages
test Implement, test and document "key in dict" and "key not in dict". 2001-04-20 16:50:40 +00:00
xml Corrected default value of the DocumentType.internalSubset attribute based 2001-04-05 14:41:30 +00:00
__future__.py Remove redundant "__future__:" from module docstring. 2001-03-15 10:45:44 +00:00
aifc.py
anydbm.py
asynchat.py Fix from the Madusa mailing list: 2001-04-08 07:23:44 +00:00
asyncore.py dispatcher.__repr__() was unprepared to handle the address for a Unix 2001-04-20 19:04:55 +00:00
atexit.py
audiodev.py
base64.py
BaseHTTPServer.py
Bastion.py
bdb.py Make it clear that a bdb subclass must implement do_clear(). 2001-04-08 15:05:16 +00:00
binhex.py
bisect.py
builtin.py
calendar.py
cgi.py Add a whole lot of stuff to __all__. 2001-03-19 13:40:44 +00:00
CGIHTTPServer.py
chunk.py Fix typo in attribute name (chunk_size should be chunksize) found by 2001-04-15 12:40:13 +00:00
cmd.py This is SF patch #405952, by Anthony Baxter: 2001-03-22 21:59:20 +00:00
code.py
codecs.py
codeop.py Remove useless imports, as reported by PyChecker. 2001-04-08 00:43:13 +00:00
colorsys.py
commands.py
compileall.py Fix compileall.py so that it fails on SyntaxErrors 2001-04-18 01:20:21 +00:00
ConfigParser.py Make sure ConfigParser uses .optionxform() consistently; this affects 2001-02-26 21:55:34 +00:00
Cookie.py Since this module already uses doctest-style examples, I figured I'd 2001-04-06 19:39:11 +00:00
copy.py
copy_reg.py
dbhash.py
difflib.py Improve accuracy. In the .tex file, note the new "% BUG:" comments: an 2001-02-20 11:24:35 +00:00
dircache.py Whitespace normalization. 2001-03-16 08:29:48 +00:00
dis.py Iterators phase 1. This comprises: 2001-04-20 19:13:02 +00:00
doctest.py Changed doctest to run tests in alphabetic order of name. 2001-03-21 23:07:59 +00:00
dospath.py
dumbdbm.py RISCOS changes by dschwertberger. 2001-03-02 06:43:49 +00:00
filecmp.py
fileinput.py
fnmatch.py Donovan Baarda <abo@users.sourceforge.net>: 2001-03-21 18:05:48 +00:00
formatter.py
fpformat.py
ftplib.py remove global decl about unused variable 2001-04-09 04:31:50 +00:00
getopt.py
getpass.py Get the needed constants from termios, not TERMIOS. 2001-02-27 21:23:31 +00:00
gettext.py
glob.py
gopherlib.py
gzip.py Bug #409419: delete seek() and tell() methods, so callers can use getattr() 2001-03-20 15:51:14 +00:00
htmlentitydefs.py
htmllib.py
httplib.py SF patch #405845 by Martin von Löwis 2001-04-13 14:57:08 +00:00
ihooks.py
imaplib.py Fix previous checkin, hopelessly broken as it was; reported by Detlef Lannert. 2001-02-22 13:24:27 +00:00
imghdr.py
imputil.py Add an uninstall method to the ImportManager. 2001-04-07 16:05:24 +00:00
inspect.py Clean up isroutine(). 2001-04-13 14:04:02 +00:00
keyword.py
knee.py
linecache.py
locale.py Implement Mark Favas's suggestion. There's a clear bug in _group(): 2001-04-16 16:04:10 +00:00
macpath.py
macstat.py
macurl2path.py
mailbox.py Get rid of the seek() method on the _Mailbox class. This was a 2001-04-15 13:32:27 +00:00
mailcap.py
mhlib.py
mimetools.py Do not hide a failure to create a temporary file; if it fails the work 2001-02-23 20:04:54 +00:00
mimetypes.py
MimeWriter.py
mimify.py Fix an unqualified except:. 2001-04-10 15:42:02 +00:00
multifile.py Multifile.read(): Fix a broken conversion to string methods. 2001-03-12 02:56:15 +00:00
mutex.py
netrc.py Fix typo in attribute name (file should be filename) found by 2001-04-15 12:51:42 +00:00
nntplib.py
ntpath.py
nturl2path.py
os.py Unify _Environ processing on riscos with other platforms. 2001-03-07 09:05:45 +00:00
pdb.doc
pdb.py
persist.py
pickle.py test_pickle works on sizeof(long)==8 boxes again. 2001-04-10 05:02:52 +00:00
pipes.py
popen2.py
poplib.py
posixfile.py Fix two unqualified except: clauses. 2001-04-10 15:44:33 +00:00
posixpath.py In walk(), don't die when os.lstat() raises os.error, e.g. because a 2001-04-16 18:12:04 +00:00
pprint.py
pre.py Make docstrings raw, since they contain literal backslashes. 2001-03-10 09:33:14 +00:00
profile.doc
profile.py Add doc string for run from profile.doc. (pydoc motivates me to write 2001-03-14 20:01:19 +00:00
pstats.py Should resolve [ #416039 ] pstats browser crashes. 2001-04-14 15:16:05 +00:00
pty.py
py_compile.py
pyclbr.py
pydoc.py One-character style change to appease Netscape stylesheets. 2001-04-13 15:04:32 +00:00
Queue.py
quopri.py Strip \r as trailing whitespace as part of soft line endings. 2001-03-22 22:30:21 +00:00
random.py
re.py
reconvert.py
regex_syntax.py
regsub.py
repr.py
rexec.py
rfc822.py
rlcompleter.py
robotparser.py
sched.py
sgmllib.py Fix typo in exception name (SGMLParserError should be SGMLParseError) 2001-04-15 13:01:41 +00:00
shelve.py
shlex.py Unused variable (caught by PyChecker) removed. 2001-04-17 17:20:19 +00:00
shutil.py
SimpleHTTPServer.py
site.py Two minor changes for better Jython compatibility. Finn Bock says: 2001-03-23 17:53:49 +00:00
smtpd.py Fix typo in exception name (UnimplementedError should be 2001-04-15 13:06:04 +00:00
smtplib.py
sndhdr.py
socket.py Whitespace normalization. 2001-03-29 04:36:09 +00:00
SocketServer.py Add a close_request method to the BaseServer so that the TCPServer class 2001-04-11 04:02:05 +00:00
sre.py sre 2.1b2 update: 2001-03-22 15:50:10 +00:00
sre_compile.py sre 2.1b2 update: 2001-03-22 15:50:10 +00:00
sre_constants.py sre 2.1b2 update: 2001-03-22 15:50:10 +00:00
sre_parse.py sre 2.1b2 update: 2001-03-22 15:50:10 +00:00
stat.py
statcache.py
statvfs.py
string.py
StringIO.py
stringold.py
sunau.py
sunaudio.py
symbol.py
symtable.py Fix three PyChecker-detected gotchas. 2001-04-16 18:43:18 +00:00
tabnanny.py Get rid of useless string import, as reported by Neal Norwitz's PyChecker.py 2001-04-08 00:38:42 +00:00
telnetlib.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
tempfile.py Search /tmp before /var/tmp and /usr/tmp -- this seems preferred. 2001-03-02 05:51:16 +00:00
TERMIOS.py No need to call filterwarnings() to suppress further warnings from this 2001-02-27 21:51:47 +00:00
threading.py SF bug [#410708] Condition.wait() and KeyboardInterrupt. 2001-04-02 20:15:57 +00:00
toaiff.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
token.py
tokenize.py Provide a StopTokenizing exception for conveniently exiting the loop. 2001-03-23 05:22:49 +00:00
traceback.py Whitespace normalization. 2001-03-29 04:36:09 +00:00
tty.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
types.py
tzparse.py Add a deprecation warning to this module. 2001-03-20 18:36:48 +00:00
unittest.py - Typo in message for TestCase.failIfEqual() 2001-04-15 09:18:32 +00:00
urllib.py Fix SF bug [ #416231 ] urllib.basejoin fails to apply some ../. 2001-04-15 20:47:33 +00:00
urllib2.py Fix typo (missing "req." prefix on error_302_dict) found by Neil 2001-04-15 13:08:01 +00:00
urlparse.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
user.py
UserDict.py
UserList.py
UserString.py
uu.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
warnings.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
wave.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
weakref.py Weak*Dictionary: Added docstrings to the classes. 2001-04-19 16:26:06 +00:00
webbrowser.py _synthesize(): Helper function: when the users passes a specific 2001-04-12 22:07:27 +00:00
whichdb.py Whitespace normalization. 2001-03-16 08:29:48 +00:00
whrandom.py
xdrlib.py final round of __all__ lists (I hope) - skipped urllib2 because Moshe may be 2001-03-01 04:27:19 +00:00
xmllib.py Moved clearing of "literal" flag. The flag is set in setliteral which 2001-03-14 17:03:30 +00:00
zipfile.py Mark Favas points out that there's an 'self.fp.flush()' call in the 2001-04-14 16:45:14 +00:00