cpython/Lib
Tim Peters add09b4149 SF bug 840829: weakref callbacks and gc corrupt memory.
subtype_dealloc():  This left the dying object exposed to gc, so that
if cyclic gc triggered during the weakref callback, gc tried to delete
the dying object a second time.  That's a disaster.  subtype_dealloc()
had a (I hope!) unique problem here, as every normal dealloc routine
untracks the object (from gc) before fiddling with weakrefs etc.  But
subtype_dealloc has obscure technical reasons for re-registering the
dying object with gc (already explained in a large comment block at
the bottom of the function).

The fix amounts to simply refraining from reregistering the dying object
with gc until after the weakref callback (if any) has been called.

This is a critical bug (hard to predict, and causes seemingly random
memory corruption when it occurs).  I'll backport it to 2.3 later.
2003-11-12 20:43:28 +00:00
..
bsddb * Use weakref's of DBCursor objects for the iterator cursors to avoid a 2003-11-03 01:04:41 +00:00
compiler Fix SF bug [ 788011 ] compiler.compileFile fails on csv.py 2003-08-28 02:09:26 +00:00
curses Modernize code a bit: use isinstance instead of type(); return True/False 2003-09-02 11:52:06 +00:00
distutils Patch #812378: Normalize white space. 2003-10-24 20:09:23 +00:00
email Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
encodings Fix typo in the comments. 2003-09-24 03:57:36 +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 SF #775057, fix IDLE problem in about dialog 2003-10-28 21:57:10 +00:00
lib-old
lib-tk Patch #805976: Add DOTBOX and UNDERLINE. 2003-09-20 10:52:56 +00:00
logging SF bug #835457: Small typo in logging documentation 2003-11-08 11:40:03 +00:00
plat-aix3
plat-aix4
plat-atheos
plat-beos5
plat-darwin These were somehow never added to CVS. 2002-12-30 22:14:35 +00:00
plat-freebsd2
plat-freebsd3
plat-freebsd4
plat-freebsd5
plat-generic
plat-irix5 Fix a typo in the mktemp -> mkstemp patch. 2002-08-10 00:17:59 +00:00
plat-irix6 Fix a typo in the mktemp -> mkstemp patch. 2002-08-10 00:17:59 +00:00
plat-linux1
plat-linux2 Regenerate. Fixes #618012. 2002-11-23 12:09:28 +00:00
plat-mac Backport from r23c1-branch: 2003-07-21 20:47:11 +00:00
plat-netbsd1
plat-next3
plat-os2emx Extend the pwd & grp emulations to support accessing the pwd/grp 2003-07-10 12:52:54 +00:00
plat-riscos Patch #734231: Update RiscOS support. In particular, correct 2003-05-10 07:36:56 +00:00
plat-sunos4
plat-sunos5
plat-unixware7
site-packages
test SF bug 840829: weakref callbacks and gc corrupt memory. 2003-11-12 20:43:28 +00:00
xml Add missing self. before curNode. This may need to be committed 2003-06-29 04:50:34 +00:00
__future__.py
__phello__.foo.py
_strptime.py Let library modules use the new keyword arguments for list.sort(). 2003-10-16 05:53:16 +00:00
aifc.py Fix wanrings about unsigned hex constants. 2002-08-12 22:11:28 +00:00
anydbm.py
asynchat.py [Patch #649762] Fix for asynchat endless loop 2003-03-10 15:16:54 +00:00
asyncore.py [Part of patch #648322] Delete the poll2() function, which uses a 'poll' extension module that was once part of Medusa. Contributed by Kjetil Jacobsen 2003-10-22 14:38:27 +00:00
atexit.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
audiodev.py
base64.py
BaseHTTPServer.py SF patch #747364: BaseHTTPServer doesn't need StringIO intermediary 2003-08-09 05:01:41 +00:00
Bastion.py Sabotage rexec.py. It is not safe since the new-style classes. 2003-01-06 15:43:34 +00:00
bdb.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
binhex.py
bisect.py
calendar.py SF 685011: calendar module overflow handling 2003-02-13 22:58:02 +00:00
cgi.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
CGIHTTPServer.py SF bug #770601: CGIHTTPServer and environment variables (bug + solution) 2003-07-14 06:56:32 +00:00
cgitb.py Whitespace normalization. 2003-06-29 05:46:54 +00:00
chunk.py
cmd.py Add docstring 2003-10-22 14:38:54 +00:00
code.py - Finally fixed the bug in compile() and exec where a string ending 2003-02-13 22:07:59 +00:00
codecs.py Fix typos. 2003-02-02 23:08:27 +00:00
codeop.py Don't replace an empty line with "pass" when symbol == "eval", where 2003-05-16 01:24:30 +00:00
colorsys.py
commands.py
compileall.py Fix typo in docstring: The switch is '-x', not '-s'. 2003-08-27 20:19:35 +00:00
ConfigParser.py Make both items() methods return lists; one had changed to return an 2003-10-21 16:45:00 +00:00
Cookie.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
copy.py Copy builtin functions as atomic. Fixes #746304. Will backport to 2.2. 2003-06-14 07:10:06 +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
difflib.py Let library modules use the new keyword arguments for list.sort(). 2003-10-16 05:53:16 +00:00
dircache.py Patch #707167: Pass dircache exceptions to the caller. Fixes #682813. 2003-09-20 15:52:21 +00:00
dis.py Fixed dis.disassemble_string(). 2003-10-28 12:17:25 +00:00
doctest.py SF patch #806246: use basestring where possible 2003-09-17 05:50:59 +00:00
DocXMLRPCServer.py Patch #727805: Remove extra line ending from CGI responses. 2003-05-01 05:05:09 +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 Brett Cannon's dummy_thread and dummy_threading modules (SF patch 2002-12-30 22:30:22 +00:00
FCNTL.py
filecmp.py SF bug #453515: filecmp.dircmp case sensitivity bug 2003-09-02 05:42:02 +00:00
fileinput.py Test that chmod() actually exists before calling it (it doesn't on MacOS9). 2003-01-08 16:33:16 +00:00
fnmatch.py SF patch #765238: fix fnmatch.__all__ 2003-07-13 16:06:26 +00:00
formatter.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
fpformat.py
ftplib.py
getopt.py A few naughty external scripts do 'raise getopt.error, "blah"', and 2003-02-06 19:52:56 +00:00
getpass.py Fix SF #640094, on win32 getpass runs into unix_getpass 2002-11-20 23:15:54 +00:00
gettext.py GNUTranslations._parse(): Initialize local variable k so that if the 2003-10-04 02:28:31 +00:00
glob.py
gopherlib.py Avoid list as a variable name. 2003-09-22 12:43:16 +00:00
gzip.py [Patch #654421 from Matthew Mueller] 2003-02-05 21:35:07 +00:00
hmac.py
htmlentitydefs.py Add two dictionaries to htmlentitydefs: name2codepoint maps 2003-04-16 09:46:13 +00:00
htmllib.py Docstring fix: XHTML 1.0 entities are supported 2003-10-27 15:47:48 +00:00
HTMLParser.py Accept commas in unquoted attribute values. 2003-03-14 16:21:57 +00:00
httplib.py fixed obvious bug in _send_header as per SF bug #831271 2003-11-09 16:41:38 +00:00
ihooks.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
imaplib.py Patch #798297: Add IMAP THREAD command. 2003-11-10 06:44:44 +00:00
imghdr.py
imputil.py
inspect.py Let library modules use the new keyword arguments for list.sort(). 2003-10-16 05:53:16 +00:00
keyword.py Patrick K. O'Brien notices that kwlist was missing from __all__. 2002-10-30 05:17:22 +00:00
linecache.py Whitespace normalization. 2003-06-29 16:59:43 +00:00
locale.py Support '' as the argument for the setlocale emulation. Fixes #678259. 2003-03-30 15:42:13 +00:00
macpath.py Getting rid of macfs. 2003-02-27 23:18:46 +00:00
macurl2path.py
mailbox.py Undocumented feature: MHMailbox sets the msg object's _mh_msgno 2002-09-12 05:08:00 +00:00
mailcap.py
markupbase.py Whitespace normalization. 2003-04-24 16:02:54 +00:00
mhlib.py Implement and apply PEP 322, reverse iteration 2003-11-06 14:06:48 +00:00
mimetools.py choose_boundary(): This no longer uses random, so stop importing it. 2003-06-15 22:12:23 +00:00
mimetypes.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
MimeWriter.py
mimify.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
modulefinder.py up the b/w compatibility requirement to 2.2 2003-07-18 15:31:40 +00:00
multifile.py Back out multifile.py 1.19 and 1.20. Fixes #514676. 2002-09-22 09:01:08 +00:00
mutex.py
netrc.py SF bug 557704: netrc module can't handle all passwords 2003-04-24 20:11:20 +00:00
new.py
nntplib.py - Several methods of nntplib.NNTP have grown an optional file argument 2003-04-19 18:04:57 +00:00
ntpath.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
nturl2path.py
opcode.py Revert the previous enhancement to the bytecode optimizer. 2003-04-24 05:45:23 +00:00
optparse.py Update to Optik 1.4.1+: adds __all__ (Optik SF bug #728563). 2003-05-08 01:38:52 +00:00
os.py SF #764121, docstring for spawnlp incorrect 2003-07-02 02:49:33 +00:00
os2emxpath.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
pdb.doc
pdb.py Whitespace normalization. 2003-06-15 23:26:30 +00:00
pickle.py Fix grammar in comment. 2003-06-29 16:59:59 +00:00
pickletools.py dis(): Added an optional memo argument, so that multiple pickles in a 2003-02-05 19:55:53 +00:00
pipes.py Massive changes from SF 589982 (tempfile.py rewrite, by Zack 2002-08-09 16:38:32 +00:00
pkgutil.py SF patch #806246: use basestring where possible 2003-09-17 05:50:59 +00:00
platform.py Implement and apply PEP 322, reverse iteration 2003-11-06 14:06:48 +00:00
popen2.py Patch #817329: Use SC_OPEN_MAX to determine MAXFD. Backported to 2.3. 2003-10-06 21:34:33 +00:00
poplib.py Patch #: Add POP3 over SSL support. 2003-10-31 12:52:35 +00:00
posixfile.py
posixpath.py SF patch #834015: Remove imports of unused modules 2003-11-02 09:47:05 +00:00
pprint.py Revert 1.25, as overloaded __repr__ is not considered. 2003-06-07 20:47:37 +00:00
pre.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01: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 Remove unneeded import. 2003-10-22 17:22:18 +00:00
pstats.py - add a dump_stats() method similar to that of the profile.Profile class 2003-05-14 14:28:09 +00:00
pty.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
py_compile.py Getting rid of macfs. 2003-02-27 23:18:46 +00:00
pyclbr.py Another big update, fixing all known bugs related to nesting functions 2002-12-03 08:14:35 +00:00
pydoc.py Patch #785689: Use basename in usage. Backported to 2.3. 2003-10-31 13:05:21 +00:00
Queue.py Add __all__ . 2003-07-01 05:34:27 +00:00
quopri.py
random.py Implement and apply PEP 322, reverse iteration 2003-11-06 14:06:48 +00:00
re.py Give people who run "pydoc re" a clue. 2003-01-31 00:35:58 +00:00
reconvert.py
regex_syntax.py
regsub.py
repr.py [680789] Debug with long array takes forever 2003-02-05 18:29:34 +00:00
rexec.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
rfc822.py Make Message.__str__ more efficient. 2003-11-11 19:39:17 +00:00
rlcompleter.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
robotparser.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
sched.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
sets.py Improve backwards compatibility code to handle True/False. 2003-11-12 15:21:20 +00:00
sgmllib.py Patch #793559: Reset __starttext_tag. Fixes #709491. Backported to 2.3. 2003-09-20 10:58:38 +00:00
shelve.py Fixup bare try/except. 2003-05-27 06:30:52 +00:00
shlex.py - Changed shlex.split() method to have more useful and 2003-04-20 01:57:03 +00:00
shutil.py Fix SF bug #691276, shutil.copytree documentation bug 2003-02-23 21:36:32 +00:00
SimpleHTTPServer.py Let library modules use the new keyword arguments for list.sort(). 2003-10-16 05:53:16 +00:00
SimpleXMLRPCServer.py SF patch #834015: Remove imports of unused modules 2003-11-02 09:47:05 +00:00
site.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
smtpd.py
smtplib.py Patch #572031: AUTH method LOGIN for smtplib 2002-10-06 17:55:08 +00:00
sndhdr.py
socket.py Always unwrap _socketobj in socket.ssl. Revert httplib.py 1.25. 2003-06-14 13:30:53 +00:00
SocketServer.py TCPServer: Fixed typo in class docstring. 2003-10-09 23:48:52 +00:00
sre.py Addendum to #764548: restore 2.1 compatibility. 2003-07-02 21:37:16 +00:00
sre_compile.py Implemented non-recursive SRE matching. 2003-10-17 22:13:16 +00:00
sre_constants.py Implemented non-recursive SRE matching. 2003-10-17 22:13:16 +00:00
sre_parse.py Implemented non-recursive SRE matching. 2003-10-17 22:13:16 +00:00
stat.py
statcache.py
statvfs.py
string.py tweak the docstring to not be so focused on 1.6. 2003-10-03 14:05:26 +00:00
StringIO.py Patch #822994: Consolidate tests for self.closed. 2003-10-18 10:20:42 +00:00
stringold.py
stringprep.py Whitespace normalization. 2003-04-24 16:02:54 +00:00
sunau.py
sunaudio.py
symbol.py Updates to track Grammar changes. The patch to token.py loosens the regexp to 2002-10-03 09:42:01 +00:00
symtable.py
tabnanny.py
tarfile.py [Bug #822668] tarfile raises an exception if the tarfile is gzipped and is too large; the gzip filesize should be written out mod 2**32. (Reported by Johan Fredrik Ohman) 2003-10-24 17:38:34 +00:00
telnetlib.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
tempfile.py mktemp() shouldn't rely on os.path.exists(), which can return False if 2003-11-10 02:16:36 +00:00
TERMIOS.py
textwrap.py SF bug 797650: Infinite loop in textwrap.py 2003-08-30 14:43:55 +00:00
this.py
threading.py Add traceback.format_exc(). 2003-11-05 23:03:00 +00:00
timeit.py Show microseconds, milliseconds or seconds, whichever is most natural, 2003-10-20 23:38:28 +00:00
toaiff.py Fix a typo in the mktemp -> mkstemp patch. 2002-08-10 00:17:59 +00:00
token.py Updates to track Grammar changes. The patch to token.py loosens the regexp to 2002-10-03 09:42:01 +00:00
tokenize.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
trace.py SF patch #834015: Remove imports of unused modules 2003-11-02 09:47:05 +00:00
traceback.py Add traceback.format_exc(). 2003-11-05 23:03:00 +00:00
tty.py
types.py [ 683376 ] Adding NotImplementedType to types.py 2003-02-10 19:38:33 +00:00
tzparse.py
unittest.py Another instance of the same typo. 2003-10-26 16:38:16 +00:00
urllib.py [Bug #776542] open_https() generates a bad Authorization header because it calls .putheader() wrongly. Reported by Steffen Ries. 2003-08-29 18:12:23 +00:00
urllib2.py Apply patch 823328 -- support for rfc 2617 digestion authentication. 2003-10-21 18:07:07 +00:00
urlparse.py See rev. 1.42 for log message 2003-10-12 04:29:10 +00:00
user.py SF # 555779, import user doesn't work with CGIs 2002-09-05 21:08:25 +00:00
UserDict.py SF patch #693753: fix for bug 639806: default for dict.pop 2003-03-06 23:54:28 +00:00
UserList.py Add list.sorted() classmethod. 2003-10-29 06:54:43 +00:00
UserString.py Remove a typo. (Or is this some markup I don't understand? ;-) 2003-08-27 10:48:12 +00:00
uu.py
warnings.py Change warnings to avoid importing re module during startup. 2003-07-11 15:37:59 +00:00
wave.py
weakref.py SF 742860: WeakKeyDictionary __delitem__ uses iterkeys 2003-05-25 01:45:11 +00:00
webbrowser.py Fixed bug 2002-11-25 17:25:04 +00:00
whichdb.py Fix a bunch of typos in documentation, docstrings and comments. 2003-10-20 14:01:56 +00:00
whrandom.py
xdrlib.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
xmllib.py Get rid of many apply() calls. 2003-02-27 20:14:51 +00:00
xmlrpclib.py SF patch #834015: Remove imports of unused modules 2003-11-02 09:47:05 +00:00
zipfile.py SF patch #756996: Bare except in ZipFile.testzip() 2003-06-27 22:25:03 +00:00