cpython/Lib
Benjamin Peterson 5183856c17 Merged revisions 75246 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r75246 | benjamin.peterson | 2009-10-04 15:32:25 -0500 (Sun, 04 Oct 2009) | 29 lines

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

  ........
    r74841 | thomas.wouters | 2009-09-16 14:55:54 -0500 (Wed, 16 Sep 2009) | 23 lines


    Fix issue #1590864, multiple threads and fork() can cause deadlocks, by
    acquiring the import lock around fork() calls. This prevents other threads
    from having that lock while the fork happens, and is the recommended way of
    dealing with such issues. There are two other locks we care about, the GIL
    and the Thread Local Storage lock. The GIL is obviously held when calling
    Python functions like os.fork(), and the TLS lock is explicitly reallocated
    instead, while also deleting now-orphaned TLS data.

    This only fixes calls to os.fork(), not extension modules or embedding
    programs calling C's fork() directly. Solving that requires a new set of API
    functions, and possibly a rewrite of the Python/thread_*.c mess. Add a
    warning explaining the problem to the documentation in the mean time.

    This also changes behaviour a little on AIX. Before, AIX (but only AIX) was
    getting the import lock reallocated, seemingly to avoid this very same
    problem. This is not the right approach, because the import lock is a
    re-entrant one, and reallocating would do the wrong thing when forking while
    holding the import lock.

    Will backport to 2.6, minus the tiny AIX behaviour change.
  ........
