cpython/Lib
Raymond Hettinger aa241e0149 Checkin Tim's fix to an error discussed on python-dev.
Also, add a testcase.

Formerly, the list_extend() code used several local variables to remember
its state across iterations.  Since an iteration could call arbitrary
Python code, it was possible for the list state to be changed.  The new
code uses dynamic structure references instead of C locals.  So, they
are always up-to-date.

After list_resize() is called, its size has been updated but the new
cells are filled with NULLs.  These needed to be filled before arbitrary
iteration code was called; otherwise, that code could attempt to modify
a list that was in a semi-invalid state.  The solution was to change
the ob->size field back to a value reflecting the actual number of valid
cells.
2004-09-26 19:24:20 +00:00
..
bsddb Purged Berkeley code of references to the long-obsolete whrandom. 2004-08-08 00:54:21 +00:00
compiler Whitespace normalization. 2004-09-12 03:49:31 +00:00
curses Somehow (no idea how!) I missed half of patch #1005008. Sorry about that. 2004-08-07 15:20:15 +00:00
distutils SF Patch 1022011: Add a command-line argument --no-autoreq, which sets the 2004-09-17 08:34:12 +00:00
email Test cases and fixes for bugs described in patch #873418: email/Message.py: 2004-08-16 15:47:34 +00:00
encodings SF patch #998993: The UTF-8 and the UTF-16 stateful decoders now support 2004-09-07 20:24:22 +00:00
hotshot Move testing code into "if __name__ == '__main__'" so it's not run on import. 2003-03-28 16:28:48 +00:00
idlelib 1. If user passes a non-existant filename on the commandline, just open 2004-08-22 05:14:32 +00:00
lib-old Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
lib-tk Convert boolean results back to strings. Fixes #807871. 2004-09-18 16:01:23 +00:00
logging Added log() function 2004-09-24 11:45:52 +00:00
plat-aix3
plat-aix4
plat-atheos Repair bizarre generated Python. 2004-07-18 06:35:21 +00:00
plat-beos5 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-darwin
plat-freebsd2
plat-freebsd3
plat-freebsd4
plat-freebsd5
plat-freebsd6 Whitespace normalization. 2004-08-20 03:47:14 +00:00
plat-generic
plat-irix5 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-irix6 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-linux2 Repair bizarre generated Python. 2004-07-18 06:35:21 +00:00
plat-mac Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-netbsd1 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-next3
plat-os2emx Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-riscos Patch #941486: add os.path.lexists(). Also fix bug #940578 by using lexists in glob.glob. 2004-08-30 10:19:56 +00:00
plat-sunos5 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
plat-unixware7 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
site-packages
test Checkin Tim's fix to an error discussed on python-dev. 2004-09-26 19:24:20 +00:00
xml Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
BaseHTTPServer.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
Bastion.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
CGIHTTPServer.py Patch #727483: Add AUTH_TYPE and REMOTE_USER. 2004-08-29 16:53:26 +00:00
ConfigParser.py ConfigParser: 2004-05-18 04:24:02 +00:00
Cookie.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
DocXMLRPCServer.py Use multi-line import 2004-08-31 11:38:12 +00:00
HTMLParser.py remove unnecessary override of base class method 2004-09-08 22:58:36 +00:00
MimeWriter.py
Queue.py Simplified the new get/get_nowait/put/put_nowait implementations a bit. 2004-07-12 01:20:32 +00:00
SimpleHTTPServer.py Patch #1011123: Use urllib.quote() instead of cgi.escape() for encoding the 2004-08-21 10:43:29 +00:00
SimpleXMLRPCServer.py SF patch #834015: Remove imports of unused modules 2003-11-02 09:47:05 +00:00
SocketServer.py TCPServer: Fixed typo in class docstring. 2003-10-09 23:48:52 +00:00
StringIO.py Arghh, checked in wrong draft. Replacing with correct one. 2004-09-23 07:00:47 +00:00
UserDict.py The default argument in dict.setdefault() defaults to None. 2004-05-27 09:41:04 +00:00
UserList.py Guido grants a Christmas wish: 2003-12-17 20:43:33 +00:00
UserString.py Remove .width() and .iswide() from UserString as well. 2004-08-04 08:01:06 +00:00
_LWPCookieJar.py Use multi-line import 2004-08-31 11:38:12 +00:00
_MozillaCookieJar.py Whitespace normalization. 2004-09-01 13:10:32 +00:00
__future__.py
__phello__.foo.py
_strptime.py Replace str.find()!=1 with the more readable "in" operator. 2004-05-04 09:21:43 +00:00
_threading_local.py Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
aifc.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
anydbm.py
asynchat.py Replace left(), right(), and __reversed__() with the more general purpose 2004-03-01 23:16:22 +00:00
asyncore.py [Bug #1011606] Only check file descriptors for exceptional conditions if the fd is readable or writable 2004-09-01 14:04:51 +00:00
atexit.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
audiodev.py
base64.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
bdb.py Patch #1003640: replace checkline() function parsing with new breakpoint logic: 2004-08-30 13:29:44 +00:00
binhex.py Remove a useless operation, setting name to itself 2004-06-07 03:45:56 +00:00
bisect.py SF Patch #864863: Bisect C implementation 2004-01-05 10:13:35 +00:00
calendar.py There is no reason to have an underscore after self 2004-06-07 03:47:06 +00:00
cgi.py Let cgi.parse_header() properly unquote headers (patch #1008597). 2004-08-14 15:39:34 +00:00
cgitb.py Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
chunk.py
cmd.py Whitespace normalization. 2004-07-07 20:54:48 +00:00
code.py
codecs.py SF patch #998993: The UTF-8 and the UTF-16 stateful decoders now support 2004-09-07 20:24:22 +00:00
codeop.py Fix typo fix. 2003-11-20 13:38:01 +00:00
colorsys.py
commands.py
compileall.py Patch #975885: print file name in err msg in quiet mode 2004-06-20 20:59:56 +00:00
cookielib.py [Patch #969907] Add traceback to warning output 2004-07-10 18:32:12 +00:00
copy.py Refactor the copy dispatcher code in copy.py. Simplifies and shortens 2004-03-08 05:59:33 +00:00
copy_reg.py Revert previous checkin and just add a comment about constructor_ob. 2003-06-27 16:58:43 +00:00
csv.py Make the fieldnames argument optional in the DictReader. If self.fieldnames 2003-10-03 14:03:01 +00:00
dbhash.py typo 2003-05-05 14:16:41 +00:00
decimal.py SF patch #1020845: Decimal performance enhancements 2004-09-19 01:54:09 +00:00
difflib.py Typo fix: 'comparisions' is not a word 2004-09-10 12:59:54 +00:00
dircache.py Patch #707167: Pass dircache exceptions to the caller. Fixes #682813. 2003-09-20 15:52:21 +00:00
dis.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
doctest.py Removed debug_script from the public API: no docs, not public. I'm in 2004-09-26 03:50:06 +00:00
dumbdbm.py Give dumbdbm a sync() method which Shelve can call. Should solve some 2003-07-14 12:15:15 +00:00
dummy_thread.py Cause calling interrupt_main in main thread raise KeyboardInterrupt instantly. 2003-06-13 23:56:32 +00:00
dummy_threading.py Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
filecmp.py SF bug #453515: filecmp.dircmp case sensitivity bug 2003-09-02 05:42:02 +00:00
fileinput.py
fnmatch.py SF patch #765238: fix fnmatch.__all__ 2003-07-13 16:06:26 +00:00
formatter.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
fpformat.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
ftplib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
getopt.py
getpass.py
gettext.py This change implements the following gettext features, as 2004-07-22 18:44:01 +00:00
glob.py Patch #941486: add os.path.lexists(). Also fix bug #940578 by using lexists in glob.glob. 2004-08-30 10:19:56 +00:00
gopherlib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
gzip.py Ack, removed useless import of os I just introduced. 2004-07-27 21:05:21 +00:00
heapq.py Fix erroneous docstring comment. 2004-09-06 07:04:09 +00:00
hmac.py Speed HMAC.copy() by installing a secret backdoor argument to 2004-03-20 20:11:29 +00:00
htmlentitydefs.py Add two dictionaries to htmlentitydefs: name2codepoint maps 2003-04-16 09:46:13 +00:00
htmllib.py clean up the API a little; exceptions are defined by this module 2004-09-09 02:24:13 +00:00
httplib.py Patch #1025790: Add status code constants to httplib. 2004-09-18 09:03:49 +00:00
ihooks.py ihooks FancyModuleLoader.load_module() 2004-08-04 02:29:12 +00:00
imaplib.py Fix typo in getquotaroot parameter reported by Thierry FLORAC. Also amplify doc string for select to indicate proper way to obtain other responses. 2004-08-10 01:24:54 +00:00
imghdr.py
imputil.py ihooks FancyModuleLoader.load_module() 2004-08-04 02:29:12 +00:00
inspect.py Import no longer needed. 2004-09-20 18:08:31 +00:00
keyword.py Replace str.find()!=1 with the more readable "in" operator. 2004-05-04 09:21:43 +00:00
linecache.py Whitespace normalization. 2003-06-29 16:59:43 +00:00
locale.py Patch #962487: Don't crash for empty locale names. 2004-07-26 12:45:18 +00:00
macpath.py Whitespace normalization. 2004-08-30 13:39:50 +00:00
macurl2path.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
mailbox.py Patch #880621: the last message of a Babyl mailbox ends in '\037' instead of 2004-08-21 12:30:26 +00:00
mailcap.py
markupbase.py [Patch #965175] Incorporate a suggestion for a better error message 2004-07-10 21:49:45 +00:00
mhlib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
mimetools.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
mimetypes.py Remove self from the arguments for the function add_type(). 2003-12-19 18:15:10 +00:00
mimify.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
modulefinder.py Fix SF item #876278: Unbounded recursion in modulefinder. 2004-05-11 15:10:59 +00:00
multifile.py Stacks based on lists work better and read more clearly when they 2004-05-04 08:21:52 +00:00
mutex.py * Move collections.deque() in from the sandbox 2004-01-29 06:37:52 +00:00
netrc.py SF bug 557704: netrc module can't handle all passwords 2003-04-24 20:11:20 +00:00
new.py
nntplib.py Patch #823072: add option to NOT use ~/.netrc in nntplib.NNTP(). 2004-08-03 14:36:32 +00:00
ntpath.py Patch #941486: add os.path.lexists(). Also fix bug #940578 by using lexists in glob.glob. 2004-08-30 10:19:56 +00:00
nturl2path.py
opcode.py Install two code generation optimizations that depend on NOP. 2004-06-21 16:31:15 +00:00
optparse.py Upgrade optparse module and tests to Optik 1.5a1: 2004-07-31 16:15:44 +00:00
os.py Patch #1021596: Check for None to determine whether _urandomfd is 2004-09-18 16:07:58 +00:00
os2emxpath.py Patch #941486: add os.path.lexists(). Also fix bug #940578 by using lexists in glob.glob. 2004-08-30 10:19:56 +00:00
pdb.doc bug #989672: pdb.doc and the help messages for the help_d and help_u methods 2004-08-14 15:19:28 +00:00
pdb.py Patch #1003640: replace checkline() function parsing with new breakpoint logic: 2004-08-30 13:29:44 +00:00
pickle.py Make 'bin' argument trigger DeprecationWarning 2004-08-07 16:27:24 +00:00
pickletools.py Add argument to docstring 2004-08-07 16:51:30 +00:00
pipes.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
pkgutil.py SF patch #806246: use basestring where possible 2003-09-17 05:50:59 +00:00
platform.py Added normalization for Windows system name. Closes SF #945665. 2004-06-19 17:17:00 +00:00
popen2.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
poplib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
posixfile.py Add support for FreeBSD 6. 2004-08-18 15:13:41 +00:00
posixpath.py Patch #941486: add os.path.lexists(). Also fix bug #940578 by using lexists in glob.glob. 2004-08-30 10:19:56 +00:00
pprint.py typo - fixes 954030. 2004-05-14 16:31:56 +00:00
profile.doc Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
profile.py Using repr() generates entries that the current stats package can't 2004-07-12 23:38:02 +00:00
pstats.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
pty.py Removed no-longer-needed convolutions to recover from damaged modules 2004-08-02 03:55:18 +00:00
py_compile.py Getting rid of macfs. 2003-02-27 23:18:46 +00:00
pyclbr.py PEP-0318, @decorator-style. In Guido's words: 2004-08-02 06:10:11 +00:00
pydoc.py Patch #934356: if a module defines __all__, believe that rather than using 2004-08-30 14:13:04 +00:00
quopri.py
random.py SF #1027105: HardwareRandom should be renamed OSRandom 2004-09-13 22:23:21 +00:00
re.py
reconvert.py Remove specific Python version from #! 2004-04-06 19:42:34 +00:00
regex_syntax.py
regsub.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
repr.py Committing Tim's patch for SF bug #983585: 2004-07-01 20:28:47 +00:00
rexec.py Remove rotor, xreadlines modules 2004-08-31 13:31:42 +00:00
rfc822.py Bug #1030125: rfc822 __iter__ problem 2004-09-22 17:17:32 +00:00
rlcompleter.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
robotparser.py Patch #1014237: Consistently return booleans throughout. 2004-08-23 20:42:35 +00:00
sched.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
sets.py Remove deprecation of sets.Set.update(). 2003-11-19 15:52:14 +00:00
sgmllib.py add name that should be considered public to __all__ 2004-09-09 01:49:58 +00:00
shelve.py Fixup bare try/except. 2003-05-27 06:30:52 +00:00
shlex.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
shutil.py Catch OSError raised when src or dst argument to os.path.samefile doesn't 2004-08-14 14:51:01 +00:00
site.py Fix bug in addsitedir() to properly handle the lack of a second argument. 2004-07-20 02:28:28 +00:00
smtpd.py Updated my email address to something that works <wink>. 2004-07-12 23:10:08 +00:00
smtplib.py Debug output is now printed to sys.stderr . 2004-07-10 23:14:30 +00:00
sndhdr.py
socket.py Patch #1003700: Add socketpair function to socket module. 2004-08-09 04:51:41 +00:00
sre.py Granted Noam Raphael's request for minor improvements to the re module and 2004-09-24 03:41:05 +00:00
sre_compile.py Fix _sre.CODESIZE on 64-bit machines in UCS-4 mode. Fixes #931848. 2004-05-07 07:18:13 +00:00
sre_constants.py PEP 292 classes Template and SafeTemplate are added to the string module. 2004-08-25 02:22:30 +00:00
sre_parse.py Minor aesthetic change in sre_parse.py, as suggested by Mike Coleman. 2004-09-03 20:15:56 +00:00
stat.py
statcache.py
statvfs.py
string.py Make the regex pattern easier to read, understand, and modify 2004-09-26 18:56:44 +00:00
stringold.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
stringprep.py Whitespace normalization. 2004-07-07 20:54:48 +00:00
sunau.py
sunaudio.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
symbol.py SF patch #1007189, multi-line imports, for instance: 2004-08-31 10:07:13 +00:00
symtable.py
tabnanny.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
tarfile.py Patch #1029061: Always extract member names from the tarinfo. 2004-09-18 09:08:52 +00:00
telnetlib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
tempfile.py Record that FCNTL.py has gone away; remove FCNTL hack in tempfile.py; 2004-07-18 23:58:17 +00:00
textwrap.py SF #965425: fix so hyphenated words surrounded by punctuation are 2004-06-03 01:59:41 +00:00
this.py Back rev 1.3 out per Raymond's request. 2004-02-06 04:40:56 +00:00
threading.py Thread.__delete: Discussion of internal obscurities belongs in comments 2004-07-21 03:36:52 +00:00
timeit.py SF patch #868736: Disable GC for timeit 2004-01-04 03:47:51 +00:00
toaiff.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
token.py PEP-0318, @decorator-style. In Guido's words: 2004-08-02 06:10:11 +00:00
tokenize.py PEP-0318, @decorator-style. In Guido's words: 2004-08-02 06:10:11 +00:00
trace.py Open file in universal newline mode when passing to compile(). Solution 2004-04-16 03:28:19 +00:00
traceback.py Whitespace normalization. 2004-01-18 20:29:55 +00:00
tty.py
types.py Oops! Restored the pickle test to test_pyclbr, but changed types.py so 2004-07-18 00:08:11 +00:00
tzparse.py
unittest.py Added an __iter__ method for test suites. 2004-08-28 15:22:12 +00:00
urllib.py Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
urllib2.py Use multi-line import 2004-08-31 11:38:12 +00:00
urlparse.py rsync is now a recognized protocol that uses "netloc" (i.e. specifies a network 2004-06-29 04:02:40 +00:00
user.py
uu.py
warnings.py Stop producing or using OverflowWarning. PEP 237 thought this would 2004-08-25 02:14:08 +00:00
wave.py Fix SF #1001053, wave.open() with unicode filename fails 2004-08-01 22:48:06 +00:00
weakref.py Use multi-line import 2004-08-31 11:38:12 +00:00
webbrowser.py [Patch #981794] Add support for Firefox/Firebird 2004-07-10 22:07:02 +00:00
whichdb.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
whrandom.py Trigger DeprecationWarning 2004-08-07 21:44:37 +00:00
xdrlib.py Replace backticks with repr() or "%r" 2004-02-12 17:35:32 +00:00
xmllib.py Do not use the default namespace for attributes. 2004-05-02 20:37:13 +00:00
xmlrpclib.py Replace yield with sequence class. Fixes #1009803. 2004-08-22 16:04:50 +00:00
zipfile.py Make struct formats for specifying file size to be unsigned instead of signed 2004-07-10 19:09:20 +00:00