................
2009-10-04 20:35:30 +00:00
..
ctypes Merged revisions 75064 via svnmerge from 2009-09-25 21:38:29 +00:00
curses Merged revisions 64623,64640,64665,64687,64689-64690,64719,64721,64735,64742,64744-64746,64756-64761,64767-64769,64771-64772,64774-64775,64788,64793,64835-64836 via svnmerge from 2008-07-16 03:43:04 +00:00
dbm We dont have dbm.bsd support anymore. 2009-05-17 08:42:58 +00:00
distutils Merged revisions 75013 via svnmerge from 2009-09-22 10:14:51 +00:00
email Merged revisions 73715 via svnmerge from 2009-08-13 08:51:18 +00:00
encodings #1276: Add temporary encoding aliases for non-supported Mac CJK 2008-08-23 08:03:03 +00:00
html #2834: Change re module semantics, so that str and bytes mixing is forbidden, 2008-08-19 17:56:33 +00:00
http Merged revisions 75137 via svnmerge from 2009-09-29 19:02:24 +00:00
idlelib Merged revisions 74745 via svnmerge from 2009-09-11 22:36:27 +00:00
importlib Merged revisions 74584 via svnmerge from 2009-08-30 04:29:47 +00:00
json Merged revisions 73715 via svnmerge from 2009-08-13 08:51:18 +00:00
lib2to3 Merged revisions 75061-75062 via svnmerge from 2009-09-25 21:13:17 +00:00
logging Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
msilib Merged revisions 73390 via svnmerge from 2009-06-12 17:31:41 +00:00
multiprocessing Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
plat-aix4
plat-atheos
plat-darwin These are present in the trunk but no longer in 3.x, which causes problems 2009-03-04 23:21:07 +00:00
plat-freebsd4
plat-freebsd5
plat-freebsd6 Merged revisions 58221-58741 via svnmerge from 2007-11-01 19:42:39 +00:00
plat-freebsd7 Merged revisions 58221-58741 via svnmerge from 2007-11-01 19:42:39 +00:00
plat-freebsd8 Merged revisions 58221-58741 via svnmerge from 2007-11-01 19:42:39 +00:00
plat-generic
plat-linux2
plat-netbsd1
plat-next3
plat-os2emx Merged revisions 62021,62029,62035-62038,62043-62044,62052-62053 via svnmerge from 2008-03-31 01:51:45 +00:00
plat-sunos5
plat-unixware7
pydoc_data update pydoc-topics 2009-06-26 13:05:03 +00:00
site-packages
sqlite3 Merged revisions 73833,73838,73850-73852,73856-73857 via svnmerge from 2009-08-13 09:04:31 +00:00
test Merged revisions 75246 via svnmerge from 2009-10-04 20:35:30 +00:00
tkinter Merged revisions 73715 via svnmerge from 2009-08-13 08:51:18 +00:00
urllib Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
wsgiref Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
xml Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
xmlrpc Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
__future__.py barry has already been causing test breakage 2009-04-01 20:38:13 +00:00
__phello__.foo.py
_abcoll.py Issue 6037: MutableSequence.__iadd__ should return self. 2009-05-18 15:35:26 +00:00
_compat_pickle.py Issue #6137: The pickle module now translates module names when loading 2009-06-04 20:32:06 +00:00
_dummy_thread.py Merged revisions 65787 via svnmerge from 2008-08-17 22:31:15 +00:00
_markupbase.py Remove the htmllib and sgmllib modules as per PEP 3108. 2008-06-01 21:25:55 +00:00
_pyio.py Merged revisions 74126,74130-74131,74149,74155,74157,74180-74183,74398 via svnmerge from 2009-08-13 09:34:05 +00:00
_strptime.py The message for the exception when time.strptime was passed something other 2009-03-31 03:58:04 +00:00
_threading_local.py Merged revisions 64125 via svnmerge from 2008-06-11 19:14:14 +00:00
_weakrefset.py Issue 5964: Fixed WeakSet __eq__ comparison to handle non-WeakSet objects. 2009-05-17 17:32:20 +00:00
abc.py Merged revisions 72278 via svnmerge from 2009-05-04 16:10:10 +00:00
aifc.py Merged revisions 72425-72426 via svnmerge from 2009-05-07 18:24:38 +00:00
antigravity.py Another hidden treasure. 2009-06-03 17:21:17 +00:00
ast.py Merged revisions 68450,68480-68481,68493,68495,68501,68512,68514-68515,68534-68536,68552,68563,68570-68572,68575,68582,68596,68623-68624,68628 via svnmerge from 2009-01-16 03:54:08 +00:00
asynchat.py Fixed bugs 760475, 953599, and 1519. This is a translation of changelist 64768 2008-07-07 05:04:12 +00:00
asyncore.py This fixes bug 5798 on OS X. 2009-06-03 19:48:02 +00:00
base64.py Merged revisions 73656,73658,73663,73666 via svnmerge from 2009-08-13 08:47:18 +00:00
bdb.py Merged revisions 72322 via svnmerge from 2009-05-05 09:00:19 +00:00
binhex.py Merged revisions 74289 via svnmerge from 2009-08-02 20:09:59 +00:00
bisect.py Per the language summit, the optional fastpath imports should use from-import-star. 2009-03-31 17:51:51 +00:00
build_class.py
cProfile.py Patch# 1258 by Christian Heimes: kill basestring. 2007-10-16 18:12:55 +00:00
calendar.py #3059: Stop decoding Unicode in calendar module. 2008-06-08 08:40:05 +00:00
cgi.py #4351: more appropriate DeprecationWarning stacklevels 2009-05-08 03:57:12 +00:00
cgitb.py Merged revisions 70980,71059,71225,71234,71241,71243,71249,71251,71255,71266,71299,71329,71397-71398,71486 via svnmerge from 2009-04-11 19:48:14 +00:00
chunk.py Raise statement normalization in Lib/. 2007-08-30 01:19:48 +00:00
cmd.py Patch# 1258 by Christian Heimes: kill basestring. 2007-10-16 18:12:55 +00:00
code.py Fix issue #1707. When raw_input() was removed, it was incorrectly replaced 2008-01-02 02:55:27 +00:00
codecs.py Make TextIOWrapper's seek/tell work properly with stateful decoders; 2008-03-18 04:51:32 +00:00
codeop.py Raise statement normalization in Lib/. 2007-08-30 01:19:48 +00:00
collections.py Issue 6370: Performance issue with collections.Counter(). 2009-06-29 18:34:46 +00:00
colorsys.py Merged revisions 68884,68973,68978,69003,69083,69112-69113 via svnmerge from 2009-01-30 03:39:35 +00:00
compileall.py Merged revisions 71750 via svnmerge from 2009-04-19 17:14:11 +00:00
configparser.py Merged revisions 71564 via svnmerge from 2009-04-27 16:43:36 +00:00
contextlib.py Merged revisions 73518-73519 via svnmerge from 2009-06-23 10:55:52 +00:00
copy.py Merged revisions 72669 via svnmerge from 2009-05-15 17:04:50 +00:00
copyreg.py Rename copy_reg module to copyreg. 2008-05-11 08:55:36 +00:00
csv.py Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
decimal.py Merged revisions 74709 via svnmerge from 2009-09-08 19:23:44 +00:00
difflib.py Merged revisions 69846 via svnmerge from 2009-02-21 20:59:32 +00:00
dis.py Merged revisions 68116-68119,68121,68123-68127 via svnmerge from 2009-01-01 15:05:06 +00:00
doctest.py Merged revisions 74010,74034,74054 via svnmerge from 2009-08-13 09:15:16 +00:00
dummy_threading.py Rename thread to _thread and dummy_thread to _dummy_thread. Issue #2875. 2008-05-25 13:05:15 +00:00
filecmp.py Use new form of with-statement instead of contextlib.nested(). 2009-06-04 00:11:54 +00:00
fileinput.py Use PEP 8 and true booleans. 2009-05-17 12:22:57 +00:00
fnmatch.py Change fnmatch.py to use separate caches for str and bytes keys. 2008-10-03 16:38:30 +00:00
formatter.py Fix formatter usage of filter(). Bug #3800. 2008-09-09 19:31:25 +00:00
fractions.py Merged revisions 74078 via svnmerge from 2009-07-18 14:43:10 +00:00
ftplib.py Merged revisions 70712,70714,70764-70765,70769-70771,70773,70776-70777,70788-70789,70824,70828,70832,70836,70842,70851,70855,70857,70866-70872,70883,70885,70893-70894,70896-70897,70903,70905-70907,70915,70927,70933,70951,70960,70962-70964,70998,71001,71006,71008,71010-71011,71019,71037,71056,71094,71101-71103,71106,71119,71123,71149-71150,71203,71212,71214-71217,71221,71240 via svnmerge from 2009-04-05 19:13:16 +00:00
functools.py
genericpath.py Issue #3187: Better support for "undecodable" filenames. Code by Victor 2008-10-02 18:55:37 +00:00
getopt.py Merged revisions 67463,67572,67576,67628 via svnmerge from 2008-12-07 15:15:22 +00:00
getpass.py Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
gettext.py Merged revisions 72506,72525-72526,72551,72558,72616,72654-72655,72689,72745,72750,72802,72812,72822,72824,72826-72827,72833,72876,72890,72923,72946,73026,73042,73045,73047,73065,73068-73069 via svnmerge from 2009-06-01 22:42:33 +00:00
glob.py Merged revisions 70712,70714,70764-70765,70769-70771,70773,70776-70777,70788-70789,70824,70828,70832,70836,70842,70851,70855,70857,70866-70872,70883,70885,70893-70894,70896-70897,70903,70905-70907,70915,70927,70933,70951,70960,70962-70964,70998,71001,71006,71008,71010-71011,71019,71037,71056,71094,71101-71103,71106,71119,71123,71149-71150,71203,71212,71214-71217,71221,71240 via svnmerge from 2009-04-05 19:13:16 +00:00
gzip.py #4351: more appropriate DeprecationWarning stacklevels 2009-05-08 03:57:12 +00:00
hashlib.py issue3715: docstring representation of hex escaped string needs to be double 2008-08-31 16:35:01 +00:00
heapq.py Make life easier for non-CPython implementations 2009-03-29 19:30:50 +00:00
hmac.py Fixed failing unit tests due to str/bytes mismatch. 2008-03-03 02:59:49 +00:00
imaplib.py Merged revisions 72662 via svnmerge from 2009-05-15 12:15:51 +00:00
imghdr.py Merged revisions 65713 via svnmerge from 2008-08-16 16:48:16 +00:00
inspect.py Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
io.py add myself 2009-05-01 20:45:43 +00:00
keyword.py Merged revisions 60151-60159,60161-60168,60170,60172-60173,60175 via svnmerge from 2008-01-21 20:36:10 +00:00
linecache.py Merged revisions 72319-72320 via svnmerge from 2009-05-05 08:31:54 +00:00
locale.py Merged revisions 74687 via svnmerge from 2009-09-06 14:01:46 +00:00
macpath.py Issue3187 for Macintosh platform: 2008-10-03 21:57:20 +00:00
macurl2path.py Fixing Issue6711 - macurl2path has typos that raise AttributeError 2009-08-16 06:44:28 +00:00
mailbox.py Merged revisions 72213 via svnmerge from 2009-05-03 02:52:20 +00:00
mailcap.py
mimetypes.py Fix default value in docstring. 2009-06-08 09:07:34 +00:00
modulefinder.py no 2.3 compat in the py3k lib #3676 2009-02-16 16:20:10 +00:00
netrc.py Patch # 1331 by Christian Heimes. 2007-10-26 04:29:23 +00:00
nntplib.py Merged revisions 72640 via svnmerge from 2009-05-14 21:30:46 +00:00
ntpath.py Issue #5799: ntpath (ie, os.path on Windows) fully supports UNC pathnames. 2009-05-06 08:04:54 +00:00
nturl2path.py Fix for issue1153027, making Py3k changes similar to fix in issue918368. 2009-05-05 18:41:13 +00:00
numbers.py Issue 4998: restore utility of __slots__ on Fraction. 2009-02-12 17:58:36 +00:00
opcode.py http://bugs.python.org/issue4715 2009-02-25 02:25:04 +00:00
optparse.py Merged revisions 71540,71563 via svnmerge from 2009-04-27 16:41:41 +00:00
os.py Merged revisions 73934 via svnmerge from 2009-07-11 09:37:09 +00:00
os2emxpath.py Remove os.path.walk 2008-05-08 23:44:58 +00:00
pdb.doc Merged revisions 62998-63003,63005-63006,63009-63012,63014-63017,63019-63020,63022-63024,63026-63029,63031-63041,63043-63045,63047-63054,63056-63062 via svnmerge from 2008-05-16 00:03:33 +00:00
pdb.py Merged revisions 74741 via svnmerge from 2009-09-11 21:21:12 +00:00
pickle.py Issue #6137: The pickle module now translates module names when loading 2009-06-04 20:32:06 +00:00
pickletools.py Issue #6137: The pickle module now translates module names when loading 2009-06-04 20:32:06 +00:00
pipes.py Merged revisions 57620-57771 via svnmerge from 2007-08-30 22:15:33 +00:00
pkgutil.py Merged revisions 73833,73838,73850-73852,73856-73857 via svnmerge from 2009-08-13 09:04:31 +00:00
platform.py Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
plistlib.py Merged revisions 74813 via svnmerge from 2009-09-16 00:57:27 +00:00
poplib.py Merged revisions 74330 via svnmerge from 2009-08-06 16:08:07 +00:00
posixpath.py Merged revisions 70980,71059,71225,71234,71241,71243,71249,71251,71255,71266,71299,71329,71397-71398,71486 via svnmerge from 2009-04-11 19:48:14 +00:00
pprint.py Merged revisions 63119-63128,63130-63131,63133,63135-63144,63146-63148,63151-63152,63155-63165,63167-63176,63181-63186,63188-63189 via svnmerge from 2008-05-16 02:54:33 +00:00
profile.py Merged revisions 74775 via svnmerge from 2009-09-13 15:31:14 +00:00
pstats.py Issue #1771: Remove cmp parameter from list.sort() and builtin.sorted(). 2008-01-30 20:15:17 +00:00
pty.py Issue #3782: os.write() must not accept unicode strings 2008-09-15 23:02:56 +00:00
py_compile.py #2834: Change re module semantics, so that str and bytes mixing is forbidden, 2008-08-19 17:56:33 +00:00
pyclbr.py Merged revisions 62425-62429,62434-62436,62441,62444,62446-62448,62450-62455,62463,62465-62466,62469,62474,62476-62478,62480,62485,62492,62497-62498,62500,62507,62513-62514,62516,62521,62531,62535,62545-62546,62548-62551,62553-62559,62569,62574,62577,62593,62595,62604-62606,62608,62616,62626-62627,62636,62638,62644-62645,62647-62648,62651-62653,62656,62661,62663,62680,62686-62687,62696,62699-62703,62711 via svnmerge from 2008-05-04 22:42:01 +00:00
pydoc.py Merged revisions 73623-73624 via svnmerge from 2009-06-28 17:35:48 +00:00
queue.py port the queue change r70405 2009-03-21 17:36:10 +00:00
quopri.py Patch 1329 (partial) by Christian Heimes. 2007-10-30 17:27:30 +00:00
random.py Issue 6261: Clarify behavior of random.uniform(). 2009-06-11 23:12:14 +00:00
re.py Merged revisions 70090 via svnmerge from 2009-03-02 05:21:55 +00:00
reprlib.py Rename the repr module file to reprlib.py. 2008-05-16 16:05:36 +00:00
rlcompleter.py Merged revisions 65168 via svnmerge from 2008-07-21 16:32:10 +00:00
runpy.py - remove svn:executable property from some library files 2009-06-22 14:17:00 +00:00
sched.py Merged revisions 72932 via svnmerge from 2009-05-26 07:51:03 +00:00
shelve.py The default shelve pickle protocol should have been 3. 2009-02-03 04:19:10 +00:00
shlex.py Patch# 1258 by Christian Heimes: kill basestring. 2007-10-16 18:12:55 +00:00
shutil.py Merged revisions 73250 via svnmerge from 2009-06-05 19:13:27 +00:00
site.py Merged revisions 70778 via svnmerge from 2009-03-30 23:16:10 +00:00
smtpd.py Merged revisions 69846 via svnmerge from 2009-02-21 20:59:32 +00:00
smtplib.py Merged revisions 75064 via svnmerge from 2009-09-25 21:38:29 +00:00
sndhdr.py
socket.py Merged revisions 73138 via svnmerge from 2009-06-02 07:41:26 +00:00
socketserver.py Merged revisions 69803-69805,69840,69901,69905,69907,69924,69927,69987 via svnmerge from 2009-02-26 03:38:59 +00:00
sre_compile.py Merged revisions 66894 via svnmerge from 2008-10-14 23:07:40 +00:00
sre_constants.py #2834: Change re module semantics, so that str and bytes mixing is forbidden, 2008-08-19 17:56:33 +00:00
sre_parse.py Merged revisions 66894 via svnmerge from 2008-10-14 23:07:40 +00:00
ssl.py More codestring -> codebytes. 2009-06-04 09:42:55 +00:00
stat.py Merged revisions 61644,61646-61647,61649-61652,61656-61658,61663,61665,61667 via svnmerge from 2008-03-20 10:49:03 +00:00
string.py Merged revisions 75074 via svnmerge from 2009-09-26 12:35:01 +00:00
stringprep.py
struct.py Merged revisions 59696-59702 via svnmerge from 2008-01-04 03:08:33 +00:00
subprocess.py Merged revisions 73917 via svnmerge from 2009-08-13 18:33:30 +00:00
sunau.py #3567: fix sunau for running with -bb and make test_ossaudiodev work. 2008-08-17 00:38:32 +00:00
symbol.py Merged revisions 73196,73278-73280,73299,73308,73312-73313,73317-73318,73321,73324,73331,73335,73340,73363 via svnmerge from 2009-06-11 22:54:11 +00:00
symtable.py Merged revisions 70801,70809 via svnmerge from 2009-03-31 15:26:37 +00:00
tabnanny.py
tarfile.py Merged revisions 70523 via svnmerge from 2009-03-22 20:34:29 +00:00
telnetlib.py Merged revisions 74217,74224 via svnmerge from 2009-08-13 08:39:33 +00:00
tempfile.py Merged revisions 73749 via svnmerge from 2009-08-13 08:57:20 +00:00
textwrap.py Merged revisions 75231 via svnmerge from 2009-10-04 14:54:52 +00:00
this.py
threading.py Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
timeit.py Localize the function lookup in timeit. 2009-04-03 02:45:36 +00:00
token.py Merged revisions 61038,61042-61045,61047,61050,61053,61055-61056,61061-61064,61066-61080 via svnmerge from 2008-02-26 08:18:30 +00:00
tokenize.py Remove dependency on the collections module. 2009-04-29 14:21:25 +00:00
trace.py #5656: detect correct encoding of files when reporting coverage in trace.py, and ignore files in the temporary directory when reporting. 2009-04-01 23:07:29 +00:00
traceback.py Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
tty.py
turtle.py #5923: update turtle module to version 1.1. 2009-05-05 08:14:33 +00:00
types.py Merged revisions 62194,62197-62198,62204-62205,62214,62219-62221,62227,62229-62231,62233-62235,62237-62239 via svnmerge from 2008-04-09 08:37:03 +00:00
unittest.py Merged revisions 72506,72525-72526,72551,72558,72616,72654-72655,72689,72745,72750,72802,72812,72822,72824,72826-72827,72833,72876,72890,72923,72946,73026,73042,73045,73047,73065,73068-73069 via svnmerge from 2009-06-01 22:42:33 +00:00
uu.py Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
uuid.py Merged revisions 67295,67301-67302,67318,67330,67342-67343 via svnmerge from 2008-11-22 22:18:04 +00:00
warnings.py Merged revisions 74821,74828-74831,74833,74835 via svnmerge from 2009-09-16 16:05:59 +00:00
wave.py #1535: rename __builtin__ module to builtins. 2007-12-02 09:40:06 +00:00
weakref.py Issue #6149: Fix initialization of WeakValueDictionary objects from non-empty parameters. 2009-05-30 21:04:26 +00:00
webbrowser.py Merged revisions 74745 via svnmerge from 2009-09-11 22:36:27 +00:00
wsgiref.egg-info
xdrlib.py Raise statement normalization in Lib/. 2007-08-30 01:19:48 +00:00
zipfile.py Merged revisions 75064 via svnmerge from 2009-09-25 21:38:29 +00:00