From nnorwitz at gmail.com Tue Apr 1 00:03:47 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 31 Mar 2008 17:03:47 -0500 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080331220347.GA14444@python.psfb.org> More important issues: ---------------------- test_io leaked [61, 61, 61] references, sum=183 Less important issues: ---------------------- test_socketserver leaked [-82, 0, 0] references, sum=-82 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From python-checkins at python.org Tue Apr 1 07:40:44 2008 From: python-checkins at python.org (neal.norwitz) Date: Tue, 1 Apr 2008 07:40:44 +0200 (CEST) Subject: [Python-checkins] r62085 - python/trunk/Lib/test/test_mmap.py Message-ID: <20080401054044.34BCB1E4006@bag.python.org> Author: neal.norwitz Date: Tue Apr 1 07:40:43 2008 New Revision: 62085 Modified: python/trunk/Lib/test/test_mmap.py Log: Be sure to close the file. 2 places were deleting the file, so it was probably fine, but the last change may be required for the test to pass on Windows. Should we always close the mmap too? Modified: python/trunk/Lib/test/test_mmap.py ============================================================================== --- python/trunk/Lib/test/test_mmap.py (original) +++ python/trunk/Lib/test/test_mmap.py Tue Apr 1 07:40:43 2008 @@ -161,6 +161,7 @@ pass else: self.fail("Able to resize readonly memory map") + f.close() del m, f self.assertEqual(open(TESTFN, "rb").read(), 'a'*mapsize, "Readonly memory map data file was modified") @@ -217,6 +218,7 @@ "Copy-on-write test data file should not be modified.") # Ensuring copy-on-write maps cannot be resized self.assertRaises(TypeError, m.resize, 2*mapsize) + f.close() del m, f # Ensuring invalid access parameter raises exception @@ -434,7 +436,7 @@ f = open(TESTFN, "rb") m = mmap.mmap(f.fileno(), mapsize, prot=mmap.PROT_READ) self.assertRaises(TypeError, m.write, "foo") - + f.close() def test_error(self): self.assert_(issubclass(mmap.error, EnvironmentError)) From buildbot at python.org Tue Apr 1 08:22:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 06:22:57 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080401062257.96D881E4006@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1091 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson,neal.norwitz BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Tue Apr 1 10:41:21 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 08:41:21 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080401084121.ACCE31E400E@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/174 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From nnorwitz at gmail.com Tue Apr 1 12:03:07 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 1 Apr 2008 05:03:07 -0500 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080401100307.GA22233@python.psfb.org> More important issues: ---------------------- test_io leaked [61, 61, 61] references, sum=183 Less important issues: ---------------------- test_asynchat leaked [0, 100, -100] references, sum=0 test_urllib2_localnet leaked [-131, -140, 146] references, sum=-125 From buildbot at python.org Tue Apr 1 13:39:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 11:39:29 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080401113929.CFCD41E400E@bag.python.org> The Buildbot has detected a new failure of sparc Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%203.0/builds/154 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Tue Apr 1 13:40:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 11:40:04 +0000 Subject: [Python-checkins] buildbot failure in x86 XP 3.0 Message-ID: <20080401114004.92EE41E400E@bag.python.org> The Buildbot has detected a new failure of x86 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP%203.0/builds/87 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: armbruster-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 4 tests failed: test_ssl test_urllib2_localnet test_urllibnet test_xmlrpc_net ====================================================================== ERROR: testConnect (test.test_ssl.NetworkedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 130, in testConnect raise test_support.TestFailed("Unexpected exception %s" % x) test.test_support.TestFailed: Unexpected exception [Errno 1] _ssl.c:486: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 823, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True, ssl.CERT_OPTIONAL) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 692, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 641, in serverParamsTest raise test_support.TestFailed("Unexpected SSL error: " + str(x)) test.test_support.TestFailed: Unexpected SSL error: [Errno 1] _ssl.c:486: error:1407E086:SSL routines:SSL2_SET_CERTIFICATE:certificate verify failed ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 844, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True, ssl.CERT_OPTIONAL) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 692, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 641, in serverParamsTest raise test_support.TestFailed("Unexpected SSL error: " + str(x)) test.test_support.TestFailed: Unexpected SSL error: [Errno 1] _ssl.c:486: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 856, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True, ssl.CERT_OPTIONAL) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 692, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 641, in serverParamsTest raise test_support.TestFailed("Unexpected SSL error: " + str(x)) test.test_support.TestFailed: Unexpected SSL error: [Errno 1] _ssl.c:486: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 866, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True, ssl.CERT_OPTIONAL) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 692, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 641, in serverParamsTest raise test_support.TestFailed("Unexpected SSL error: " + str(x)) test.test_support.TestFailed: Unexpected SSL error: [Errno 1] _ssl.c:486: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ====================================================================== ERROR: testReadCert (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_ssl.py", line 739, in testReadCert "Unexpected SSL error: " + str(x)) test.test_support.TestFailed: Unexpected SSL error: [Errno 1] _ssl.c:486: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ====================================================================== FAIL: test_bad_address (test.test_urllib2_localnet.TestUrlopen) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_urllib2_localnet.py", line 476, in test_bad_address urllib2.urlopen, "http://www.python.invalid./") AssertionError: IOError not raised by urlopen ====================================================================== FAIL: test_bad_address (test.test_urllibnet.urlopenNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_urllibnet.py", line 145, in test_bad_address urllib.urlopen, "http://www.python.invalid./") AssertionError: IOError not raised by urlopen ====================================================================== FAIL: test_current_time (test.test_xmlrpc_net.CurrentTimeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\python\buildarea\3.0.armbruster-windows\build\lib\test\test_xmlrpc_net.py", line 36, in test_current_time self.assert_(delta.days <= 1) AssertionError: None sincerely, -The Buildbot From python-checkins at python.org Tue Apr 1 14:37:44 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 1 Apr 2008 14:37:44 +0200 (CEST) Subject: [Python-checkins] r62090 - python/trunk/Lib/test/test_support.py Message-ID: <20080401123744.588E91E4032@bag.python.org> Author: brett.cannon Date: Tue Apr 1 14:37:43 2008 New Revision: 62090 Modified: python/trunk/Lib/test/test_support.py Log: Generalize test.test_support.test_stdout() with a base context manager so that it is easy to capture stderr if desired. Modified: python/trunk/Lib/test/test_support.py ============================================================================== --- python/trunk/Lib/test/test_support.py (original) +++ python/trunk/Lib/test/test_support.py Tue Apr 1 14:37:43 2008 @@ -392,19 +392,23 @@ @contextlib.contextmanager -def captured_stdout(): - """Run the with statement body using a StringIO object as sys.stdout. - Example use:: +def captured_output(stream_name): + """Run the 'with' statement body using a StringIO object in place of a + specific attribute on the sys module. + Example use (with 'stream_name=stdout'):: with captured_stdout() as s: print "hello" assert s.getvalue() == "hello" """ import StringIO - orig_stdout = sys.stdout - sys.stdout = StringIO.StringIO() - yield sys.stdout - sys.stdout = orig_stdout + orig_stdout = getattr(sys, stream_name) + setattr(sys, stream_name, StringIO.StringIO()) + yield getattr(sys, stream_name) + setattr(sys, stream_name, orig_stdout) + +def captured_stdout(): + return captured_output("stdout") #======================================================================= From python-checkins at python.org Tue Apr 1 14:46:14 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 1 Apr 2008 14:46:14 +0200 (CEST) Subject: [Python-checkins] r62091 - python/trunk/Lib/test/test_code.py python/trunk/Lib/test/test_dl.py python/trunk/Lib/test/test_frozen.py python/trunk/Lib/test/test_lib2to3.py Message-ID: <20080401124614.CF4BB1E400E@bag.python.org> Author: brett.cannon Date: Tue Apr 1 14:46:02 2008 New Revision: 62091 Modified: python/trunk/Lib/test/test_code.py python/trunk/Lib/test/test_dl.py python/trunk/Lib/test/test_frozen.py python/trunk/Lib/test/test_lib2to3.py Log: Add ``if __name__ == '__main__'`` to some test files where it didn't take a lot of effort to do so. Modified: python/trunk/Lib/test/test_code.py ============================================================================== --- python/trunk/Lib/test/test_code.py (original) +++ python/trunk/Lib/test/test_code.py Tue Apr 1 14:46:02 2008 @@ -100,3 +100,7 @@ from test.test_support import run_doctest from test import test_code run_doctest(test_code, verbose) + + +if __name__ == '__main__': + test_main() Modified: python/trunk/Lib/test/test_dl.py ============================================================================== --- python/trunk/Lib/test/test_dl.py (original) +++ python/trunk/Lib/test/test_dl.py Tue Apr 1 14:46:02 2008 @@ -13,22 +13,27 @@ ('/usr/lib/libc.dylib', 'getpid'), ] -for s, func in sharedlibs: - try: - if verbose: - print 'trying to open:', s, - l = dl.open(s) - except dl.error, err: - if verbose: - print 'failed', repr(str(err)) - pass +def test_main(): + for s, func in sharedlibs: + try: + if verbose: + print 'trying to open:', s, + l = dl.open(s) + except dl.error, err: + if verbose: + print 'failed', repr(str(err)) + pass + else: + if verbose: + print 'succeeded...', + l.call(func) + l.close() + if verbose: + print 'worked!' + break else: - if verbose: - print 'succeeded...', - l.call(func) - l.close() - if verbose: - print 'worked!' - break -else: - raise TestSkipped, 'Could not open any shared libraries' + raise TestSkipped, 'Could not open any shared libraries' + + +if __name__ == '__main__': + test_main() Modified: python/trunk/Lib/test/test_frozen.py ============================================================================== --- python/trunk/Lib/test/test_frozen.py (original) +++ python/trunk/Lib/test/test_frozen.py Tue Apr 1 14:46:02 2008 @@ -38,3 +38,8 @@ def test_main(): run_unittest(FrozenTests) + + + +if __name__ == '__main__': + test_main() Modified: python/trunk/Lib/test/test_lib2to3.py ============================================================================== --- python/trunk/Lib/test/test_lib2to3.py (original) +++ python/trunk/Lib/test/test_lib2to3.py Tue Apr 1 14:46:02 2008 @@ -13,3 +13,7 @@ def test_main(): run_unittest(suite()) + + +if __name__ == '__main__': + test_main() From buildbot at python.org Tue Apr 1 14:47:02 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 12:47:02 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080401124713.EA75D1E400E@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/734 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: The web-page 'rebuild' button was pressed by '': Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis,neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 132, in poll read(obj) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 3 tests failed: test_getargs2 test_smtplib test_threading ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer ====================================================================== FAIL: test_no_refcycle_through_target (test.test_threading.ThreadTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_threading.py", line 288, in test_no_refcycle_through_target sys.getrefcount(weak_raising_cyclic_object()))) AssertionError: 5 references still around sincerely, -The Buildbot From buildbot at python.org Tue Apr 1 16:22:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 14:22:17 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080401142217.478DE1E4027@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3131 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Apr 1 18:27:10 2008 From: python-checkins at python.org (collin.winter) Date: Tue, 1 Apr 2008 18:27:10 +0200 (CEST) Subject: [Python-checkins] r62092 - in sandbox/trunk/2to3/lib2to3: pytree.py tests/test_pytree.py Message-ID: <20080401162710.E0B931E400B@bag.python.org> Author: collin.winter Date: Tue Apr 1 18:27:10 2008 New Revision: 62092 Modified: sandbox/trunk/2to3/lib2to3/pytree.py sandbox/trunk/2to3/lib2to3/tests/test_pytree.py Log: Add get_prev_sibling() to complement pytree's get_next_sibling(). Modified: sandbox/trunk/2to3/lib2to3/pytree.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/pytree.py (original) +++ sandbox/trunk/2to3/lib2to3/pytree.py Tue Apr 1 18:27:10 2008 @@ -167,13 +167,27 @@ return None # Can't use index(); we need to test by identity - for i, sibling in enumerate(self.parent.children): - if sibling is self: + for i, child in enumerate(self.parent.children): + if child is self: try: return self.parent.children[i+1] except IndexError: return None + def get_prev_sibling(self): + """Return the node immediately preceding the invocant in their + parent's children list. If the invocant does not have a previous + sibling, return None.""" + if self.parent is None: + return None + + # Can't use index(); we need to test by identity + for i, child in enumerate(self.parent.children): + if child is self: + if i == 0: + return None + return self.parent.children[i-1] + def get_suffix(self): """Return the string immediately following the invocant node. This is effectively equivalent to node.get_next_sibling().get_prefix()""" Modified: sandbox/trunk/2to3/lib2to3/tests/test_pytree.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/test_pytree.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/test_pytree.py Tue Apr 1 18:27:10 2008 @@ -319,6 +319,24 @@ self.assertEqual(l2.get_next_sibling(), None) self.assertEqual(p1.get_next_sibling(), None) + def testNodePrevSibling(self): + n1 = pytree.Node(1000, []) + n2 = pytree.Node(1000, []) + p1 = pytree.Node(1000, [n1, n2]) + + self.failUnless(n2.get_prev_sibling() is n1) + self.assertEqual(n1.get_prev_sibling(), None) + self.assertEqual(p1.get_prev_sibling(), None) + + def testLeafPrevSibling(self): + l1 = pytree.Leaf(100, "a") + l2 = pytree.Leaf(100, "b") + p1 = pytree.Node(1000, [l1, l2]) + + self.failUnless(l2.get_prev_sibling() is l1) + self.assertEqual(l1.get_prev_sibling(), None) + self.assertEqual(p1.get_prev_sibling(), None) + class TestPatterns(support.TestCase): From buildbot at python.org Tue Apr 1 18:38:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 16:38:43 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 2.5 Message-ID: <20080401163843.C0BB91E400B@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%202.5/builds/232 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: The web-page 'rebuild' button was pressed by '': Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: georg.brandl BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Tue Apr 1 23:50:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 21:50:30 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080401215139.0A0321E402C@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%203.0/builds/264 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_timeout make: *** [buildbottest] Error 1 sincerely, -The Buildbot From nnorwitz at gmail.com Wed Apr 2 00:03:47 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 1 Apr 2008 17:03:47 -0500 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080401220347.GA15902@python.psfb.org> More important issues: ---------------------- test_io leaked [61, 61, 61] references, sum=183 Less important issues: ---------------------- test_cmd_line leaked [0, 0, -23] references, sum=-23 test_smtplib leaked [81, -81, 0] references, sum=0 test_threadedtempfile leaked [-91, 0, 0] references, sum=-91 test_threadsignals leaked [-8, 0, 0] references, sum=-8 test_urllib2_localnet leaked [146, 134, -128] references, sum=152 From buildbot at python.org Wed Apr 2 00:00:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 22:00:54 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080401220054.A35461E400B@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/742 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_profile ====================================================================== FAIL: test_cprofile (test.test_profile.ProfileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_profile.py", line 43, in test_cprofile self.assertEqual(results[0], 43000) AssertionError: 44000 != 43000 sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 00:08:07 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 2 Apr 2008 00:08:07 +0200 (CEST) Subject: [Python-checkins] r62094 - peps/trunk/pep-0000.txt Message-ID: <20080401220807.06ADA1E4004@bag.python.org> Author: benjamin.peterson Date: Wed Apr 2 00:08:06 2008 New Revision: 62094 Modified: peps/trunk/pep-0000.txt Log: 2.6 release schedule is now the 3.0 schedule, too Modified: peps/trunk/pep-0000.txt ============================================================================== --- peps/trunk/pep-0000.txt (original) +++ peps/trunk/pep-0000.txt Wed Apr 2 00:08:06 2008 @@ -69,7 +69,7 @@ I 339 Design of the CPython Compiler Cannon IF 356 Python 2.5 Release Schedule Norwitz, et al I 360 Externally Maintained Packages Cannon - I 361 Python 2.6 Release Schedule Norwitz, et al + I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al I 3100 Python 3.0 Plans Cannon Accepted PEPs (accepted; may not be completely implemented yet) From python-checkins at python.org Wed Apr 2 00:37:43 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 2 Apr 2008 00:37:43 +0200 (CEST) Subject: [Python-checkins] r62095 - python/trunk/Lib/test/test_io.py Message-ID: <20080401223743.C36471E4004@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 2 00:37:33 2008 New Revision: 62095 Modified: python/trunk/Lib/test/test_io.py Log: Fix and enable a skipped test: with python 2.6, enumerating bytes yields 1-char strings, not numbers. Don't merge this into the py3k branch. Modified: python/trunk/Lib/test/test_io.py ============================================================================== --- python/trunk/Lib/test/test_io.py (original) +++ python/trunk/Lib/test/test_io.py Wed Apr 2 00:37:33 2008 @@ -545,7 +545,7 @@ output = '' for b in input: if self.i == 0: # variable-length, terminated with period - if b == ord('.'): + if b == '.': if self.buffer: output += self.process_word() else: @@ -560,9 +560,9 @@ def process_word(self): output = '' - if self.buffer[0] == ord('i'): + if self.buffer[0] == 'i': self.i = min(99, int(self.buffer[1:] or 0)) # set input length - elif self.buffer[0] == ord('o'): + elif self.buffer[0] == 'o': self.o = min(99, int(self.buffer[1:] or 0)) # set output length else: output = self.buffer.decode('ascii') @@ -895,8 +895,7 @@ f.readline() f.tell() - # FIXME: figure out why the test fails with Python 2.6 - def XXXtestSeekAndTell(self): + def testSeekAndTell(self): """Test seek/tell using the StatefulIncrementalDecoder.""" def lookupTestDecoder(name): From python-checkins at python.org Wed Apr 2 00:52:49 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 2 Apr 2008 00:52:49 +0200 (CEST) Subject: [Python-checkins] r62096 - python/trunk/Lib/test/test_io.py Message-ID: <20080401225249.33EF51E4028@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 2 00:52:48 2008 New Revision: 62096 Modified: python/trunk/Lib/test/test_io.py Log: Newly enabled test appears to leak: it registers the same codec on each iteration. Do it only once at load time. Modified: python/trunk/Lib/test/test_io.py ============================================================================== --- python/trunk/Lib/test/test_io.py (original) +++ python/trunk/Lib/test/test_io.py Wed Apr 2 00:52:48 2008 @@ -574,6 +574,22 @@ self.buffer = bytearray() return output + codecEnabled = False + + @classmethod + def lookupTestDecoder(cls, name): + if cls.codecEnabled and name == 'test_decoder': + return codecs.CodecInfo( + name='test_decoder', encode=None, decode=None, + incrementalencoder=None, + streamreader=None, streamwriter=None, + incrementaldecoder=cls) + +# Register the previous decoder for testing. +# Disabled by default, tests will enable it. +codecs.register(StatefulIncrementalDecoder.lookupTestDecoder) + + class StatefulIncrementalDecoderTest(unittest.TestCase): """ Make sure the StatefulIncrementalDecoder actually works. @@ -898,14 +914,6 @@ def testSeekAndTell(self): """Test seek/tell using the StatefulIncrementalDecoder.""" - def lookupTestDecoder(name): - if self.codecEnabled and name == 'test_decoder': - return codecs.CodecInfo( - name='test_decoder', encode=None, decode=None, - incrementalencoder=None, - streamreader=None, streamwriter=None, - incrementaldecoder=StatefulIncrementalDecoder) - def testSeekAndTellWithData(data, min_pos=0): """Tell/seek to various points within a data stream and ensure that the decoded data returned by read() is consistent.""" @@ -926,9 +934,8 @@ self.assertEquals(f.read(), decoded[i:]) f.close() - # Register a special incremental decoder for testing. - codecs.register(lookupTestDecoder) - self.codecEnabled = 1 + # Enable the test decoder. + StatefulIncrementalDecoder.codecEnabled = 1 # Run the tests. try: @@ -947,7 +954,7 @@ # Ensure our test decoder won't interfere with subsequent tests. finally: - self.codecEnabled = 0 + StatefulIncrementalDecoder.codecEnabled = 0 def testEncodedWrites(self): data = u"1234567890" From buildbot at python.org Wed Apr 2 00:56:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 22:56:30 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc trunk Message-ID: <20080401225631.0CD0C1E4004@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%20trunk/builds/3103 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 01:01:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 23:01:23 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080401230123.A12B91E4028@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/274 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 01:13:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 01 Apr 2008 23:13:45 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080401231345.C1FA91E401D@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1095 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 01:57:36 2008 From: python-checkins at python.org (guido.van.rossum) Date: Wed, 2 Apr 2008 01:57:36 +0200 (CEST) Subject: [Python-checkins] r62097 - python/trunk/Modules/timing.h Message-ID: <20080401235736.9D6011E4004@bag.python.org> Author: guido.van.rossum Date: Wed Apr 2 01:57:36 2008 New Revision: 62097 Modified: python/trunk/Modules/timing.h Log: Remove the advertising clause from the BSD license in timing.h. I have the email trail to prove that George Neville-Neil approved this. Modified: python/trunk/Modules/timing.h ============================================================================== --- python/trunk/Modules/timing.h (original) +++ python/trunk/Modules/timing.h Wed Apr 2 01:57:36 2008 @@ -10,14 +10,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by George V. Neville-Neil - * 4. The name, George Neville-Neil may not be used to endorse or promote - * products derived from this software without specific prior + * 3. The name, George Neville-Neil may not be used to endorse or promote + * products derived from this software without specific prior * written permission. * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE From python-checkins at python.org Wed Apr 2 01:59:06 2008 From: python-checkins at python.org (guido.van.rossum) Date: Wed, 2 Apr 2008 01:59:06 +0200 (CEST) Subject: [Python-checkins] r62098 - python/branches/release25-maint/Modules/timing.h Message-ID: <20080401235906.D63EB1E4004@bag.python.org> Author: guido.van.rossum Date: Wed Apr 2 01:59:06 2008 New Revision: 62098 Modified: python/branches/release25-maint/Modules/timing.h Log: Remove the advertising clause from the BSD license in timing.h. I have the email trail to prove that George Neville-Neil approved this. (Backport of r62097.) Modified: python/branches/release25-maint/Modules/timing.h ============================================================================== --- python/branches/release25-maint/Modules/timing.h (original) +++ python/branches/release25-maint/Modules/timing.h Wed Apr 2 01:59:06 2008 @@ -10,14 +10,11 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by George V. Neville-Neil - * 4. The name, George Neville-Neil may not be used to endorse or promote - * products derived from this software without specific prior + * 3. The name, George Neville-Neil may not be used to endorse or promote + * products derived from this software without specific prior * written permission. * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE From buildbot at python.org Wed Apr 2 02:21:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 00:21:45 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080402002145.D4A841E4004@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/543 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 02:25:14 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 2 Apr 2008 02:25:14 +0200 (CEST) Subject: [Python-checkins] r62099 - python/trunk/Lib/test/regrtest.py Message-ID: <20080402002514.E3CA51E4004@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 2 02:25:14 2008 New Revision: 62099 Modified: python/trunk/Lib/test/regrtest.py Log: Correct the apparent refleak in test_io: When cls is an ABCMeta, every call to isinstance(x, cls) records type(x) in the cls._abc_cache of cls_abc_negative_cache. So we clear these caches at the end of the test. inspect.isabstract() is not the correct test for all ABCs, because there is no @abstractmethod in io.py (why?) isinstance(cls, ABCMeta) would be more exact, but it fails with an infinite recursion. So I used a hack to determine whether a class is an ABCMeta. The true correction would be to turn cls._abc_cache &co into a WeakSet, as py3k does. But classic classes are not weak referenceable... Of course, this change should not be merged into the py3k branch. Modified: python/trunk/Lib/test/regrtest.py ============================================================================== --- python/trunk/Lib/test/regrtest.py (original) +++ python/trunk/Lib/test/regrtest.py Wed Apr 2 02:25:14 2008 @@ -128,7 +128,6 @@ import time import traceback import warnings -from inspect import isabstract # I see no other way to suppress these warnings; # putting them in test_grammar.py has no effect: @@ -630,7 +629,7 @@ def dash_R(the_module, test, indirect_test, huntrleaks): # This code is hackish and inelegant, but it seems to do the job. - import copy_reg, _abcoll + import copy_reg, _abcoll, io if not hasattr(sys, 'gettotalrefcount'): raise Exception("Tracking reference leaks requires a debug build " @@ -641,8 +640,10 @@ ps = copy_reg.dispatch_table.copy() pic = sys.path_importer_cache.copy() abcs = {} - for abc in [getattr(_abcoll, a) for a in _abcoll.__all__]: - if not isabstract(abc): + modules = _abcoll, io + for abc in [getattr(mod, a) for mod in modules for a in mod.__all__]: + # XXX isinstance(abc, ABCMeta) leads to infinite recursion + if not hasattr(abc, '_abc_registry'): continue for obj in abc.__subclasses__() + [abc]: abcs[obj] = obj._abc_registry.copy() @@ -679,7 +680,7 @@ import gc, copy_reg import _strptime, linecache, dircache import urlparse, urllib, urllib2, mimetypes, doctest - import struct, filecmp, _abcoll + import struct, filecmp from distutils.dir_util import _path_created # Restore some original values. @@ -693,13 +694,10 @@ sys._clear_type_cache() # Clear ABC registries, restoring previously saved ABC registries. - for abc in [getattr(_abcoll, a) for a in _abcoll.__all__]: - if not isabstract(abc): - continue - for obj in abc.__subclasses__() + [abc]: - obj._abc_registry = abcs.get(obj, {}).copy() - obj._abc_cache.clear() - obj._abc_negative_cache.clear() + for abc, registry in abcs.items(): + abc._abc_registry = registry.copy() + abc._abc_cache.clear() + abc._abc_negative_cache.clear() # Clear assorted module caches. _path_created.clear() From python-checkins at python.org Wed Apr 2 02:55:05 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 2 Apr 2008 02:55:05 +0200 (CEST) Subject: [Python-checkins] r62100 - python/trunk/Lib/test/test_collections.py Message-ID: <20080402005505.42EA51E400A@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 2 02:55:04 2008 New Revision: 62100 Modified: python/trunk/Lib/test/test_collections.py Log: A DocTestSuite cannot run multiple times: it clears its globals dictionary after the first run. Rebuild the DocTestSuite on each iteration. Modified: python/trunk/Lib/test/test_collections.py ============================================================================== --- python/trunk/Lib/test/test_collections.py (original) +++ python/trunk/Lib/test/test_collections.py Wed Apr 2 02:55:04 2008 @@ -305,13 +305,12 @@ self.failIf(issubclass(basestring, MutableSequence)) import doctest, collections -NamedTupleDocs = doctest.DocTestSuite(module=collections) def test_main(verbose=None): - import collections as CollectionsModule + NamedTupleDocs = doctest.DocTestSuite(module=collections) test_classes = [TestNamedTuple, NamedTupleDocs, TestOneTrickPonyABCs, TestCollectionABCs] test_support.run_unittest(*test_classes) - test_support.run_doctest(CollectionsModule, verbose) + test_support.run_doctest(collections, verbose) if __name__ == "__main__": test_main(verbose=True) From buildbot at python.org Wed Apr 2 03:18:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 01:18:06 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080402011806.2A4C21E4004@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1097 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 03:23:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 01:23:04 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 2.5 Message-ID: <20080402012304.467491E4028@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%202.5/builds/478 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 03:48:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 01:48:49 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc trunk Message-ID: <20080402014849.4FEF91E4011@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%20trunk/builds/3106 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 04:01:11 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 02:01:11 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080402020111.98BB71E4004@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3134 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '0002-0002-0002-0002-0002' Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '1001-1001-1001-1001-1001' Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '2000-2000-2000-2000-2000' 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/test/test_signal.py", line 151, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 04:38:39 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 02:38:39 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 2.5 Message-ID: <20080402023839.280261E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%202.5/builds/174 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_timeout sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 05:05:11 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 03:05:11 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 3.0 Message-ID: <20080402030512.097391E4004@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%203.0/builds/785 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 05:49:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 03:49:51 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080402034951.8D2B01E4011@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/177 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 06:07:44 2008 From: python-checkins at python.org (jeffrey.yasskin) Date: Wed, 2 Apr 2008 06:07:44 +0200 (CEST) Subject: [Python-checkins] r62102 - python/trunk/Lib/test/test_signal.py Message-ID: <20080402040744.774BE1E4004@bag.python.org> Author: jeffrey.yasskin Date: Wed Apr 2 06:07:44 2008 New Revision: 62102 Modified: python/trunk/Lib/test/test_signal.py Log: Try to make test_signal less flaky. I still see some flakiness in test_itimer_prof. Modified: python/trunk/Lib/test/test_signal.py ============================================================================== --- python/trunk/Lib/test/test_signal.py (original) +++ python/trunk/Lib/test/test_signal.py Wed Apr 2 06:07:44 2008 @@ -28,6 +28,15 @@ os._exit(0) +def ignoring_eintr(__func, *args, **kwargs): + try: + return __func(*args, **kwargs) + except IOError as e: + if e.errno != signal.EINTR: + raise + return None + + class InterProcessSignalTests(unittest.TestCase): MAX_DURATION = 20 # Entire test should last at most 20 sec. @@ -77,8 +86,11 @@ if test_support.verbose: print "test runner's pid is", pid - child = subprocess.Popen(['kill', '-HUP', str(pid)]) - self.wait(child) + child = ignoring_eintr(subprocess.Popen, ['kill', '-HUP', str(pid)]) + if child: + self.wait(child) + if not self.a_called: + time.sleep(1) # Give the signal time to be delivered. self.assertTrue(self.a_called) self.assertFalse(self.b_called) self.a_called = False @@ -87,6 +99,7 @@ child = subprocess.Popen(['kill', '-USR1', str(pid)]) # This wait should be interrupted by the signal's exception. self.wait(child) + time.sleep(1) # Give the signal time to be delivered. self.fail('HandlerBCalled exception not thrown') except HandlerBCalled: self.assertTrue(self.b_called) @@ -94,8 +107,9 @@ if test_support.verbose: print "HandlerBCalled exception caught" - child = subprocess.Popen(['kill', '-USR2', str(pid)]) - self.wait(child) # Nothing should happen. + child = ignoring_eintr(subprocess.Popen, ['kill', '-USR2', str(pid)]) + if child: + self.wait(child) # Nothing should happen. try: signal.alarm(1) @@ -103,14 +117,18 @@ # since alarm is going to raise a KeyboardException, which # will skip the call. signal.pause() + # But if another signal arrives before the alarm, pause + # may return early. + time.sleep(1) except KeyboardInterrupt: if test_support.verbose: print "KeyboardInterrupt (the alarm() went off)" except: - self.fail('Some other exception woke us from pause: %s' % + self.fail("Some other exception woke us from pause: %s" % traceback.format_exc()) else: - self.fail('pause returned of its own accord') + self.fail("pause returned of its own accord, and the signal" + " didn't arrive after another second.") def test_main(self): # This function spawns a child process to insulate the main From buildbot at python.org Wed Apr 2 07:40:03 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 05:40:03 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian trunk Message-ID: <20080402054003.95E621E4004@bag.python.org> The Buildbot has detected a new failure of alpha Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%20trunk/builds/68 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 07:54:27 2008 From: python-checkins at python.org (neal.norwitz) Date: Wed, 2 Apr 2008 07:54:27 +0200 (CEST) Subject: [Python-checkins] r62103 - python/trunk/Lib/test/test_ssl.py Message-ID: <20080402055427.761521E4004@bag.python.org> Author: neal.norwitz Date: Wed Apr 2 07:54:27 2008 New Revision: 62103 Modified: python/trunk/Lib/test/test_ssl.py Log: Apply same patch from 3k branch to try and prevent this test from hanging on various platforms, most recently the Alpha Tru64. Modified: python/trunk/Lib/test/test_ssl.py ============================================================================== --- python/trunk/Lib/test/test_ssl.py (original) +++ python/trunk/Lib/test/test_ssl.py Wed Apr 2 07:54:27 2008 @@ -380,6 +380,7 @@ except: sys.stdout.write(''.join(traceback.format_exception(*sys.exc_info()))) break + time.sleep(0.1) def server_close(self): # Again, we want this to run in a thread, so we need to override From buildbot at python.org Wed Apr 2 08:45:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 06:45:53 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080402064553.C71541E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/656 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_xmlrpc_net sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 09:06:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 07:06:10 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080402070610.E7BD31E401F@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2801 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_smtplib test_socket ====================================================================== FAIL: testInterruptedTimeout (test.test_socket.TCPTimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_socket.py", line 1012, in testInterruptedTimeout self.fail("got Alarm in wrong place") AssertionError: got Alarm in wrong place sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 09:55:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 07:55:33 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080402075534.14C331E4004@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/737 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 13:03:37 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 11:03:37 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080402110338.1A0531E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/919 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 15:43:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 13:43:15 +0000 Subject: [Python-checkins] buildbot failure in ARM Linux trunk Message-ID: <20080402134315.513AC1E4012@bag.python.org> The Buildbot has detected a new failure of ARM Linux trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ARM%20Linux%20trunk/builds/15 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-linux-arm Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 17:01:01 2008 From: python-checkins at python.org (trent.nelson) Date: Wed, 2 Apr 2008 17:01:01 +0200 (CEST) Subject: [Python-checkins] r62105 - python/trunk/PCbuild/readme.txt Message-ID: <20080402150101.86E861E4034@bag.python.org> Author: trent.nelson Date: Wed Apr 2 17:01:00 2008 New Revision: 62105 Modified: python/trunk/PCbuild/readme.txt Log: Update information pertaining to building external components, as well as notes on x64 builds. This file now accurately describes the build process as is; however, there's still a lot of room for improvement, especially with regards to how we build Tcl/Tk, Tix, and OpenSSL. Watch this space for further improvements. Modified: python/trunk/PCbuild/readme.txt ============================================================================== --- python/trunk/PCbuild/readme.txt (original) +++ python/trunk/PCbuild/readme.txt Wed Apr 2 17:01:00 2008 @@ -1,10 +1,17 @@ Building Python using VC++ 9.0 ------------------------------ -This directory is used to build Python for Win32 platforms, e.g. Windows -2000, XP and Vista. It requires Microsoft Visual C++ 9.0 -(a.k.a. Visual Studio .NET 2008). -(For other Windows platforms and compilers, see ../PC/readme.txt.) +This directory is used to build Python for Win32 and x64 platforms, e.g. +Windows 2000, XP, Vista and Windows Server 2008. In order to build 32-bit +debug and release executables, Microsoft Visual C++ 2008 Express Edition is +required at the very least. In order to build 64-bit debug and release +executables, Visual Studio 2008 Standard Edition is required at the very +least. In order to build all of the above, as well as generate release builds +that make use of Profile Guided Optimisation (PG0), Visual Studio 2008 +Professional Edition is required at the very least. The official Python +releases are built with this version of Visual Studio. + +For other Windows platforms and compilers, see ../PC/readme.txt. All you need to do is open the workspace "pcbuild.sln" in Visual Studio, select the desired combination of configuration and platform and eventually @@ -59,7 +66,7 @@ are linked to a CRT "side by side" assembly which must be present on the target machine. This is avalible under the VC/Redist folder of your visual studio distribution. On XP and later operating systems that support -side-by-side assemblies it is not enough to have the msvcrt80.dll present, +side-by-side assemblies it is not enough to have the msvcrt90.dll present, it has to be there as a whole assembly, that is, a folder with the .dll and a .manifest. Also, a check is made for the correct version. Therefore, one should distribute this assembly with the dlls, and keep @@ -95,79 +102,19 @@ winsound play sounds (typically .wav files) under Windows -The following subprojects will generally NOT build out of the box. They -wrap code Python doesn't control, and you'll need to download the base -packages first and unpack them into siblings of PCbuilds's parent -directory; for example, if your PCbuild is ..\dist\py3k\PCbuild\, -unpack into new subdirectories of ..\dist\. - +Python-controlled subprojects that wrap external projects: +_bsddb + Wraps Berkeley DB 4.4.20, which is currently built by _bsddb44.vcproj. + project (see below). +_sqlite3 + Wraps SQLite 3.3.4, which is currently built by sqlite3.vcproj (see below). _tkinter - Python wrapper for the Tk windowing system. Requires building - Tcl/Tk first. Following are instructions for Tcl/Tk 8.4.16. - - NOTE: The 64 build builds must land in tcltk64 instead of tcltk. - - Get source - ---------- - In the dist directory, run - svn export http://svn.python.org/projects/external/tcl8.4.16 - svn export http://svn.python.org/projects/external/tk8.4.16 - svn export http://svn.python.org/projects/external/tix-8.4.0 - - Build with build_tkinter.py - --------------------------- - The PCbuild directory contains a Python script which automates all - steps. Run the script in a Visual Studio 2008 command prompt with - - python build_tkinter.py Win32 - - Use x64 instead of Win32 for the x64 platform. - - NOTE: Tcl/Tk 8.4 doesn't compile for x64. - - Build Tcl first - --------------- - Use "Start -> All Programs -> Microsoft Visual Studio 2008 - -> Visual Studio Tools -> Visual Studio 2008 Command Prompt" - to get a shell window with the correct environment settings - cd dist\tcl8.4.16\win - nmake -f makefile.vc - nmake -f makefile.vc INSTALLDIR=..\..\tcltk install - - XXX Should we compile with OPTS=threads? - - Optional: run tests, via - nmake -f makefile.vc test - - On WinXP Pro, wholly up to date as of 30-Aug-2004: - all.tcl: Total 10678 Passed 9969 Skipped 709 Failed 0 - Sourced 129 Test Files. - - Build Tk - -------- - cd dist\tk8.4.16\win - nmake -f makefile.vc TCLDIR=..\..\tcl8.4.16 - nmake -f makefile.vc TCLDIR=..\..\tcl8.4.16 INSTALLDIR=..\..\tcltk install - - XXX Should we compile with OPTS=threads? - - XXX Our installer copies a lot of stuff out of the Tcl/Tk install - XXX directory. Is all of that really needed for Python use of Tcl/Tk? - - Optional: run tests, via - nmake -f makefile.vc TCLDIR=..\..\tcl8.4.16 test - - On WinXP Pro, wholly up to date as of 30-Aug-2004: - all.tcl: Total 8420 Passed 6826 Skipped 1581 Failed 13 - Sourced 91 Test Files. - Files with failing tests: canvImg.test scrollbar.test textWind.test winWm.test - - Built Tix - --------- - cd dist\tix-8.4.0\win - nmake -f python9.mak - nmake -f python9.mak install - + Wraps the Tk windowing system. Unlike _bsddb and _sqlite3, there's no + corresponding tcltk.vcproj-type project that builds Tcl/Tk from vcproj's + within our pcbuild.sln, which means this module expects to find a + pre-built Tcl/Tk in either ..\..\tcltk for 32-bit or ..\..\tcltk64 for + 64-bit (relative to this directory). See below for instructions to build + Tcl/Tk. bz2 Python wrapper for the libbz2 compression library. Homepage http://sources.redhat.com/bzip2/ @@ -176,6 +123,10 @@ svn export http://svn.python.org/projects/external/bzip2-1.0.3 + ** NOTE: if you use the Tools\buildbot\external(-amd64).bat approach for + obtaining external sources then you don't need to manually get the source + above via subversion. ** + A custom pre-link step in the bz2 project settings should manage to build bzip2-1.0.3\libbz2.lib by magic before bz2.pyd (or bz2_d.pyd) is linked in PCbuild\. @@ -186,63 +137,6 @@ All of this managed to build libbz2.lib in bzip2-1.0.3\$platform-$configuration\, which the Python project links in. - -_bsddb - To use the version of bsddb that Python is built with by default, invoke - (in the dist directory) - - svn export http://svn.python.org/projects/external/db-4.4.20 - - Next open the solution file db-4.4.20\build_win32\Berkeley_DB.sln with - Visual Studio and convert the projects to the new format. VS 2008 - builds the necessary libraries in a pre-link step of _bsddb. You - have to add "$(VCInstallDir)vcpackages" to the search path first - (Tools -> Options -> Projects and Solutions -> VC++ Directories, - Platform: Win32, Show directories for: Executable files). - - The _bsddb subprojects depends only on the db_static project of - Berkeley DB. You have to choose either "Release", "Release AMD64", "Debug" - or "Debug AMD64" as configuration. For the AND64 builds, you need to - create the "x64" platform first (in Solution Platforms\Configuration - Manager...) - - Alternatively, if you want to start with the original sources, - go to Sleepycat's download page: - http://www.sleepycat.com/downloads/releasehistorybdb.html - - and download version 4.4.20. - - With or without strong cryptography? You can choose either with or - without strong cryptography, as per the instructions below. By - default, Python is built and distributed WITHOUT strong crypto. - - Unpack the sources; if you downloaded the non-crypto version, rename - the directory from db-4.4.20.NC to db-4.4.20. - - Now apply any patches that apply to your version. - - Open - db-4.4.20\docs\ref\build_win\intro.html - - and follow the "Windows->Building Berkeley DB with Visual C++ .NET" - instructions for building the Sleepycat - software. Note that Berkeley_DB.dsw is in the build_win32 subdirectory. - Build the "db_static" project, for "Release" mode. - - To run extensive tests, pass "-u bsddb" to regrtest.py. test_bsddb3.py - is then enabled. Running in verbose mode may be helpful. - -_sqlite3 - Python wrapper for SQLite library. - - Get the source code through - - svn export http://svn.python.org/projects/external/sqlite-source-3.3.4 - - To use the extension module in a Python build tree, copy sqlite3.dll into - the PCbuild folder. The source directory in svn also contains a .def file - from the binary release of sqlite3. - _ssl Python wrapper for the secure sockets library. @@ -250,6 +144,10 @@ svn export http://svn.python.org/projects/external/openssl-0.9.8g + ** NOTE: if you use the Tools\buildbot\external(-amd64).bat approach for + obtaining external sources then you don't need to manually get the source + above via subversion. ** + Alternatively, get the latest version from http://www.openssl.org. You can (theoretically) use any version of OpenSSL you like - the build process will automatically select the latest version. @@ -285,6 +183,69 @@ build_ssl.py/MSVC isn't clever enough to clean OpenSSL - you must do this by hand. +The subprojects above wrap external projects Python doesn't control, and as +such, a little more work is required in order to download the relevant source +files for each project before they can be built. The buildbots do this each +time they're built, so the easiest approach is to run either external.bat or +external-amd64.bat in the ..\Tools\buildbot directory from ..\, i.e.: + + C:\..\svn.python.org\projects\python\trunk\PCbuild>cd .. + C:\..\svn.python.org\projects\python\trunk>Tools\buildbot\external.bat + +This extracts all the external subprojects from http://svn.python.org/external +via Subversion (so you'll need an svn.exe on your PATH) and places them in +..\.. (relative to this directory). The external(-amd64).bat scripts will +also build a debug build of Tcl/Tk; there aren't any equivalent batch files +for building release versions of Tcl/Tk lying around in the Tools\buildbot +directory. If you need to build a release version of Tcl/Tk it isn't hard +though, take a look at the relevant external(-amd64).bat file and find the +two nmake lines, then call each one without the 'DEBUG=1' parameter, i.e.: + +The external-amd64.bat file contains this for tcl: + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 DEBUG=1 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all install + +So for a release build, you'd call it as: + nmake -f makefile.vc COMPILERFLAGS=-DWINVER=0x0500 MACHINE=AMD64 INSTALLDIR=..\..\tcltk64 clean all install + + XXX Should we compile with OPTS=threads? + XXX Our installer copies a lot of stuff out of the Tcl/Tk install + XXX directory. Is all of that really needed for Python use of Tcl/Tk? + +This will be cleaned up in the future; ideally Tcl/Tk will be brought into our +pcbuild.sln as custom .vcproj files, just as we've recently done with the +_bsddb44.vcproj and sqlite3.vcproj files, which will remove the need for +Tcl/Tk to be built separately via a batch file. + +XXX trent.nelson 02-Apr-08: + Having the external subprojects in ..\.. relative to this directory is a + bit of a nuisance when you're working on py3k and trunk in parallel and + your directory layout mimics that of Python's subversion layout, e.g.: + + C:\..\svn.python.org\projects\python\trunk + C:\..\svn.python.org\projects\python\branches\py3k + C:\..\svn.python.org\projects\python\branches\release25-maint + + I'd like to change things so that external subprojects are fetched from + ..\external instead of ..\.., then provide some helper scripts or batch + files that would set up a new ..\external directory with svn checkouts of + the relevant branches in http://svn.python.org/projects/external/, or + alternatively, use junctions to link ..\external with a pre-existing + externals directory being used by another branch. i.e. if I'm usually + working on trunk (and have previously created trunk\external via the + provided batch file), and want to do some work on py3k, I'd set up a + junction as follows (using the directory structure above as an example): + + C:\..\python\trunk\external <- already exists and has built versions + of the external subprojects + + C:\..\python\branches\py3k>linkd.exe external ..\..\trunk\external + Link created at: external + + Only a slight tweak would be needed to the buildbots such that bots + building trunk and py3k could make use of the same facility. (2.5.x + builds need to be kept separate as they're using Visual Studio 7.1.) +/XXX trent.nelson 02-Apr-08 + Building for Itanium -------------------- From buildbot at python.org Wed Apr 2 17:08:55 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 15:08:55 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080402150855.A2A861E4004@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/236 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 17:42:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 15:42:17 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080402154217.46A8B1E4009@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/133 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_getargs2 ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 17:42:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 15:42:28 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080402154228.EB78D1E4004@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/282 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat ====================================================================== FAIL: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\trunk.nelson-windows\build\lib\test\test_asynchat.py", line 217, in test_close_when_done self.assertTrue(len(s.buffer) > 0) AssertionError Traceback (most recent call last): File "S:\buildbots\python\trunk.nelson-windows\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "S:\buildbots\python\trunk.nelson-windows\build\lib\test\test_asynchat.py", line 33, in run data = conn.recv(1) error: [Errno 10054] An existing connection was forcibly closed by the remote host sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 17:46:32 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 15:46:32 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080402154632.E45601E401F@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1221 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_winsound ====================================================================== ERROR: test_alias_asterisk (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_winsound.py", line 86, in test_alias_asterisk winsound.PlaySound('SystemAsterisk', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_exclamation (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_winsound.py", line 96, in test_alias_exclamation winsound.PlaySound('SystemExclamation', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_exit (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_winsound.py", line 106, in test_alias_exit winsound.PlaySound('SystemExit', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_hand (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_winsound.py", line 116, in test_alias_hand winsound.PlaySound('SystemHand', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_question (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_winsound.py", line 126, in test_alias_question winsound.PlaySound('SystemQuestion', winsound.SND_ALIAS) RuntimeError: Failed to play sound sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 17:56:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 15:56:09 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080402155610.19B0F1E402B@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3138 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 18:07:03 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 16:07:03 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080402160704.0FE1A1E4013@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/150 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_urllib2net ====================================================================== ERROR: test_ftp_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 227, in test_ftp_NoneNodefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 25, in _urlopen_with_retry raise last_exc File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 378, in open response = self._open(req, data) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 396, in _open '_open', req) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 356, in _call_chain result = func(*args) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1295, in ftp_open raise URLError('ftp error: %s' % msg).with_traceback(sys.exc_info()[2]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1277, in ftp_open fw = self.connect_ftp(user, passwd, host, port, dirs, req.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1322, in connect_ftp self.cache[key] = ftpwrapper(user, passwd, host, port, dirs, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 786, in __init__ self.init() File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 792, in init self.ftp.connect(self.host, self.port, self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ftplib.py", line 131, in connect self.sock = socket.create_connection((self.host, self.port), self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\socket.py", line 294, in create_connection raise error(msg) urllib2.URLError: ====================================================================== ERROR: test_ftp_NoneWithdefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 221, in test_ftp_NoneWithdefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 25, in _urlopen_with_retry raise last_exc File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 378, in open response = self._open(req, data) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 396, in _open '_open', req) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 356, in _call_chain result = func(*args) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1295, in ftp_open raise URLError('ftp error: %s' % msg).with_traceback(sys.exc_info()[2]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1277, in ftp_open fw = self.connect_ftp(user, passwd, host, port, dirs, req.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1322, in connect_ftp self.cache[key] = ftpwrapper(user, passwd, host, port, dirs, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 786, in __init__ self.init() File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 792, in init self.ftp.connect(self.host, self.port, self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ftplib.py", line 131, in connect self.sock = socket.create_connection((self.host, self.port), self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\socket.py", line 294, in create_connection raise error(msg) urllib2.URLError: ====================================================================== ERROR: test_ftp_Value (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 231, in test_ftp_Value u = _urlopen_with_retry(self.FTP_HOST, timeout=60) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 25, in _urlopen_with_retry raise last_exc File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 378, in open response = self._open(req, data) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 396, in _open '_open', req) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 356, in _call_chain result = func(*args) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1295, in ftp_open raise URLError('ftp error: %s' % msg).with_traceback(sys.exc_info()[2]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1277, in ftp_open fw = self.connect_ftp(user, passwd, host, port, dirs, req.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1322, in connect_ftp self.cache[key] = ftpwrapper(user, passwd, host, port, dirs, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 786, in __init__ self.init() File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 792, in init self.ftp.connect(self.host, self.port, self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ftplib.py", line 131, in connect self.sock = socket.create_connection((self.host, self.port), self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\socket.py", line 294, in create_connection raise error(msg) urllib2.URLError: sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 18:24:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 16:24:57 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080402162458.1BF971E4026@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/745 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "c:\buildbot\work\3.0.heller-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "c:\buildbot\work\3.0.heller-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "C:\buildbot\work\3.0.heller-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "C:\buildbot\work\3.0.heller-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "C:\buildbot\work\3.0.heller-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "C:\buildbot\work\3.0.heller-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "C:\buildbot\work\3.0.heller-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 2 tests failed: test_smtplib test_winsound ====================================================================== ERROR: test_alias_asterisk (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_winsound.py", line 87, in test_alias_asterisk winsound.PlaySound('SystemAsterisk', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_exclamation (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_winsound.py", line 97, in test_alias_exclamation winsound.PlaySound('SystemExclamation', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_exit (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_winsound.py", line 107, in test_alias_exit winsound.PlaySound('SystemExit', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_hand (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_winsound.py", line 117, in test_alias_hand winsound.PlaySound('SystemHand', winsound.SND_ALIAS) RuntimeError: Failed to play sound ====================================================================== ERROR: test_alias_question (test.test_winsound.PlaySoundTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_winsound.py", line 127, in test_alias_question winsound.PlaySound('SystemQuestion', winsound.SND_ALIAS) RuntimeError: Failed to play sound sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 18:50:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 16:50:35 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080402165035.5861C1E4004@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/682 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'0002-0002-0002-0002-0002' Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'2000-2000-2000-2000-2000' Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'1001-1001-1001-1001-1001' 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 20:28:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 18:28:45 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080402182845.944D41E4016@bag.python.org> The Buildbot has detected a new failure of sparc Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%203.0/builds/158 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Wed Apr 2 20:38:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 18:38:27 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080402183827.E55EA1E401F@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%203.0/builds/231 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 22:14:56 2008 From: python-checkins at python.org (david.goodger) Date: Wed, 2 Apr 2008 22:14:56 +0200 (CEST) Subject: [Python-checkins] r62107 - sandbox/trunk/datetime/US.py Message-ID: <20080402201456.F06151E402B@bag.python.org> Author: david.goodger Date: Wed Apr 2 22:14:56 2008 New Revision: 62107 Modified: sandbox/trunk/datetime/US.py Log: implement the new DST rules (2007 forward) Modified: sandbox/trunk/datetime/US.py ============================================================================== --- sandbox/trunk/datetime/US.py (original) +++ sandbox/trunk/datetime/US.py Wed Apr 2 22:14:56 2008 @@ -2,15 +2,55 @@ from datetime import tzinfo from datetime import timedelta -from dateutil import SUNDAY, APRIL, OCTOBER, weekday_of_month +from dateutil import SUNDAY, MARCH, APRIL, OCTOBER, NOVEMBER, weekday_of_month __all__ = ['USTimeZone', 'Eastern', 'Central', 'Mountain', 'Pacific'] + +class DST_Rules(object): + + """Encapsulate the rules for a DST change date.""" + + # Assumes that DST changes happen on Sunday mornings. + + def __init__(self, month, sunday_index): + """ + Parameters: + + * `month`: Month of DST change (1=January, 12=December). + * `sunday_index`: Base-0 index of Sunday (0=first, 1=second, -1=last). + """ + self.month = month + self.sunday_index = sunday_index + self.dummy_date = datetime(year=1, month=month, day=1, hour=self.hour) + + def date(self, year): + """Return the date of the change in the given `year`.""" + date = weekday_of_month( + SUNDAY, self.dummy_date.replace(year=year), self.sunday_index) + assert date.month == self.dummy_date.month + return date + + +class DST_Start(DST_Rules): + + # DST starts at 2am (standard time): + hour = 2 + + +class DST_End(DST_Rules): + + # DST ends at 1am (standard time; 2am DST time): + hour = 1 + + class USTimeZone(tzinfo): - "A class capturing the current (2002) rules for United States time zones." - # XXX Note that in 2007 the rules are changing: - # XXX 2nd Sunday in March, 1st Sunday in November. - # XXX Anybody want to volunteer a fix for this code? + """ + A class capturing the pre- and post-2007 daylight saving time (DST) + rules for United States time zones. + """ + # Note that in 2007 the rules changed. The comment below refers to + # the old rules. See USTimeZone.dst_rules for specific dates. # A seemingly intractable problem: when DST ends, there's a one-hour # slice that repeats in "naive time". That is, when the naive clock @@ -49,10 +89,18 @@ dstoff = timedelta(hours=1) zero = timedelta(0) - # DST starts at 2am (standard time) on the first Sunday in April. - start = datetime(1, APRIL, 1, 2) - # and ends at 2am (DST time; 1am standard time) on the last Sunday of Oct. - end = datetime(1, OCTOBER, 1, 1) + + # [(first year, start rule, end rule), ...] + dst_rules = [ + (2007, + DST_Start(month=MARCH, sunday_index=1), + DST_End(month=NOVEMBER, sunday_index=0)), + (1987, + DST_Start(month=APRIL, sunday_index=0), + DST_End(month=OCTOBER, sunday_index=-1)), + ] + # Ensure that the rules are in reverse chronological order: + dst_rules.sort(reverse=True) def __init__(self, stdhours, stdname, dstname): self.stdoff = timedelta(hours=stdhours) @@ -76,13 +124,27 @@ assert dt.tzinfo is self - # Find first Sunday in April. - start = weekday_of_month(SUNDAY, self.start.replace(year=dt.year), 0) - assert start.weekday() == 6 and start.month == 4 and start.day <= 7 - - # Find last Sunday in October. - end = weekday_of_month(SUNDAY, self.end.replace(year=dt.year), -1) - assert end.weekday() == 6 and end.month == 10 and end.day >= 25 + for (first_year, dst_start, dst_end) in self.dst_rules: + if dt.year >= first_year: + break + else: + # As above, an exception instead may be sensible here. + return self.zero + + start = dst_start.date(dt.year) + assert start.weekday() == 6 + if dt.year >= 2007: + #import pdb ; pdb.set_trace() + assert 8 <= start.day <= 14 + else: + assert start.day <= 7 + + end = dst_end.date(dt.year) + assert end.weekday() == 6 + if dt.year >= 2007: + assert end.day <= 7 + else: + assert end.day >= 25 # Can't compare naive to aware objects, so strip the timezone from # dt first. @@ -91,6 +153,7 @@ else: return self.zero + Eastern = USTimeZone(-5, "EST", "EDT") Central = USTimeZone(-6, "CST", "CDT") Mountain = USTimeZone(-7, "MST", "MDT") @@ -233,6 +296,24 @@ EST (2002, 10, 27, 1, 0, 0, 6, 300, 0) Sun Oct 27 01:00:00 2002 + +Post-2007 rules: + +Right before DST starts. +>>> before = datetime(2007, 3, 11, 1, 59, 59, tzinfo=Eastern) +>>> printstuff(before) +2007-03-11 01:59:59-05:00 +EST +(2007, 3, 11, 1, 59, 59, 6, 70, 0) +Sun Mar 11 01:59:59 2007 + +Right when DST starts. +>>> after = before + timedelta(seconds=1) +>>> printstuff(after) +2007-03-11 02:00:00-04:00 +EDT +(2007, 3, 11, 2, 0, 0, 6, 70, 1) +Sun Mar 11 02:00:00 2007 """ __test__ = {'brainbuster': brainbuster_test} From python-checkins at python.org Wed Apr 2 22:15:40 2008 From: python-checkins at python.org (david.goodger) Date: Wed, 2 Apr 2008 22:15:40 +0200 (CEST) Subject: [Python-checkins] r62108 - sandbox/trunk/datetime/EU.py Message-ID: <20080402201540.470EA1E402B@bag.python.org> Author: david.goodger Date: Wed Apr 2 22:15:39 2008 New Revision: 62108 Modified: sandbox/trunk/datetime/EU.py Log: correct time zone names & add Berlin Modified: sandbox/trunk/datetime/EU.py ============================================================================== --- sandbox/trunk/datetime/EU.py (original) +++ sandbox/trunk/datetime/EU.py Wed Apr 2 22:15:39 2008 @@ -75,8 +75,12 @@ return ZERO UTC = Fixed(ZERO, "UTC") -London = Europe(ZERO, "WET", "WDT") -Amsterdam = Europe(HOUR, "MET", "MDT") +WesternEU = Europe(ZERO, "WET", "WEST") +CentralEU = Europe(HOUR, "CET", "CEST") +EasternEU = Europe(HOUR + HOUR, "EET", "EEST") +London = WesternEU +Amsterdam = CentralEU +Berlin = CentralEU demo = """ We start easy, Saturday noon in Amsterdam on the last day of DST: From python-checkins at python.org Wed Apr 2 22:17:48 2008 From: python-checkins at python.org (david.goodger) Date: Wed, 2 Apr 2008 22:17:48 +0200 (CEST) Subject: [Python-checkins] r62109 - sandbox/trunk/datetime/PSF.py Message-ID: <20080402201748.504111E4021@bag.python.org> Author: david.goodger Date: Wed Apr 2 22:17:47 2008 New Revision: 62109 Modified: sandbox/trunk/datetime/PSF.py Log: new time for PSF Board meetings from April 2008 (12pm noon Eastern) Modified: sandbox/trunk/datetime/PSF.py ============================================================================== --- sandbox/trunk/datetime/PSF.py (original) +++ sandbox/trunk/datetime/PSF.py Wed Apr 2 22:17:47 2008 @@ -10,7 +10,7 @@ from dateutil import MONDAY, weekday_of_month from US import Eastern, Central, Mountain, Pacific -from EU import UTC, London, Amsterdam +from EU import UTC, WesternEU, CentralEU, EasternEU, London, Amsterdam, Berlin alltzs = {'Eastern': Eastern, 'Central': Central, @@ -19,14 +19,25 @@ 'UTC': UTC, 'London': London, 'Amsterdam': Amsterdam, + 'Berlin': Berlin, + 'WesternEU': WesternEU, + 'CentralEU': CentralEU, + 'EasternEU': EasternEU, } # A vector of 12 datetimes, all in Eastern. def psf_times_for_a_year(year): - # 1pm Eastern on the second Monday of the month. + # Until March 2008: 1pm Eastern on the second Monday of the month. base = datetime(year, 1, 1, 13, tzinfo=Eastern) - return [weekday_of_month(MONDAY, base.replace(month=i), 1) - for i in range(1, 13)] + if year >= 2008: + # From April 2008: 12pm (noon) Eastern. + base = base.replace(hour=12) + times = [weekday_of_month(MONDAY, base.replace(month=i), 1) + for i in range(1, 13)] + if year == 2008: + # Adjust the hour of the first 3 months: + times[:3] = [time.replace(hour=13) for time in times[:3]] + return times # Eastern is always displayed first. def display_psf_times_for_a_year(year, tzs): From buildbot at python.org Wed Apr 2 22:27:40 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 20:27:40 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD 3 2.5 Message-ID: <20080402202740.910341E400B@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD 3 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%203%202.5/builds/3 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-freebsd Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: amaury.forgeotdarc,georg.brandl,guido.van.rossum,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_urllib2net test_urllibnet ====================================================================== ERROR: test_geturl (test.test_urllibnet.urlopenNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/test/test_urllibnet.py", line 79, in test_geturl open_url = urllib.urlopen(URL) File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/urllib.py", line 82, in urlopen return opener.open(url) File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/urllib.py", line 190, in open return getattr(self, name)(url) File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/urllib.py", line 325, in open_http h.endheaders() File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/httplib.py", line 860, in endheaders self._send_output() File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/httplib.py", line 732, in _send_output self.send(msg) File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/httplib.py", line 699, in send self.connect() File "/store/home/python.buildbot/default/2.5.nelson-freebsd/build/Lib/httplib.py", line 683, in connect raise socket.error, msg IOError: [Errno socket error] (60, 'Operation timed out') sincerely, -The Buildbot From python-checkins at python.org Wed Apr 2 23:09:37 2008 From: python-checkins at python.org (vinay.sajip) Date: Wed, 2 Apr 2008 23:09:37 +0200 (CEST) Subject: [Python-checkins] r62110 - python/trunk/Lib/logging/handlers.py Message-ID: <20080402210937.424431E4012@bag.python.org> Author: vinay.sajip Date: Wed Apr 2 23:09:27 2008 New Revision: 62110 Modified: python/trunk/Lib/logging/handlers.py Log: Fix: #2315, #2316, #2317: TimedRotatingFileHandler - changed logic to better handle daylight savings time, deletion of old log files, and fixed a bug in calculating rollover when no logging occurs for a longer interval than the rollover period. Modified: python/trunk/Lib/logging/handlers.py ============================================================================== --- python/trunk/Lib/logging/handlers.py (original) +++ python/trunk/Lib/logging/handlers.py Wed Apr 2 23:09:27 2008 @@ -22,12 +22,12 @@ Should work under Python versions >= 1.5.2, except that source line information is not available unless 'sys._getframe()' is. -Copyright (C) 2001-2007 Vinay Sajip. All Rights Reserved. +Copyright (C) 2001-2008 Vinay Sajip. All Rights Reserved. To use, simply 'import logging' and log away! """ -import logging, socket, types, os, string, cPickle, struct, time, glob +import logging, socket, types, os, string, cPickle, struct, time, re from stat import ST_DEV, ST_INO try: @@ -176,15 +176,19 @@ if self.when == 'S': self.interval = 1 # one second self.suffix = "%Y-%m-%d_%H-%M-%S" + self.extMatch = r"^\d{4}-\d{2}-\d{2}_\d{2}-\d{2}-\d{2}$" elif self.when == 'M': self.interval = 60 # one minute self.suffix = "%Y-%m-%d_%H-%M" + self.extMatch = r"^\d{4}-\d{2}-\d{2}_\d{2}-\d{2}$" elif self.when == 'H': self.interval = 60 * 60 # one hour self.suffix = "%Y-%m-%d_%H" + self.extMatch = r"^\d{4}-\d{2}-\d{2}_\d{2}$" elif self.when == 'D' or self.when == 'MIDNIGHT': self.interval = 60 * 60 * 24 # one day self.suffix = "%Y-%m-%d" + self.extMatch = r"^\d{4}-\d{2}-\d{2}$" elif self.when.startswith('W'): self.interval = 60 * 60 * 24 * 7 # one week if len(self.when) != 2: @@ -193,9 +197,11 @@ raise ValueError("Invalid day specified for weekly rollover: %s" % self.when) self.dayOfWeek = int(self.when[1]) self.suffix = "%Y-%m-%d" + self.extMatch = r"^\d{4}-\d{2}-\d{2}$" else: raise ValueError("Invalid rollover interval specified: %s" % self.when) + self.extMatch = re.compile(self.extMatch) self.interval = self.interval * interval # multiply by units requested self.rolloverAt = currentTime + self.interval @@ -238,16 +244,24 @@ daysToWait = self.dayOfWeek - day else: daysToWait = 6 - day + self.dayOfWeek + 1 - self.rolloverAt = self.rolloverAt + (daysToWait * (60 * 60 * 24)) + newRolloverAt = self.rolloverAt + (daysToWait * (60 * 60 * 24)) + dstNow = t[-1] + dstAtRollover = time.localtime(newRolloverAt)[-1] + if dstNow != dstAtRollover: + if not dstNow: # DST kicks in before next rollover, so we need to deduct an hour + newRolloverAt = newRolloverAt - 3600 + else: # DST bows out before next rollover, so we need to add an hour + newRolloverAt = newRolloverAt + 3600 + self.rolloverAt = newRolloverAt #print "Will rollover at %d, %d seconds from now" % (self.rolloverAt, self.rolloverAt - currentTime) def shouldRollover(self, record): """ - Determine if rollover should occur + Determine if rollover should occur. record is not used, as we are just comparing times, but it is needed so - the method siguratures are the same + the method signatures are the same """ t = int(time.time()) if t >= self.rolloverAt: @@ -255,6 +269,29 @@ #print "No need to rollover: %d, %d" % (t, self.rolloverAt) return 0 + def getFilesToDelete(self): + """ + Determine the files to delete when rolling over. + + More specific than the earlier method, which just used glob.glob(). + """ + dirName, baseName = os.path.split(self.baseFilename) + fileNames = os.listdir(dirName) + result = [] + prefix = baseName + "." + plen = len(prefix) + for fileName in fileNames: + if fileName[:plen] == prefix: + suffix = fileName[plen:] + if self.extMatch.match(suffix): + result.append(fileName) + result.sort() + if len(result) < self.backupCount: + result = [] + else: + result = result[:len(result) - self.backupCount] + return result + def doRollover(self): """ do a rollover; in this case, a date/time stamp is appended to the filename @@ -273,14 +310,29 @@ os.rename(self.baseFilename, dfn) if self.backupCount > 0: # find the oldest log file and delete it - s = glob.glob(self.baseFilename + ".20*") - if len(s) > self.backupCount: - s.sort() - os.remove(s[0]) + #s = glob.glob(self.baseFilename + ".20*") + #if len(s) > self.backupCount: + # s.sort() + # os.remove(s[0]) + for s in self.getFilesToDelete(): + os.remove(s) #print "%s -> %s" % (self.baseFilename, dfn) self.mode = 'w' self.stream = self._open() - self.rolloverAt = self.rolloverAt + self.interval + newRolloverAt = self.rolloverAt + self.interval + currentTime = int(time.time()) + while newRolloverAt <= currentTime: + newRolloverAt = newRolloverAt + self.interval + #If DST changes and midnight or weekly rollover, adjust for this. + if self.when == 'MIDNIGHT' or self.when.startswith('W'): + dstNow = time.localtime(currentTime)[-1] + dstAtRollover = time.localtime(newRolloverAt)[-1] + if dstNow != dstAtRollover: + if not dstNow: # DST kicks in before next rollover, so we need to deduct an hour + newRolloverAt = newRolloverAt - 3600 + else: # DST bows out before next rollover, so we need to add an hour + newRolloverAt = newRolloverAt + 3600 + self.rolloverAt = newRolloverAt class WatchedFileHandler(logging.FileHandler): """ From python-checkins at python.org Wed Apr 2 23:11:19 2008 From: python-checkins at python.org (vinay.sajip) Date: Wed, 2 Apr 2008 23:11:19 +0200 (CEST) Subject: [Python-checkins] r62111 - python/trunk/Misc/NEWS Message-ID: <20080402211119.BA9221E400B@bag.python.org> Author: vinay.sajip Date: Wed Apr 2 23:10:23 2008 New Revision: 62111 Modified: python/trunk/Misc/NEWS Log: Added updates with respect to recent changes to TimedRotatingFileHandler. Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Apr 2 23:10:23 2008 @@ -88,6 +88,15 @@ Library ------- +- Issue #2315: logging.handlers: TimedRotatingFileHandler now accounts for + daylight savings time in calculating the next rollover. + +- Issue #2316: logging.handlers: TimedRotatingFileHandler now calculates + rollovers correctly even when nothing is logged for a while. + +- Issue #2317: logging.handlers: TimedRotatingFileHandler now uses improved + logic for removing old files. + - Issue #2495: tokenize.untokenize now inserts a space between two consecutive string literals; previously, ["" ""] was rendered as [""""], which is incorrect python code. @@ -209,7 +218,7 @@ C API ----- -- Patch #2477: Added PyParser_ParseFileFlagsEx() and +- Patch #2477: Added PyParser_ParseFileFlagsEx() and PyParser_ParseStringFlagsFilenameEx() What's New in Python 2.6 alpha 1? @@ -227,7 +236,7 @@ - Patch #1759: Backport of PEP 3129 class decorators. -- Issue #1881: An internal parser limit has been increased. Also see +- Issue #1881: An internal parser limit has been increased. Also see issue 215555 for a discussion. - Added the future_builtins module, which contains hex() and oct(). @@ -254,8 +263,8 @@ - Fixed several potential crashes, all caused by specially crafted __del__ methods exploiting objects in temporarily inconsistent state. -- Issue #2115: Important speedup in setting __slot__ attributes. Also - prevent a possible crash: an Abstract Base Class would try to access a slot +- Issue #2115: Important speedup in setting __slot__ attributes. Also + prevent a possible crash: an Abstract Base Class would try to access a slot on a registered virtual subclass. - Fixed repr() and str() of complex numbers with infinity or nan as real or @@ -298,7 +307,7 @@ generator. - Issue #1920: "while 0" statements were completely removed by the compiler, - even in the presence of an "else" clause, which is supposed to be run when + even in the presence of an "else" clause, which is supposed to be run when the condition is false. Now the compiler correctly emits bytecode for the "else" suite. @@ -1836,10 +1845,10 @@ limit is a macro ``PyName_MAXFREELIST`` inside an #ifndef block. - ``PySet_Add()`` can now modify a newly created frozenset. Similarly to - ``PyTuple_SetItem``, it can be used to populate a brand new frozenset; but + ``PyTuple_SetItem``, it can be used to populate a brand new frozenset; but it does not steal a reference to the added item. -- Added ``PySet_Check()`` and ``PyFrozenSet_Check()`` to the set API. +- Added ``PySet_Check()`` and ``PyFrozenSet_Check()`` to the set API. - Backport of PyUnicode_FromString(), _FromStringAndSize(), _Format and _FormatV from Python 3.0. Made PyLong_AsSsize_t and PyLong_FromSsize_t @@ -1892,7 +1901,7 @@ Windows ------- -- Patch #1706: Drop support for Win9x, WinME and NT4. Python now requires +- Patch #1706: Drop support for Win9x, WinME and NT4. Python now requires Windows 2000 or greater. The _WINVER and NTDDI_VERSION macros are set to Win2k for x86/32bit builds and WinXP for AMD64 builds. From python-checkins at python.org Wed Apr 2 23:17:36 2008 From: python-checkins at python.org (vinay.sajip) Date: Wed, 2 Apr 2008 23:17:36 +0200 (CEST) Subject: [Python-checkins] r62112 - python/trunk/Doc/library/logging.rst Message-ID: <20080402211736.62DAF1E4021@bag.python.org> Author: vinay.sajip Date: Wed Apr 2 23:17:25 2008 New Revision: 62112 Modified: python/trunk/Doc/library/logging.rst Log: Added updates with respect to recent changes to TimedRotatingFileHandler. Modified: python/trunk/Doc/library/logging.rst ============================================================================== --- python/trunk/Doc/library/logging.rst (original) +++ python/trunk/Doc/library/logging.rst Wed Apr 2 23:17:25 2008 @@ -1670,10 +1670,11 @@ The system will save old log files by appending extensions to the filename. The extensions are date-and-time based, using the strftime format - ``%Y-%m-%d_%H-%M-%S`` or a leading portion thereof, depending on the rollover - interval. If *backupCount* is nonzero, at most *backupCount* files will be - kept, and if more would be created when rollover occurs, the oldest one is - deleted. + ``%Y-%m-%d_%H-%M-%S`` or a leading portion thereof, depending on the + rollover interval. If *backupCount* is nonzero, at most *backupCount* files + will be kept, and if more would be created when rollover occurs, the oldest + one is deleted. The deletion logic uses the interval to determine which + files to delete, so changing the interval may leave old files lying around. .. method:: TimedRotatingFileHandler.doRollover() From python-checkins at python.org Wed Apr 2 23:18:47 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 2 Apr 2008 23:18:47 +0200 (CEST) Subject: [Python-checkins] r62113 - python/trunk/Lib/test/test_socket.py Message-ID: <20080402211847.41F161E400D@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 2 23:18:46 2008 New Revision: 62113 Modified: python/trunk/Lib/test/test_socket.py Log: Remove debug prints; the buildbot now passes the tests Modified: python/trunk/Lib/test/test_socket.py ============================================================================== --- python/trunk/Lib/test/test_socket.py (original) +++ python/trunk/Lib/test/test_socket.py Wed Apr 2 23:18:46 2008 @@ -15,14 +15,6 @@ from weakref import proxy import signal -# Temporary hack to see why test_socket hangs on one buildbot -if os.environ.get('COMPUTERNAME') == "GRAPE": - def verbose_write(arg): - print >>sys.__stdout__, arg -else: - def verbose_write(arg): - pass - PORT = 50007 HOST = 'localhost' MSG = 'Michael Gilfix was here\n' @@ -30,21 +22,15 @@ class SocketTCPTest(unittest.TestCase): def setUp(self): - verbose_write(self) self.serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - verbose_write(str(self) + " socket created") global PORT PORT = test_support.bind_port(self.serv, HOST, PORT) - verbose_write(str(self) + " start listening") self.serv.listen(1) - verbose_write(str(self) + " started") def tearDown(self): - verbose_write(str(self) + " close") self.serv.close() self.serv = None - verbose_write(str(self) + " done") class SocketUDPTest(unittest.TestCase): From python-checkins at python.org Wed Apr 2 23:20:41 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 2 Apr 2008 23:20:41 +0200 (CEST) Subject: [Python-checkins] r62114 - python/trunk/README Message-ID: <20080402212041.C00D91E401B@bag.python.org> Author: benjamin.peterson Date: Wed Apr 2 23:20:35 2008 New Revision: 62114 Modified: python/trunk/README Log: Suggested proposed changes to Python be considered on some mailing lists first Modified: python/trunk/README ============================================================================== --- python/trunk/README (original) +++ python/trunk/README Wed Apr 2 23:20:35 2008 @@ -135,9 +135,11 @@ Manager at http://bugs.python.org. Guidelines for patch submission may be found at http://www.python.org/dev/patches/. -If you have a proposal to change Python, it's best to submit a Python -Enhancement Proposal (PEP) first. All current PEPs, as well as guidelines for -submitting a new PEP, are listed at http://www.python.org/dev/peps/. +If you have a proposal to change Python, you may want to send an email to the +comp.lang.python or python-ideas mailing lists for inital feedback. A Python +Enhancement Proposal (PEP) may be submitted if your idea gains ground. All +current PEPs, as well as guidelines for submitting a new PEP, are listed at +http://www.python.org/dev/peps/. Questions From nnorwitz at gmail.com Thu Apr 3 00:13:14 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Wed, 2 Apr 2008 17:13:14 -0500 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080402221314.GA23489@python.psfb.org> More important issues: ---------------------- test_telnetlib leaked [90, 0, 0] references, sum=90 Less important issues: ---------------------- test_asynchat leaked [-100, 0, 0] references, sum=-100 test_cmd_line leaked [23, 0, 0] references, sum=23 test_smtplib leaked [-106, 0, 80] references, sum=-26 test_socketserver leaked [-78, 0, 0] references, sum=-78 test_threadsignals leaked [0, -8, 0] references, sum=-8 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From buildbot at python.org Thu Apr 3 00:22:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 22:22:53 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080402222253.3DA361E4004@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1103 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,vinay.sajip BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 00:23:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 22:23:01 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080402222301.469E41E4009@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/284 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,vinay.sajip BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 00:24:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 02 Apr 2008 22:24:30 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080402222430.9A42E1E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1223 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,vinay.sajip BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 01:47:54 2008 From: python-checkins at python.org (barry.warsaw) Date: Thu, 3 Apr 2008 01:47:54 +0200 (CEST) Subject: [Python-checkins] r62121 - python/tags/r30a4 Message-ID: <20080402234754.E64691E4004@bag.python.org> Author: barry.warsaw Date: Thu Apr 3 01:47:54 2008 New Revision: 62121 Added: python/tags/r30a4/ - copied from r62120, python/branches/py3k/ Log: Tagging 3.0a4. From buildbot at python.org Thu Apr 3 02:10:41 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 00:10:41 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080403001044.ADAF61E400B@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2804 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 04:11:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 02:11:17 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD trunk Message-ID: <20080403021117.BEB2E1E4004@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%20trunk/builds/838 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-freebsd Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 06:10:02 2008 From: python-checkins at python.org (barry.warsaw) Date: Thu, 3 Apr 2008 06:10:02 +0200 (CEST) Subject: [Python-checkins] r62123 - in python/trunk: Include/patchlevel.h Lib/distutils/__init__.py Lib/idlelib/idlever.py Misc/RPM/python-2.6.spec README Message-ID: <20080403041002.F2E6A1E4004@bag.python.org> Author: barry.warsaw Date: Thu Apr 3 06:10:02 2008 New Revision: 62123 Modified: python/trunk/Include/patchlevel.h python/trunk/Lib/distutils/__init__.py python/trunk/Lib/idlelib/idlever.py python/trunk/Misc/RPM/python-2.6.spec python/trunk/README Log: Updating for 2.6a2 Modified: python/trunk/Include/patchlevel.h ============================================================================== --- python/trunk/Include/patchlevel.h (original) +++ python/trunk/Include/patchlevel.h Thu Apr 3 06:10:02 2008 @@ -19,14 +19,16 @@ /* Higher for patch releases */ /* Version parsed out into numeric values */ +/*--start constants--*/ #define PY_MAJOR_VERSION 2 #define PY_MINOR_VERSION 6 #define PY_MICRO_VERSION 0 #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA -#define PY_RELEASE_SERIAL 1 +#define PY_RELEASE_SERIAL 2 /* Version as a string */ -#define PY_VERSION "2.6a1+" +#define PY_VERSION "2.6a2" +/*--end constants--*/ /* Subversion Revision number of this file (not of the repository) */ #define PY_PATCHLEVEL_REVISION "$Revision$" Modified: python/trunk/Lib/distutils/__init__.py ============================================================================== --- python/trunk/Lib/distutils/__init__.py (original) +++ python/trunk/Lib/distutils/__init__.py Thu Apr 3 06:10:02 2008 @@ -20,4 +20,7 @@ # In general, major and minor version should loosely follow the Python # version number the distutils code was shipped with. # -__version__ = "2.6.0" + +#--start constants-- +__version__ = "2.6a2" +#--end constants-- Modified: python/trunk/Lib/idlelib/idlever.py ============================================================================== --- python/trunk/Lib/idlelib/idlever.py (original) +++ python/trunk/Lib/idlelib/idlever.py Thu Apr 3 06:10:02 2008 @@ -1 +1 @@ -IDLE_VERSION = "2.6a1" +IDLE_VERSION = "2.6a2" Modified: python/trunk/Misc/RPM/python-2.6.spec ============================================================================== --- python/trunk/Misc/RPM/python-2.6.spec (original) +++ python/trunk/Misc/RPM/python-2.6.spec Thu Apr 3 06:10:02 2008 @@ -33,8 +33,10 @@ ################################# %define name python -%define version 2.6a1 -%define libvers 2.6 +#--start constants-- +%define version 2.6a2 +%define libver 2.6 +#--end constants-- %define release 1pydotorg %define __prefix /usr Modified: python/trunk/README ============================================================================== --- python/trunk/README (original) +++ python/trunk/README Thu Apr 3 06:10:02 2008 @@ -1,4 +1,4 @@ -This is Python version 2.6 alpha 1 +This is Python version 2.6 alpha 2 ================================== Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 From python-checkins at python.org Thu Apr 3 06:11:10 2008 From: python-checkins at python.org (barry.warsaw) Date: Thu, 3 Apr 2008 06:11:10 +0200 (CEST) Subject: [Python-checkins] r62124 - python/tags/r26a2 Message-ID: <20080403041110.7C8F41E4004@bag.python.org> Author: barry.warsaw Date: Thu Apr 3 06:11:10 2008 New Revision: 62124 Added: python/tags/r26a2/ - copied from r62123, python/trunk/ Log: Create the tag for 2.6a2 From python-checkins at python.org Thu Apr 3 06:14:20 2008 From: python-checkins at python.org (barry.warsaw) Date: Thu, 3 Apr 2008 06:14:20 +0200 (CEST) Subject: [Python-checkins] r62126 - python/trunk/Include/patchlevel.h Message-ID: <20080403041420.10AEF1E4004@bag.python.org> Author: barry.warsaw Date: Thu Apr 3 06:14:19 2008 New Revision: 62126 Modified: python/trunk/Include/patchlevel.h Log: Post tag version tweak Modified: python/trunk/Include/patchlevel.h ============================================================================== --- python/trunk/Include/patchlevel.h (original) +++ python/trunk/Include/patchlevel.h Thu Apr 3 06:14:19 2008 @@ -27,7 +27,7 @@ #define PY_RELEASE_SERIAL 2 /* Version as a string */ -#define PY_VERSION "2.6a2" +#define PY_VERSION "2.6a2+" /*--end constants--*/ /* Subversion Revision number of this file (not of the repository) */ From buildbot at python.org Thu Apr 3 06:41:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 04:41:25 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080403044125.56D461E401D@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/154 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 3 tests failed: test_smtplib test_urllib2net test_urllibnet ====================================================================== ERROR: test_ftp_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 227, in test_ftp_NoneNodefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 25, in _urlopen_with_retry raise last_exc File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 378, in open response = self._open(req, data) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 396, in _open '_open', req) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 356, in _call_chain result = func(*args) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1295, in ftp_open raise URLError('ftp error: %s' % msg).with_traceback(sys.exc_info()[2]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1277, in ftp_open fw = self.connect_ftp(user, passwd, host, port, dirs, req.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib2.py", line 1322, in connect_ftp self.cache[key] = ftpwrapper(user, passwd, host, port, dirs, timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 786, in __init__ self.init() File "S:\buildbots\python\3.0.nelson-windows\build\lib\urllib.py", line 792, in init self.ftp.connect(self.host, self.port, self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ftplib.py", line 131, in connect self.sock = socket.create_connection((self.host, self.port), self.timeout) File "S:\buildbots\python\3.0.nelson-windows\build\lib\socket.py", line 294, in create_connection raise error(msg) urllib2.URLError: sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 06:47:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 04:47:10 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080403044710.5E5891E4004@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/740 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_signal test_ssl make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 06:56:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 04:56:28 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080403045628.91CD81E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/749 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 07:10:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 05:10:28 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080403051028.9D0671E400D@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/686 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 07:55:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 05:55:38 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080403055538.504B81E4004@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/661 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 1 test failed: test_smtplib sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 17:39:17 2008 From: python-checkins at python.org (trent.nelson) Date: Thu, 3 Apr 2008 17:39:17 +0200 (CEST) Subject: [Python-checkins] r62127 - python/trunk/Tools/buildbot/buildmsi.bat Message-ID: <20080403153917.A81A31E4009@bag.python.org> Author: trent.nelson Date: Thu Apr 3 17:39:17 2008 New Revision: 62127 Modified: python/trunk/Tools/buildbot/buildmsi.bat Log: Remove the building of Berkeley DB step; _bsddb44.vcproj takes care of this for us now. Modified: python/trunk/Tools/buildbot/buildmsi.bat ============================================================================== --- python/trunk/Tools/buildbot/buildmsi.bat (original) +++ python/trunk/Tools/buildbot/buildmsi.bat Thu Apr 3 17:39:17 2008 @@ -3,9 +3,6 @@ cmd /c Tools\buildbot\external.bat @rem build release versions of things call "%VS90COMNTOOLS%vsvars32.bat" -if not exist ..\db-4.4.20\build_win32\release\libdb44s.lib ( - vcbuild db-4.4.20\build_win32\Berkeley_DB.sln /build Release /project db_static -) @rem build Python cmd /q/c Tools\buildbot\kill_python.bat From buildbot at python.org Thu Apr 3 19:21:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 17:21:15 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080403172115.808221E4009@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/743 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_getargs2 test_threading ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer ====================================================================== FAIL: test_no_refcycle_through_target (test.test_threading.ThreadTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_threading.py", line 288, in test_no_refcycle_through_target sys.getrefcount(weak_raising_cyclic_object()))) AssertionError: 5 references still around sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 19:44:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 17:44:46 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080403174446.35D571E4012@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/289 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 20:27:07 2008 From: python-checkins at python.org (trent.nelson) Date: Thu, 3 Apr 2008 20:27:07 +0200 (CEST) Subject: [Python-checkins] r62129 - in python/trunk: PCbuild/debug.vsprops PCbuild/kill_python.c PCbuild/kill_python.vcproj PCbuild/pcbuild.sln PCbuild/pythoncore.vcproj PCbuild/release.vsprops Tools/buildbot/Makefile Tools/buildbot/build-amd64.bat Tools/buildbot/build.bat Tools/buildbot/buildmsi.bat Tools/buildbot/kill_python.bat Tools/buildbot/kill_python.c Tools/buildbot/kill_python.mak Message-ID: <20080403182707.506A41E400D@bag.python.org> Author: trent.nelson Date: Thu Apr 3 20:27:06 2008 New Revision: 62129 Added: python/trunk/PCbuild/kill_python.c (contents, props changed) python/trunk/PCbuild/kill_python.vcproj Removed: python/trunk/Tools/buildbot/Makefile python/trunk/Tools/buildbot/kill_python.bat python/trunk/Tools/buildbot/kill_python.c python/trunk/Tools/buildbot/kill_python.mak Modified: python/trunk/PCbuild/debug.vsprops python/trunk/PCbuild/pcbuild.sln python/trunk/PCbuild/pythoncore.vcproj python/trunk/PCbuild/release.vsprops python/trunk/Tools/buildbot/build-amd64.bat python/trunk/Tools/buildbot/build.bat python/trunk/Tools/buildbot/buildmsi.bat Log: Reimplement kill_python. The existing version had a number of flaws, namely, it didn't work for x64 and it wasn't precise about which python_d.exe it was killing -- it just killed the first one it came across that happened to have 'pcbuild\python_d.exe' or 'build\python_d.exe' in it's path. The new version has been rewritten from the ground up and now lives in PCbuild, instead of Tools\buildbot, and it has also been incorporated into the Visual Studio solution (pcbuild.sln) as 'kill_python'. The solution has also been altered such that kill_python is called where necessary in the build process in order to prevent any linking errors due to open file locks. In lieu of this, all of the existing bits and pieces in Tools\buildbot that called out to kill_python at various points have also been removed as they are now obsolete. Tested on both Win32 and x64. Change set (included to improve usefulness of svnmerge log entry): M PCbuild\pythoncore.vcproj M PCbuild\pcbuild.sln M PCbuild\release.vsprops A PCbuild\kill_python.vcproj M PCbuild\debug.vsprops A PCbuild\kill_python.c D Tools\buildbot\kill_python.bat D Tools\buildbot\kill_python.mak M Tools\buildbot\build.bat D Tools\buildbot\Makefile M Tools\buildbot\build-amd64.bat M Tools\buildbot\buildmsi.bat D Tools\buildbot\kill_python.c Modified: python/trunk/PCbuild/debug.vsprops ============================================================================== --- python/trunk/PCbuild/debug.vsprops (original) +++ python/trunk/PCbuild/debug.vsprops Thu Apr 3 20:27:06 2008 @@ -8,4 +8,8 @@ Name="VCCLCompilerTool" PreprocessorDefinitions="_DEBUG" /> - \ No newline at end of file + + Added: python/trunk/PCbuild/kill_python.c ============================================================================== --- (empty file) +++ python/trunk/PCbuild/kill_python.c Thu Apr 3 20:27:06 2008 @@ -0,0 +1,174 @@ +/* + * Helper program for killing lingering python[_d].exe processes before + * building, thus attempting to avoid build failures due to files being + * locked. + */ + +#include +#include +#include +#include + +#pragma comment(lib, "psapi") + +#ifdef _DEBUG +#define PYTHON_EXE (L"python_d.exe") +#define PYTHON_EXE_LEN (12) +#define KILL_PYTHON_EXE (L"kill_python_d.exe") +#define KILL_PYTHON_EXE_LEN (17) +#else +#define PYTHON_EXE (L"python.exe") +#define PYTHON_EXE_LEN (10) +#define KILL_PYTHON_EXE (L"kill_python.exe") +#define KILL_PYTHON_EXE_LEN (15) +#endif + +int +main(int argc, char **argv) +{ + HANDLE hp, hsp, hsm; /* process, snapshot processes, snapshot modules */ + DWORD dac, our_pid; + size_t len; + wchar_t path[MAX_PATH+1]; + + MODULEENTRY32W me; + PROCESSENTRY32W pe; + + me.dwSize = sizeof(MODULEENTRY32W); + pe.dwSize = sizeof(PROCESSENTRY32W); + + memset(path, 0, MAX_PATH+1); + + our_pid = GetCurrentProcessId(); + + hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, our_pid); + if (hsm == INVALID_HANDLE_VALUE) { + printf("CreateToolhelp32Snapshot[1] failed: %d\n", GetLastError()); + return 1; + } + + if (!Module32FirstW(hsm, &me)) { + printf("Module32FirstW[1] failed: %d\n", GetLastError()); + CloseHandle(hsm); + return 1; + } + + /* + * Enumerate over the modules for the current process in order to find + * kill_process[_d].exe, then take a note of the directory it lives in. + */ + do { + if (_wcsnicmp(me.szModule, KILL_PYTHON_EXE, KILL_PYTHON_EXE_LEN)) + continue; + + len = wcsnlen_s(me.szExePath, MAX_PATH) - KILL_PYTHON_EXE_LEN; + wcsncpy_s(path, MAX_PATH+1, me.szExePath, len); + + break; + + } while (Module32NextW(hsm, &me)); + + CloseHandle(hsm); + + if (path == NULL) { + printf("failed to discern directory of running process\n"); + return 1; + } + + /* + * Take a snapshot of system processes. Enumerate over the snapshot, + * looking for python processes. When we find one, verify it lives + * in the same directory we live in. If it does, kill it. If we're + * unable to kill it, treat this as a fatal error and return 1. + * + * The rationale behind this is that we're called at the start of the + * build process on the basis that we'll take care of killing any + * running instances, such that the build won't encounter permission + * denied errors during linking. If we can't kill one of the processes, + * we can't provide this assurance, and the build shouldn't start. + */ + + hsp = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); + if (hsp == INVALID_HANDLE_VALUE) { + printf("CreateToolhelp32Snapshot[2] failed: %d\n", GetLastError()); + return 1; + } + + if (!Process32FirstW(hsp, &pe)) { + printf("Process32FirstW failed: %d\n", GetLastError()); + CloseHandle(hsp); + return 1; + } + + dac = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ | PROCESS_TERMINATE; + do { + + /* + * XXX TODO: if we really wanted to be fancy, we could check the + * modules for all processes (not just the python[_d].exe ones) + * and see if any of our DLLs are loaded (i.e. python30[_d].dll), + * as that would also inhibit our ability to rebuild the solution. + * Not worth loosing sleep over though; for now, a simple check + * for just the python executable should be sufficient. + */ + + if (_wcsnicmp(pe.szExeFile, PYTHON_EXE, PYTHON_EXE_LEN)) + /* This isn't a python process. */ + continue; + + /* It's a python process, so figure out which directory it's in... */ + hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th32ProcessID); + if (hsm == INVALID_HANDLE_VALUE) { + printf("CreateToolhelp32Snapshot[3] failed: %d\n", GetLastError()); + CloseHandle(hsp); + return 1; + } + + if (!Module32FirstW(hsm, &me)) { + printf("Module32FirstW[2] failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + return 1; + } + + do { + if (_wcsnicmp(me.szModule, PYTHON_EXE, PYTHON_EXE_LEN)) + /* Wrong module, we're looking for python[_d].exe... */ + continue; + + if (_wcsnicmp(path, me.szExePath, len)) + /* Process doesn't live in our directory. */ + break; + + /* Python process residing in the right directory, kill it! */ + hp = OpenProcess(dac, FALSE, pe.th32ProcessID); + if (!hp) { + printf("OpenProcess failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + return 1; + } + + if (!TerminateProcess(hp, 1)) { + printf("TerminateProcess failed: %d\n", GetLastError()); + CloseHandle(hsp); + CloseHandle(hsm); + CloseHandle(hp); + return 1; + } + + CloseHandle(hp); + break; + + } while (Module32NextW(hsm, &me)); + + CloseHandle(hsm); + + } while (Process32NextW(hsp, &pe)); + + CloseHandle(hsp); + + return 0; +} + +/* vi: set ts=8 sw=4 sts=4 expandtab */ Added: python/trunk/PCbuild/kill_python.vcproj ============================================================================== --- (empty file) +++ python/trunk/PCbuild/kill_python.vcproj Thu Apr 3 20:27:06 2008 @@ -0,0 +1,285 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Modified: python/trunk/PCbuild/pcbuild.sln ============================================================================== --- python/trunk/PCbuild/pcbuild.sln (original) +++ python/trunk/PCbuild/pcbuild.sln Thu Apr 3 20:27:06 2008 @@ -11,6 +11,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pythoncore", "pythoncore.vcproj", "{CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26}" ProjectSection(ProjectDependencies) = postProject {F0E0541E-F17D-430B-97C4-93ADF0DD284E} = {F0E0541E-F17D-430B-97C4-93ADF0DD284E} + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} {C73F0EC1-358B-4177-940F-0846AC8B04CD} = {C73F0EC1-358B-4177-940F-0846AC8B04CD} EndProjectSection EndProject @@ -20,6 +21,9 @@ EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "w9xpopen", "w9xpopen.vcproj", "{E9E0A1F6-0009-4E8C-B8F8-1B8F5D49A058}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_buildinfo", "make_buildinfo.vcproj", "{C73F0EC1-358B-4177-940F-0846AC8B04CD}" EndProject @@ -36,6 +40,7 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bsddb", "_bsddb.vcproj", "{B4D38F3F-68FB-42EC-A45D-E00657BB3627}" ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} {62172C7D-B39E-409A-B352-370FF5098C19} = {62172C7D-B39E-409A-B352-370FF5098C19} {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} = {CF7AC3D1-E2DF-41D2-BEA6-1E2556CDEA26} EndProjectSection @@ -117,8 +122,16 @@ EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_bsddb44", "_bsddb44.vcproj", "{62172C7D-B39E-409A-B352-370FF5098C19}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqlite3", "sqlite3.vcproj", "{A1A295E5-463C-437F-81CA-1F32367685DA}" + ProjectSection(ProjectDependencies) = postProject + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} = {6DE10744-E396-40A5-B4E2-1B69AA7C8D31} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kill_python", "kill_python.vcproj", "{6DE10744-E396-40A5-B4E2-1B69AA7C8D31}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -524,6 +537,22 @@ {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|Win32.Build.0 = Release|Win32 {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|x64.ActiveCfg = Release|x64 {A1A295E5-463C-437F-81CA-1F32367685DA}.Release|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.ActiveCfg = Debug|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|Win32.Build.0 = Debug|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.ActiveCfg = Debug|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Debug|x64.Build.0 = Debug|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGInstrument|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.PGUpdate|x64.Build.0 = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.ActiveCfg = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|Win32.Build.0 = Release|Win32 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.ActiveCfg = Release|x64 + {6DE10744-E396-40A5-B4E2-1B69AA7C8D31}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE Modified: python/trunk/PCbuild/pythoncore.vcproj ============================================================================== --- python/trunk/PCbuild/pythoncore.vcproj (original) +++ python/trunk/PCbuild/pythoncore.vcproj Thu Apr 3 20:27:06 2008 @@ -58,8 +58,8 @@ /> + Deleted: /python/trunk/Tools/buildbot/Makefile ============================================================================== --- /python/trunk/Tools/buildbot/Makefile Thu Apr 3 20:27:06 2008 +++ (empty file) @@ -1,6 +0,0 @@ -all: kill_python.exe - ./kill_python.exe - -kill_python.exe: kill_python.c - gcc -o kill_python.exe kill_python.c -lpsapi - Modified: python/trunk/Tools/buildbot/build-amd64.bat ============================================================================== --- python/trunk/Tools/buildbot/build-amd64.bat (original) +++ python/trunk/Tools/buildbot/build-amd64.bat Thu Apr 3 20:27:06 2008 @@ -1,6 +1,5 @@ @rem Used by the buildbot "compile" step. cmd /c Tools\buildbot\external-amd64.bat call "%VS90COMNTOOLS%\..\..\VC\vcvarsall.bat" x86_amd64 -REM cmd /q/c Tools\buildbot\kill_python.bat cmd /c Tools\buildbot\clean-amd64.bat vcbuild PCbuild\pcbuild.sln "Debug|x64" Modified: python/trunk/Tools/buildbot/build.bat ============================================================================== --- python/trunk/Tools/buildbot/build.bat (original) +++ python/trunk/Tools/buildbot/build.bat Thu Apr 3 20:27:06 2008 @@ -1,7 +1,6 @@ @rem Used by the buildbot "compile" step. cmd /c Tools\buildbot\external.bat call "%VS90COMNTOOLS%vsvars32.bat" -cmd /q/c Tools\buildbot\kill_python.bat cmd /c Tools\buildbot\clean.bat vcbuild /useenv PCbuild\pcbuild.sln "Debug|Win32" Modified: python/trunk/Tools/buildbot/buildmsi.bat ============================================================================== --- python/trunk/Tools/buildbot/buildmsi.bat (original) +++ python/trunk/Tools/buildbot/buildmsi.bat Thu Apr 3 20:27:06 2008 @@ -5,7 +5,6 @@ call "%VS90COMNTOOLS%vsvars32.bat" @rem build Python -cmd /q/c Tools\buildbot\kill_python.bat vcbuild /useenv PCbuild\pcbuild.sln "Release|Win32" @rem build the documentation Deleted: /python/trunk/Tools/buildbot/kill_python.bat ============================================================================== --- /python/trunk/Tools/buildbot/kill_python.bat Thu Apr 3 20:27:06 2008 +++ (empty file) @@ -1,3 +0,0 @@ -cd Tools\buildbot -nmake /C /S /f kill_python.mak -kill_python.exe Deleted: /python/trunk/Tools/buildbot/kill_python.c ============================================================================== --- /python/trunk/Tools/buildbot/kill_python.c Thu Apr 3 20:27:06 2008 +++ (empty file) @@ -1,68 +0,0 @@ -/* This program looks for processes which have build\PCbuild\python.exe - in their path and terminates them. */ -#include -#include -#include - -int main() -{ - DWORD pids[1024], cbNeeded; - int i, num_processes; - if (!EnumProcesses(pids, sizeof(pids), &cbNeeded)) { - printf("EnumProcesses failed\n"); - return 1; - } - num_processes = cbNeeded/sizeof(pids[0]); - for (i = 0; i < num_processes; i++) { - HANDLE hProcess; - char path[MAX_PATH]; - HMODULE mods[1024]; - int k, num_mods; - hProcess = OpenProcess(PROCESS_QUERY_INFORMATION - | PROCESS_VM_READ - | PROCESS_TERMINATE , - FALSE, pids[i]); - if (!hProcess) - /* process not accessible */ - continue; - if (!EnumProcessModules(hProcess, mods, sizeof(mods), &cbNeeded)) { - /* For unknown reasons, this sometimes returns ERROR_PARTIAL_COPY; - this apparently means we are not supposed to read the process. */ - if (GetLastError() == ERROR_PARTIAL_COPY) { - CloseHandle(hProcess); - continue; - } - printf("EnumProcessModules failed: %d\n", GetLastError()); - return 1; - } - if (!GetModuleFileNameEx(hProcess, NULL, path, sizeof(path))) { - printf("GetProcessImageFileName failed\n"); - return 1; - } - - _strlwr(path); - /* printf("%s\n", path); */ - - /* Check if we are running a buildbot version of Python. - - On Windows, this will always be a debug build from the - PCbuild directory. build\\PCbuild\\python_d.exe - - On Cygwin, the pathname is similar to other Unixes. - Use \\build\\python.exe to ensure we don't match - PCbuild\\python.exe which could be a normal instance - of Python running on vanilla Windows. - */ - if ((strstr(path, "pcbuild\\python_d.exe") != NULL) || - (strstr(path, "\\build\\python.exe") != NULL)) { - printf("Terminating %s (pid %d)\n", path, pids[i]); - if (!TerminateProcess(hProcess, 1)) { - printf("Termination failed: %d\n", GetLastError()); - return 1; - } - return 0; - } - - CloseHandle(hProcess); - } -} Deleted: /python/trunk/Tools/buildbot/kill_python.mak ============================================================================== --- /python/trunk/Tools/buildbot/kill_python.mak Thu Apr 3 20:27:06 2008 +++ (empty file) @@ -1,2 +0,0 @@ -kill_python.exe: kill_python.c - cl -nologo -o kill_python.exe kill_python.c psapi.lib From buildbot at python.org Thu Apr 3 20:35:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 18:35:18 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080403183518.713091E4010@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/241 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 20:35:20 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 18:35:20 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080403183520.94D5C1E4027@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/287 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 20:41:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 18:41:14 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080403184114.7D6B01E400D@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1226 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 20:48:53 2008 From: python-checkins at python.org (trent.nelson) Date: Thu, 3 Apr 2008 20:48:53 +0200 (CEST) Subject: [Python-checkins] r62131 - python/trunk/PCbuild/kill_python.vcproj Message-ID: <20080403184853.4A69F1E400D@bag.python.org> Author: trent.nelson Date: Thu Apr 3 20:48:53 2008 New Revision: 62131 Modified: python/trunk/PCbuild/kill_python.vcproj Log: Add the correct OutputFile values for debug builds. Fixes r62129's commit. Modified: python/trunk/PCbuild/kill_python.vcproj ============================================================================== --- python/trunk/PCbuild/kill_python.vcproj (original) +++ python/trunk/PCbuild/kill_python.vcproj Thu Apr 3 20:48:53 2008 @@ -54,6 +54,7 @@ /> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/925 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 21:16:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 19:16:53 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080403191653.AE6811E400D@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%203.0/builds/235 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 21:17:37 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 19:17:37 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu trunk Message-ID: <20080403191737.A61011E400D@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%20trunk/builds/443 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 21:32:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 19:32:34 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080403193235.3A8701E4023@bag.python.org> The Buildbot has detected a new failure of sparc Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%203.0/builds/163 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 21:55:07 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 19:55:07 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 3.0 Message-ID: <20080403195508.20EE21E4003@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%203.0/builds/793 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Thu Apr 3 22:00:08 2008 From: python-checkins at python.org (trent.nelson) Date: Thu, 3 Apr 2008 22:00:08 +0200 (CEST) Subject: [Python-checkins] r62133 - python/trunk/PCbuild/kill_python.c Message-ID: <20080403200009.03A3B1E4027@bag.python.org> Author: trent.nelson Date: Thu Apr 3 22:00:08 2008 New Revision: 62133 Modified: python/trunk/PCbuild/kill_python.c Log: Make kill_python a little more forgiving if it can't obtain a snapshot of module information for a given python[_d].exe process. Failing here was too pessimistic; the python[_d].exe process may be owned by another user, which is the case in some buildbot environments. Modified: python/trunk/PCbuild/kill_python.c ============================================================================== --- python/trunk/PCbuild/kill_python.c (original) +++ python/trunk/PCbuild/kill_python.c Thu Apr 3 22:00:08 2008 @@ -118,11 +118,15 @@ /* It's a python process, so figure out which directory it's in... */ hsm = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th32ProcessID); - if (hsm == INVALID_HANDLE_VALUE) { - printf("CreateToolhelp32Snapshot[3] failed: %d\n", GetLastError()); - CloseHandle(hsp); - return 1; - } + if (hsm == INVALID_HANDLE_VALUE) + /* + * If our module snapshot fails (which will happen if we don't own + * the process), just ignore it and continue. (It seems different + * versions of Windows return different values for GetLastError() + * in this situation; it's easier to just ignore it and move on vs. + * stopping the build for what could be a false positive.) + */ + continue; if (!Module32FirstW(hsm, &me)) { printf("Module32FirstW[2] failed: %d\n", GetLastError()); From buildbot at python.org Thu Apr 3 22:13:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 20:13:38 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080403201339.2589B1E4003@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/688 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 23:02:19 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 21:02:19 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080403210219.BF2D21E4003@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2808 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 23:03:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 21:03:35 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080403210335.315BC1E4003@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3144 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Apr 3 23:22:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 21:22:12 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080403212212.91C951E4014@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/141 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_getargs2 ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 00:36:00 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 22:36:00 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080403223601.217561E402B@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/746 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 132, in poll read(obj) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "C:\buildbot\3.0.heller-windows-amd64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 2 tests failed: test_getargs2 test_smtplib ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 01:07:55 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Fri, 4 Apr 2008 01:07:55 +0200 (CEST) Subject: [Python-checkins] r62136 - in python/trunk: Lib/test/test_threading.py Lib/threading.py Misc/NEWS Message-ID: <20080403230755.B4AE51E4003@bag.python.org> Author: amaury.forgeotdarc Date: Fri Apr 4 01:07:55 2008 New Revision: 62136 Modified: python/trunk/Lib/test/test_threading.py python/trunk/Lib/threading.py python/trunk/Misc/NEWS Log: #1733757: the interpreter would hang on shutdown, if the function set by sys.settrace calls threading.currentThread. The correction somewhat improves the code, but it was close. Many thanks to the "with" construct, which turns python code into C calls. I wonder if it is not better to sys.settrace(None) just after running the __main__ module and before finalization. Modified: python/trunk/Lib/test/test_threading.py ============================================================================== --- python/trunk/Lib/test/test_threading.py (original) +++ python/trunk/Lib/test/test_threading.py Fri Apr 4 01:07:55 2008 @@ -238,6 +238,35 @@ """]) self.assertEqual(rc, 42) + def test_finalize_with_trace(self): + # Issue1733757 + # Avoid a deadlock when sys.settrace steps into threading._shutdown + import subprocess + rc = subprocess.call([sys.executable, "-c", """if 1: + import sys, threading + + # A deadlock-killer, to prevent the + # testsuite to hang forever + def killer(): + import os, time + time.sleep(2) + print 'program blocked; aborting' + os._exit(2) + t = threading.Thread(target=killer) + t.setDaemon(True) + t.start() + + # This is the trace function + def func(frame, event, arg): + threading.currentThread() + return func + + sys.settrace(func) + """]) + self.failIf(rc == 2, "interpreted was blocked") + self.failUnless(rc == 0, "Unexpected error") + + def test_enumerate_after_join(self): # Try hard to trigger #1703448: a thread is still returned in # threading.enumerate() after it has been join()ed. Modified: python/trunk/Lib/threading.py ============================================================================== --- python/trunk/Lib/threading.py (original) +++ python/trunk/Lib/threading.py Fri Apr 4 01:07:55 2008 @@ -583,15 +583,16 @@ # since it isn't if dummy_threading is *not* being used then don't # hide the exception. - _active_limbo_lock.acquire() try: - try: + with _active_limbo_lock: del _active[_get_ident()] - except KeyError: - if 'dummy_threading' not in _sys.modules: - raise - finally: - _active_limbo_lock.release() + # There must not be any python code between the previous line + # and after the lock is released. Otherwise a tracing function + # could try to acquire the lock again in the same thread, (in + # currentThread()), and would block. + except KeyError: + if 'dummy_threading' not in _sys.modules: + raise def join(self, timeout=None): if not self.__initialized: Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 4 01:07:55 2008 @@ -12,6 +12,10 @@ Core and builtins ----------------- +- Issue #1733757: The interpreter would hang on shutdown if the tracing + function set by sys.settrace is still active and happens to call + threading.currentThread(). + - Patch #1442: properly report exceptions when the PYTHONSTARTUP file cannot be executed. From buildbot at python.org Fri Apr 4 01:38:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 03 Apr 2008 23:38:18 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080403233818.46CBE1E4014@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/316 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 02:33:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 00:33:43 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080404003344.18F951E4003@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/187 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 03:19:33 2008 From: python-checkins at python.org (barry.warsaw) Date: Fri, 4 Apr 2008 03:19:33 +0200 (CEST) Subject: [Python-checkins] r62137 - peps/trunk/pep-0101.txt peps/trunk/pep-0361.txt Message-ID: <20080404011933.094711E4003@bag.python.org> Author: barry.warsaw Date: Fri Apr 4 03:19:32 2008 New Revision: 62137 Modified: peps/trunk/pep-0101.txt peps/trunk/pep-0361.txt Log: Update for 2.6a2 and 3.0a4 releases. Modified: peps/trunk/pep-0101.txt ============================================================================== --- peps/trunk/pep-0101.txt (original) +++ peps/trunk/pep-0101.txt Fri Apr 4 03:19:32 2008 @@ -54,14 +54,12 @@ streamlined procedures used to release Python 2.6 (including the alphas and betas). - We recommend that you use the welease tool, from + We recommend that you use the release tool, from - http://svn.python.org/projects/sandbox/trunk/welease/ + http://svn.python.org/projects/sandbox/trunk/release/ - It helps verifying that certain (not yet all) mechanic editing - has not been forgotten, and invokes svn and tar commands - automatically. This guide will indicate which steps are supported - by welease. + This helps by performing several automatic editing steps, and guides you + to perform some manual editing steps. ___ Impose a check-in freeze. Send a message to python-dev at python.org telling people not to make any check-ins Modified: peps/trunk/pep-0361.txt ============================================================================== --- peps/trunk/pep-0361.txt (original) +++ peps/trunk/pep-0361.txt Fri Apr 4 03:19:32 2008 @@ -52,7 +52,7 @@ unfolds. The minimal schedule is: Feb 29 2008: Python 2.6a1 and 3.0a3 are released - Apr 02 2008: Python 2.6a2 and 3.0a4 planned + Apr 02 2008: Python 2.6a2 and 3.0a4 are released May 07 2008: Python 2.6a3 and 3.0a5 planned Jun 04 2008: Python 2.6b1 and 3.0b1 planned Jul 02 2008: Python 2.6b2 and 3.0b2 planned From python-checkins at python.org Fri Apr 4 03:34:41 2008 From: python-checkins at python.org (barry.warsaw) Date: Fri, 4 Apr 2008 03:34:41 +0200 (CEST) Subject: [Python-checkins] r62138 - python/trunk/Misc/NEWS Message-ID: <20080404013441.5423E1E4003@bag.python.org> Author: barry.warsaw Date: Fri Apr 4 03:34:41 2008 New Revision: 62138 Modified: python/trunk/Misc/NEWS Log: post release updates Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 4 03:34:41 2008 @@ -4,7 +4,7 @@ (editors: check NEWS.help for information about editing NEWS using ReST.) -What's New in Python 2.6 alpha 2? +What's New in Python 2.6 alpha 3? ================================= *Release date: XX-XXX-2008* @@ -12,6 +12,30 @@ Core and builtins ----------------- +Extensions Modules +------------------ + +Library +------- + +Tests +----- + +Build +----- + +C API +----- + + +What's New in Python 2.6 alpha 2? +================================= + +*Release date: 02-Apr-2008* + +Core and builtins +----------------- + - Issue #1733757: The interpreter would hang on shutdown if the tracing function set by sys.settrace is still active and happens to call threading.currentThread(). From python-checkins at python.org Fri Apr 4 06:51:20 2008 From: python-checkins at python.org (jeffrey.yasskin) Date: Fri, 4 Apr 2008 06:51:20 +0200 (CEST) Subject: [Python-checkins] r62141 - python/trunk/Lib/test/test_signal.py Message-ID: <20080404045120.36EA61E4003@bag.python.org> Author: jeffrey.yasskin Date: Fri Apr 4 06:51:19 2008 New Revision: 62141 Modified: python/trunk/Lib/test/test_signal.py Log: Doh! os.read() raises an OSError, not an IOError when it's interrupted. And fix some flakiness in test_itimer_prof, which could detect that the timer had reached 0 before the signal arrived announcing that fact. Modified: python/trunk/Lib/test/test_signal.py ============================================================================== --- python/trunk/Lib/test/test_signal.py (original) +++ python/trunk/Lib/test/test_signal.py Fri Apr 4 06:51:19 2008 @@ -31,7 +31,7 @@ def ignoring_eintr(__func, *args, **kwargs): try: return __func(*args, **kwargs) - except IOError as e: + except EnvironmentError as e: if e.errno != signal.EINTR: raise return None @@ -363,12 +363,15 @@ def test_itimer_prof(self): self.itimer = signal.ITIMER_PROF signal.signal(signal.SIGPROF, self.sig_prof) - signal.setitimer(self.itimer, 0.2) + signal.setitimer(self.itimer, 0.2, 0.2) for i in xrange(100000000): if signal.getitimer(self.itimer) == (0.0, 0.0): break # sig_prof handler stopped this itimer + # profiling itimer should be (0.0, 0.0) now + self.assertEquals(signal.getitimer(self.itimer), (0.0, 0.0)) + # and the handler should have been called self.assertEqual(self.hndl_called, True) def test_main(): From gki at pldtdsl.net Fri Apr 4 20:55:08 2008 From: gki at pldtdsl.net (Global Knowledge PH) Date: Fri, 4 Apr 2008 10:55:08 -0800 Subject: [Python-checkins] Boracay Seminar Part II on April 25-26_08 Message-ID: <2da0201c89685$673c21f0$2f01a8c0@dimafeli67d11d> BORACAY Seminar Part II April 25-26, 2008 Venue: La Carmela Hotel, Boracay, Station II Reg. Fee: P5,995+ VAT Fee includes: 2D&1N Hotel Accommodation (Sharing), am/pm snacks, lunch, Training materials and GK certificates Certified Security Analyst (ECSA) /EC-Council's Licensed Penetration Tester ECSA is a security class like no other! Providing real world hands-on experience, it is the only in-depth Advanced Hacking and Penetration Testing class available that covers testing in all modern infrastructures, operating systems and application environments. EC-Council's Licensed Penetration Tester (LPT) is a natural evolution and extended value addition to its series of security related professional certifications. LPT standardizes the knowledge base for penetration testing professionals by incorporating the best practices followed by experienced experts in the field. Advanced Malware Analysis The malware author's evil job is to develop software that can collect and return data, run undetected, frustrate reverse-engineering efforts just enough to make it not worth the analyst's effort, and make detection almost impossible. This course builds on the material presented in Malware Analysis I and focuses on using system monitoring tools to conduct behavioral analysis of malware and using disassemblers and debuggers to perform detailed analysis of complicated malicious programs. You will run and analyze both synthesized and real-world malware samples, dissect malicious programs at the lowest level, bypass anti-forensics techniques meant to thwart analysis, and develop a detailed understanding of how malicious programs work. VoIP Hacking Hackers are also beginning to target VoIP systems and their users. Since VoIP is essentially an internet - based data service, it's as vulnerable to hacker attacks as anything else that moves information across the web. Bluejacking Although known to the technical community and early adopters for some time, the process now known as "Bluejacking"[1] has recently come to the fore in the consumer arena, and is becoming a popular mechanism for exchanging anonymous messages in public places. The technique involves abusing the bluetooth "pairing"[2] protocol, the system by which bluetooth devices authenticate each other, to pass a message during the initial "handshake" phase. This is possible because the "name" of the initiating bluetooth device is displayed on the target device as part of the handshake exchange, and, as the protocal allows a large user defined name field - up to 248 characters - the field itself can be used to pass the message. This is all well and good, and, on the face of it, fairly harmless, but, unfortunately, there is a down side. There is a potential security problem with this, and the more the practice grows and is accepted by the user community, and leveraged as a marketing tool by the vendors, the worse it will get. The problem lies in the fact that the protocol being abused is designed for information exchange. The ability to interface with other devices and exchange, update and synchronise data, is the raison d'?tre of bluetooth. The bluejacking technique is using the first part of a process that allows that exchange to take place, and is therefore open to further abuse if the handshake completes and the "bluejacker" successfully pairs with the target device. If such an event occurs, then all data on the target device bacomes available to the initiator, including such things as phone books, calendars, pictures and text messages. As the current wave of PDA and telephony integration progresses, the volume and quality of such data will increase with the devices' capabilities, leading to far more serious potential compromise. REGISTER NOW! Limited slots only GLOBALKNOWLEDGE PHILIPPINES, INC. 2502B West Tower, PSE Bldg. Exchange Road, Ortigas Center, Pasig City, Philippines 1600 Tel. Nos. (632) 683-0969; 637-3657; 0920-709-8298 Email: sandra at globalknowledgeph.com YM: sandra_medalla at yahoo.com _____ If you want to unsubscribe from this mailing list. Please Click it -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-checkins/attachments/20080404/48ee21df/attachment-0001.htm From python-checkins at python.org Fri Apr 4 07:41:30 2008 From: python-checkins at python.org (fred.drake) Date: Fri, 4 Apr 2008 07:41:30 +0200 (CEST) Subject: [Python-checkins] r62142 - in python/trunk: Lib/distutils/core.py Lib/distutils/tests/test_core.py Misc/NEWS Message-ID: <20080404054130.DB9DE1E4005@bag.python.org> Author: fred.drake Date: Fri Apr 4 07:41:30 2008 New Revision: 62142 Added: python/trunk/Lib/distutils/tests/test_core.py (contents, props changed) Modified: python/trunk/Lib/distutils/core.py python/trunk/Misc/NEWS Log: - Issue #2385: distutils.core.run_script() makes __file__ available, so the controlled environment will more closely mirror the typical script environment. This supports setup.py scripts that refer to data files. Modified: python/trunk/Lib/distutils/core.py ============================================================================== --- python/trunk/Lib/distutils/core.py (original) +++ python/trunk/Lib/distutils/core.py Fri Apr 4 07:41:30 2008 @@ -210,8 +210,9 @@ _setup_stop_after = stop_after save_argv = sys.argv - g = {} + g = {'__file__': script_name} l = {} + os.chdir(os.path.dirname(script_name) or os.curdir) try: try: sys.argv[0] = script_name Added: python/trunk/Lib/distutils/tests/test_core.py ============================================================================== --- (empty file) +++ python/trunk/Lib/distutils/tests/test_core.py Fri Apr 4 07:41:30 2008 @@ -0,0 +1,40 @@ +"""Tests for distutils.core.""" + +import StringIO +import distutils.core +import os +import test.test_support +import unittest + + +# setup script that uses __file__ +setup_using___file__ = """\ + +__file__ + +from distutils.core import setup +setup() +""" + + +class CoreTestCase(unittest.TestCase): + + def tearDown(self): + os.remove(test.test_support.TESTFN) + + def write_setup(self, text): + return fn + + def test_run_setup_provides_file(self): + # Make sure the script can use __file__; if that's missing, the test + # setup.py script will raise NameError. + fn = test.test_support.TESTFN + open(fn, "w").write(setup_using___file__) + distutils.core.run_setup(fn) + + +def test_suite(): + return unittest.makeSuite(CoreTestCase) + +if __name__ == "__main__": + unittest.main(defaultTest="test_suite") Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 4 07:41:30 2008 @@ -18,6 +18,10 @@ Library ------- +- Issue #2385: distutils.core.run_script() makes __file__ available, so the + controlled environment will more closely mirror the typical script + environment. This supports setup.py scripts that refer to data files. + Tests ----- From buildbot at python.org Fri Apr 4 08:04:32 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 06:04:32 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080404060432.CC92A1E4005@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2811 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: barry.warsaw,jeffrey.yasskin BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From lists at cheimes.de Fri Apr 4 10:25:19 2008 From: lists at cheimes.de (Christian Heimes) Date: Fri, 04 Apr 2008 10:25:19 +0200 Subject: [Python-checkins] r62129 - in python/trunk: PCbuild/debug.vsprops PCbuild/kill_python.c PCbuild/kill_python.vcproj PCbuild/pcbuild.sln PCbuild/pythoncore.vcproj PCbuild/release.vsprops Tools/buildbot/Makefile Tools/buildbot/build-amd64.bat Tools/buildbot/build.bat Tools/buildbot/buildmsi.bat Tools/buildbot/kill_python.bat Tools/buildbot/kill_python.c Tools/buildbot/kill_python.mak In-Reply-To: <20080403182707.506A41E400D@bag.python.org> References: <20080403182707.506A41E400D@bag.python.org> Message-ID: <47F5E5EF.5010005@cheimes.de> trent.nelson schrieb: > Author: trent.nelson > Date: Thu Apr 3 20:27:06 2008 > New Revision: 62129 > > Added: > python/trunk/PCbuild/kill_python.c (contents, props changed) > python/trunk/PCbuild/kill_python.vcproj > Removed: > python/trunk/Tools/buildbot/Makefile > python/trunk/Tools/buildbot/kill_python.bat > python/trunk/Tools/buildbot/kill_python.c > python/trunk/Tools/buildbot/kill_python.mak > Modified: > python/trunk/PCbuild/debug.vsprops > python/trunk/PCbuild/pcbuild.sln > python/trunk/PCbuild/pythoncore.vcproj > python/trunk/PCbuild/release.vsprops > python/trunk/Tools/buildbot/build-amd64.bat > python/trunk/Tools/buildbot/build.bat > python/trunk/Tools/buildbot/buildmsi.bat > Log: > Reimplement kill_python. The existing version had a number of flaws, namely, it didn't work for x64 and it wasn't precise about which python_d.exe it was killing -- it just killed the first one it came across that happened to have 'pcbuild\python_d.exe' or 'build\python_d.exe' in it's path. The new version has been rewritten from the ground up and now lives in PCbuild, instead of Tools\buildbot, and it has also been incorporated into the Visual Studio solution (pcbuild.sln) as 'kill_python'. The solution has also been altered such that kill_python is called where necessary in the build process in order to prevent any linking errors due to open file locks. In lieu of this, all of the existing bits and pieces in Tools\buildbot that called out to kill_python at various points have also be > en removed as they are now obsolete. Tested on both Win32 and x64. I don't like the part where the solution kills the Python process during a rebuild. It's too surprising for the user. Christian From python-checkins at python.org Fri Apr 4 10:35:44 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 4 Apr 2008 10:35:44 +0200 (CEST) Subject: [Python-checkins] r62143 - in python/trunk: Lib/ctypes/test/test_prototypes.py Modules/_ctypes/_ctypes.c Modules/_ctypes/ctypes.h Message-ID: <20080404083544.77EC31E4021@bag.python.org> Author: thomas.heller Date: Fri Apr 4 10:35:44 2008 New Revision: 62143 Modified: python/trunk/Lib/ctypes/test/test_prototypes.py python/trunk/Modules/_ctypes/_ctypes.c python/trunk/Modules/_ctypes/ctypes.h Log: Issue #2543: Make ctypes compatible (again) with Python 2.3, 2.4, and 2.5. Modified: python/trunk/Lib/ctypes/test/test_prototypes.py ============================================================================== --- python/trunk/Lib/ctypes/test/test_prototypes.py (original) +++ python/trunk/Lib/ctypes/test/test_prototypes.py Fri Apr 4 10:35:44 2008 @@ -57,7 +57,7 @@ try: func() - except TypeError as details: + except TypeError, details: self.failUnlessEqual(str(details), "required argument 'input' missing") else: self.fail("TypeError not raised") Modified: python/trunk/Modules/_ctypes/_ctypes.c ============================================================================== --- python/trunk/Modules/_ctypes/_ctypes.c (original) +++ python/trunk/Modules/_ctypes/_ctypes.c Fri Apr 4 10:35:44 2008 @@ -139,6 +139,34 @@ /****************************************************************/ +#if (PY_VERSION_HEX < 0x02040000) +/* Only in Python 2.4 and up */ +static PyObject * +PyTuple_Pack(int n, ...) +{ + int i; + PyObject *o; + PyObject *result; + PyObject **items; + va_list vargs; + + va_start(vargs, n); + result = PyTuple_New(n); + if (result == NULL) + return NULL; + items = ((PyTupleObject *)result)->ob_item; + for (i = 0; i < n; i++) { + o = va_arg(vargs, PyObject *); + Py_INCREF(o); + items[i] = o; + } + va_end(vargs); + return result; +} +#endif + +/****************************************************************/ + typedef struct { PyObject_HEAD PyObject *key; @@ -4432,32 +4460,6 @@ (inquiry)Simple_nonzero, /* nb_nonzero */ }; -#if (PY_VERSION_HEX < 0x02040000) -/* Only in Python 2.4 and up */ -static PyObject * -PyTuple_Pack(int n, ...) -{ - int i; - PyObject *o; - PyObject *result; - PyObject **items; - va_list vargs; - - va_start(vargs, n); - result = PyTuple_New(n); - if (result == NULL) - return NULL; - items = ((PyTupleObject *)result)->ob_item; - for (i = 0; i < n; i++) { - o = va_arg(vargs, PyObject *); - Py_INCREF(o); - items[i] = o; - } - va_end(vargs); - return result; -} -#endif - /* "%s(%s)" % (self.__class__.__name__, self.value) */ static PyObject * Simple_repr(CDataObject *self) Modified: python/trunk/Modules/_ctypes/ctypes.h ============================================================================== --- python/trunk/Modules/_ctypes/ctypes.h (original) +++ python/trunk/Modules/_ctypes/ctypes.h Fri Apr 4 10:35:44 2008 @@ -9,8 +9,18 @@ #if (PY_VERSION_HEX < 0x02050000) typedef int Py_ssize_t; #define PyInt_FromSsize_t PyInt_FromLong +#define PyNumber_AsSsize_t(ob, exc) PyInt_AsLong(ob) #endif +#if (PY_VERSION_HEX < 0x02060000) +#define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) +#define PyVarObject_HEAD_INIT(type, size) \ + PyObject_HEAD_INIT(type) size, +#define PyImport_ImportModuleNoBlock PyImport_ImportModule +#define PyIndex_Check(ob) PyInt_Check(ob) +#endif + + #ifndef MS_WIN32 #define max(a, b) ((a) > (b) ? (a) : (b)) #define min(a, b) ((a) < (b) ? (a) : (b)) From buildbot at python.org Fri Apr 4 11:35:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 09:35:10 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080404093510.C8DA81E401B@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1232 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_pep277 sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 12:08:07 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 4 Apr 2008 12:08:07 +0200 (CEST) Subject: [Python-checkins] r62145 - in python/trunk: Misc/NEWS configure configure.in Message-ID: <20080404100807.53E5C1E400F@bag.python.org> Author: thomas.heller Date: Fri Apr 4 12:07:55 2008 New Revision: 62145 Modified: python/trunk/Misc/NEWS python/trunk/configure python/trunk/configure.in Log: Issue #2544: On HP-UX systems, use 'gcc -shared' for linking when gcc is used as compiler. Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 4 12:07:55 2008 @@ -28,6 +28,9 @@ Build ----- +- Issue #2544: On HP-UX systems, use 'gcc -shared' for linking when + gcc is used as compiler. + C API ----- Modified: python/trunk/configure ============================================================================== --- python/trunk/configure (original) +++ python/trunk/configure Fri Apr 4 12:07:55 2008 @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 61847 . +# From configure.in Revision: 61992 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for python 2.6. # @@ -12417,7 +12417,11 @@ then LDSHARED='$(CC) -shared' else LDSHARED='$(CC) -G'; fi ;; - hp*|HP*) LDSHARED="ld -b";; + hp*|HP*) + if test "$GCC" = "yes" + then LDSHARED='$(CC) -shared' + else LDSHARED='ld -b'; + fi ;; OSF*) LDSHARED="ld -shared -expect_unresolved \"*\"";; Darwin/1.3*) LDSHARED='$(CC) $(LDFLAGS) -bundle' Modified: python/trunk/configure.in ============================================================================== --- python/trunk/configure.in (original) +++ python/trunk/configure.in Fri Apr 4 12:07:55 2008 @@ -1485,7 +1485,11 @@ then LDSHARED='$(CC) -shared' else LDSHARED='$(CC) -G'; fi ;; - hp*|HP*) LDSHARED="ld -b";; + hp*|HP*) + if test "$GCC" = "yes" + then LDSHARED='$(CC) -shared' + else LDSHARED='ld -b'; + fi ;; OSF*) LDSHARED="ld -shared -expect_unresolved \"*\"";; Darwin/1.3*) LDSHARED='$(CC) $(LDFLAGS) -bundle' From buildbot at python.org Fri Apr 4 12:26:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 10:26:23 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080404102623.55FDC1E400F@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/692 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 13:06:39 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 11:06:39 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080404110639.84A8F1E400F@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/931 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 13:31:14 2008 From: python-checkins at python.org (fred.drake) Date: Fri, 4 Apr 2008 13:31:14 +0200 (CEST) Subject: [Python-checkins] r62147 - in python/trunk/Lib/distutils: core.py tests/test_core.py Message-ID: <20080404113114.C2CA21E401C@bag.python.org> Author: fred.drake Date: Fri Apr 4 13:31:14 2008 New Revision: 62147 Modified: python/trunk/Lib/distutils/core.py python/trunk/Lib/distutils/tests/test_core.py Log: my previous change did what I said it should not: it changed the current directory to the directory in which the setup.py script lived (which made __file__ wrong) fixed, with test that the script is run in the current directory of the caller Modified: python/trunk/Lib/distutils/core.py ============================================================================== --- python/trunk/Lib/distutils/core.py (original) +++ python/trunk/Lib/distutils/core.py Fri Apr 4 13:31:14 2008 @@ -212,7 +212,6 @@ save_argv = sys.argv g = {'__file__': script_name} l = {} - os.chdir(os.path.dirname(script_name) or os.curdir) try: try: sys.argv[0] = script_name Modified: python/trunk/Lib/distutils/tests/test_core.py ============================================================================== --- python/trunk/Lib/distutils/tests/test_core.py (original) +++ python/trunk/Lib/distutils/tests/test_core.py Fri Apr 4 13:31:14 2008 @@ -3,6 +3,8 @@ import StringIO import distutils.core import os +import shutil +import sys import test.test_support import unittest @@ -16,21 +18,61 @@ setup() """ +setup_prints_cwd = """\ + +import os +print os.getcwd() + +from distutils.core import setup +setup() +""" + class CoreTestCase(unittest.TestCase): + def setUp(self): + self.old_stdout = sys.stdout + self.cleanup_testfn() + def tearDown(self): - os.remove(test.test_support.TESTFN) + sys.stdout = self.old_stdout + self.cleanup_testfn() - def write_setup(self, text): - return fn + def cleanup_testfn(self): + path = test.test_support.TESTFN + if os.path.isfile(path): + os.remove(path) + elif os.path.isdir(path): + shutil.rmtree(path) + + def write_setup(self, text, path=test.test_support.TESTFN): + open(path, "w").write(text) + return path def test_run_setup_provides_file(self): # Make sure the script can use __file__; if that's missing, the test # setup.py script will raise NameError. - fn = test.test_support.TESTFN - open(fn, "w").write(setup_using___file__) - distutils.core.run_setup(fn) + distutils.core.run_setup( + self.write_setup(setup_using___file__)) + + def test_run_setup_uses_current_dir(self): + # This tests that the setup script is run with the current directory + # as it's own current directory; this was temporarily broken by a + # previous patch when TESTFN did not use the current directory. + sys.stdout = StringIO.StringIO() + cwd = os.getcwd() + + # Create a directory and write the setup.py file there: + os.mkdir(test.test_support.TESTFN) + setup_py = os.path.join(test.test_support.TESTFN, "setup.py") + distutils.core.run_setup( + self.write_setup(setup_prints_cwd, path=setup_py)) + + output = sys.stdout.getvalue() + open("/dev/tty", "w").write("\n\n%r\n\n\n" % (output,)) + if output.endswith("\n"): + output = output[:-1] + self.assertEqual(cwd, output) def test_suite(): From python-checkins at python.org Fri Apr 4 13:38:51 2008 From: python-checkins at python.org (fred.drake) Date: Fri, 4 Apr 2008 13:38:51 +0200 (CEST) Subject: [Python-checkins] r62148 - python/trunk/Lib/distutils/tests/test_core.py Message-ID: <20080404113851.9F7B61E400F@bag.python.org> Author: fred.drake Date: Fri Apr 4 13:38:51 2008 New Revision: 62148 Modified: python/trunk/Lib/distutils/tests/test_core.py Log: stupid, stupid, stupid! Modified: python/trunk/Lib/distutils/tests/test_core.py ============================================================================== --- python/trunk/Lib/distutils/tests/test_core.py (original) +++ python/trunk/Lib/distutils/tests/test_core.py Fri Apr 4 13:38:51 2008 @@ -69,7 +69,6 @@ self.write_setup(setup_prints_cwd, path=setup_py)) output = sys.stdout.getvalue() - open("/dev/tty", "w").write("\n\n%r\n\n\n" % (output,)) if output.endswith("\n"): output = output[:-1] self.assertEqual(cwd, output) From buildbot at python.org Fri Apr 4 14:21:19 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 12:21:19 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc trunk Message-ID: <20080404122119.7CB251E400F@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%20trunk/builds/3123 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: fred.drake BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_distutils ====================================================================== ERROR: test_run_setup_uses_current_dir (distutils.tests.test_core.CoreTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/opt/users/buildbot/slave/trunk.loewis-sun/build/Lib/distutils/tests/test_core.py", line 72, in test_run_setup_uses_current_dir open("/dev/tty", "w").write("\n\n%r\n\n\n" % (output,)) IOError: [Errno 6] No such device or address: '/dev/tty' sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 15:01:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 13:01:09 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080404130109.76ABD1E4039@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3151 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: fred.drake BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 15:34:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 13:34:26 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080404133427.03DC61E400F@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1114 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: fred.drake BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_distutils ====================================================================== ERROR: test_run_setup_uses_current_dir (distutils.tests.test_core.CoreTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\distutils\tests\test_core.py", line 72, in test_run_setup_uses_current_dir open("/dev/tty", "w").write("\n\n%r\n\n\n" % (output,)) IOError: [Errno 2] No such file or directory: '/dev/tty' sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 18:01:57 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 4 Apr 2008 18:01:57 +0200 (CEST) Subject: [Python-checkins] r62149 - in python/trunk/Modules/_ctypes/libffi: include/ffi.h.in src/pa/hpux32.S src/x86/darwin64.S src/x86/ffi.c src/x86/freebsd.S Message-ID: <20080404160157.E4EC41E400F@bag.python.org> Author: thomas.heller Date: Fri Apr 4 18:01:54 2008 New Revision: 62149 Added: python/trunk/Modules/_ctypes/libffi/src/pa/hpux32.S (contents, props changed) python/trunk/Modules/_ctypes/libffi/src/x86/darwin64.S (contents, props changed) python/trunk/Modules/_ctypes/libffi/src/x86/freebsd.S (contents, props changed) Modified: python/trunk/Modules/_ctypes/libffi/include/ffi.h.in python/trunk/Modules/_ctypes/libffi/src/x86/ffi.c Log: Sync with files from the just released libffi 3.0.5 version. Modified: python/trunk/Modules/_ctypes/libffi/include/ffi.h.in ============================================================================== --- python/trunk/Modules/_ctypes/libffi/include/ffi.h.in (original) +++ python/trunk/Modules/_ctypes/libffi/include/ffi.h.in Fri Apr 4 18:01:54 2008 @@ -57,7 +57,9 @@ #endif /* Specify which architecture libffi is configured for. */ +#ifndef @TARGET@ #define @TARGET@ +#endif /* ---- System configuration information --------------------------------- */ Added: python/trunk/Modules/_ctypes/libffi/src/pa/hpux32.S ============================================================================== --- (empty file) +++ python/trunk/Modules/_ctypes/libffi/src/pa/hpux32.S Fri Apr 4 18:01:54 2008 @@ -0,0 +1,368 @@ +/* ----------------------------------------------------------------------- + hpux32.S - Copyright (c) 2006 Free Software Foundation, Inc. + (c) 2008 Red Hat, Inc. + based on src/pa/linux.S + + HP-UX PA Foreign Function Interface + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + ``Software''), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + ----------------------------------------------------------------------- */ + +#define LIBFFI_ASM +#include +#include + + .LEVEL 1.1 + .SPACE $PRIVATE$ + .IMPORT $global$,DATA + .IMPORT $$dyncall,MILLICODE + .SUBSPA $DATA$ + .align 4 + + /* void ffi_call_pa32(void (*)(char *, extended_cif *), + extended_cif *ecif, + unsigned bytes, + unsigned flags, + unsigned *rvalue, + void (*fn)(void)); + */ + + .export ffi_call_pa32,ENTRY,PRIV_LEV=3 + .import ffi_prep_args_pa32,CODE + + .SPACE $TEXT$ + .SUBSPA $CODE$ + .align 4 + +L$FB1 +ffi_call_pa32 + .proc + .callinfo FRAME=64,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=4 + .entry + stw %rp, -20(%sp) + copy %r3, %r1 +L$CFI11 + copy %sp, %r3 +L$CFI12 + + /* Setup the stack for calling prep_args... + We want the stack to look like this: + + [ Previous stack ] <- %r3 + + [ 64-bytes register save area ] <- %r4 + + [ Stack space for actual call, passed as ] <- %arg0 + [ arg0 to ffi_prep_args_pa32 ] + + [ Stack for calling prep_args ] <- %sp + */ + + stwm %r1, 64(%sp) + stw %r4, 12(%r3) +L$CFI13 + copy %sp, %r4 + + addl %arg2, %r4, %arg0 ; arg stack + stw %arg3, -48(%r3) ; save flags we need it later + + /* Call prep_args: + %arg0(stack) -- set up above + %arg1(ecif) -- same as incoming param + %arg2(bytes) -- same as incoming param */ + bl ffi_prep_args_pa32,%r2 + ldo 64(%arg0), %sp + ldo -64(%sp), %sp + + /* now %sp should point where %arg0 was pointing. */ + + /* Load the arguments that should be passed in registers + The fp args are loaded by the prep_args function. */ + ldw -36(%sp), %arg0 + ldw -40(%sp), %arg1 + ldw -44(%sp), %arg2 + ldw -48(%sp), %arg3 + + /* in case the function is going to return a structure + we need to give it a place to put the result. */ + ldw -52(%r3), %ret0 ; %ret0 <- rvalue + ldw -56(%r3), %r22 ; %r22 <- function to call + bl $$dyncall, %r31 ; Call the user function + copy %r31, %rp + + /* Prepare to store the result; we need to recover flags and rvalue. */ + ldw -48(%r3), %r21 ; r21 <- flags + ldw -52(%r3), %r20 ; r20 <- rvalue + + /* Store the result according to the return type. The most + likely types should come first. */ + +L$checkint + comib,<>,n FFI_TYPE_INT, %r21, L$checkint8 + b L$done + stw %ret0, 0(%r20) + +L$checkint8 + comib,<>,n FFI_TYPE_UINT8, %r21, L$checkint16 + b L$done + stb %ret0, 0(%r20) + +L$checkint16 + comib,<>,n FFI_TYPE_UINT16, %r21, L$checkdbl + b L$done + sth %ret0, 0(%r20) + +L$checkdbl + comib,<>,n FFI_TYPE_DOUBLE, %r21, L$checkfloat + b L$done + fstd %fr4,0(%r20) + +L$checkfloat + comib,<>,n FFI_TYPE_FLOAT, %r21, L$checkll + b L$done + fstw %fr4L,0(%r20) + +L$checkll + comib,<>,n FFI_TYPE_UINT64, %r21, L$checksmst2 + stw %ret0, 0(%r20) + b L$done + stw %ret1, 4(%r20) + +L$checksmst2 + comib,<>,n FFI_TYPE_SMALL_STRUCT2, %r21, L$checksmst3 + /* 2-byte structs are returned in ret0 as ????xxyy. */ + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret0, 0(%r20) + +L$checksmst3 + comib,<>,n FFI_TYPE_SMALL_STRUCT3, %r21, L$checksmst4 + /* 3-byte structs are returned in ret0 as ??xxyyzz. */ + extru %ret0, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret0, 0(%r20) + +L$checksmst4 + comib,<>,n FFI_TYPE_SMALL_STRUCT4, %r21, L$checksmst5 + /* 4-byte structs are returned in ret0 as wwxxyyzz. */ + extru %ret0, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret0, 0(%r20) + +L$checksmst5 + comib,<>,n FFI_TYPE_SMALL_STRUCT5, %r21, L$checksmst6 + /* 5 byte values are returned right justified: + ret0 ret1 + 5: ??????aa bbccddee */ + stbs,ma %ret0, 1(%r20) + extru %ret1, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret1, 0(%r20) + +L$checksmst6 + comib,<>,n FFI_TYPE_SMALL_STRUCT6, %r21, L$checksmst7 + /* 6 byte values are returned right justified: + ret0 ret1 + 6: ????aabb ccddeeff */ + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + stbs,ma %ret0, 1(%r20) + extru %ret1, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret1, 0(%r20) + +L$checksmst7 + comib,<>,n FFI_TYPE_SMALL_STRUCT7, %r21, L$checksmst8 + /* 7 byte values are returned right justified: + ret0 ret1 + 7: ??aabbcc ddeeffgg */ + extru %ret0, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + stbs,ma %ret0, 1(%r20) + extru %ret1, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + b L$done + stb %ret1, 0(%r20) + +L$checksmst8 + comib,<>,n FFI_TYPE_SMALL_STRUCT8, %r21, L$done + /* 8 byte values are returned right justified: + ret0 ret1 + 8: aabbccdd eeffgghh */ + extru %ret0, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret0, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + stbs,ma %ret0, 1(%r20) + extru %ret1, 7, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 15, 8, %r22 + stbs,ma %r22, 1(%r20) + extru %ret1, 23, 8, %r22 + stbs,ma %r22, 1(%r20) + stb %ret1, 0(%r20) + +L$done + /* all done, return */ + copy %r4, %sp ; pop arg stack + ldw 12(%r3), %r4 + ldwm -64(%sp), %r3 ; .. and pop stack + ldw -20(%sp), %rp + bv %r0(%rp) + nop + .exit + .procend +L$FE1 + + /* void ffi_closure_pa32(void); + Called with closure argument in %r21 */ + + .SPACE $TEXT$ + .SUBSPA $CODE$ + .export ffi_closure_pa32,ENTRY,PRIV_LEV=3,RTNVAL=GR + .import ffi_closure_inner_pa32,CODE + .align 4 +L$FB2 +ffi_closure_pa32 + .proc + .callinfo FRAME=64,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=3 + .entry + + stw %rp, -20(%sp) + copy %r3, %r1 +L$CFI21 + copy %sp, %r3 +L$CFI22 + stwm %r1, 64(%sp) + + /* Put arguments onto the stack and call ffi_closure_inner. */ + stw %arg0, -36(%r3) + stw %arg1, -40(%r3) + stw %arg2, -44(%r3) + stw %arg3, -48(%r3) + + copy %r21, %arg0 + bl ffi_closure_inner_pa32, %r2 + copy %r3, %arg1 + ldwm -64(%sp), %r3 + ldw -20(%sp), %rp + ldw -36(%sp), %ret0 + bv %r0(%rp) + ldw -40(%sp), %ret1 + .exit + .procend +L$FE2: + + .SPACE $PRIVATE$ + .SUBSPA $DATA$ + + .align 4 + .EXPORT _GLOBAL__F_ffi_call_pa32,DATA +_GLOBAL__F_ffi_call_pa32 +L$frame1: + .word L$ECIE1-L$SCIE1 ;# Length of Common Information Entry +L$SCIE1: + .word 0x0 ;# CIE Identifier Tag + .byte 0x1 ;# CIE Version + .ascii "\0" ;# CIE Augmentation + .uleb128 0x1 ;# CIE Code Alignment Factor + .sleb128 4 ;# CIE Data Alignment Factor + .byte 0x2 ;# CIE RA Column + .byte 0xc ;# DW_CFA_def_cfa + .uleb128 0x1e + .uleb128 0x0 + .align 4 +L$ECIE1: +L$SFDE1: + .word L$EFDE1-L$ASFDE1 ;# FDE Length +L$ASFDE1: + .word L$ASFDE1-L$frame1 ;# FDE CIE offset + .word L$FB1 ;# FDE initial location + .word L$FE1-L$FB1 ;# FDE address range + + .byte 0x4 ;# DW_CFA_advance_loc4 + .word L$CFI11-L$FB1 + .byte 0x83 ;# DW_CFA_offset, column 0x3 + .uleb128 0x0 + .byte 0x11 ;# DW_CFA_offset_extended_sf; save r2 at [r30-20] + .uleb128 0x2 + .sleb128 -5 + + .byte 0x4 ;# DW_CFA_advance_loc4 + .word L$CFI12-L$CFI11 + .byte 0xd ;# DW_CFA_def_cfa_register = r3 + .uleb128 0x3 + + .byte 0x4 ;# DW_CFA_advance_loc4 + .word L$CFI13-L$CFI12 + .byte 0x84 ;# DW_CFA_offset, column 0x4 + .uleb128 0x3 + + .align 4 +L$EFDE1: + +L$SFDE2: + .word L$EFDE2-L$ASFDE2 ;# FDE Length +L$ASFDE2: + .word L$ASFDE2-L$frame1 ;# FDE CIE offset + .word L$FB2 ;# FDE initial location + .word L$FE2-L$FB2 ;# FDE address range + .byte 0x4 ;# DW_CFA_advance_loc4 + .word L$CFI21-L$FB2 + .byte 0x83 ;# DW_CFA_offset, column 0x3 + .uleb128 0x0 + .byte 0x11 ;# DW_CFA_offset_extended_sf + .uleb128 0x2 + .sleb128 -5 + + .byte 0x4 ;# DW_CFA_advance_loc4 + .word L$CFI22-L$CFI21 + .byte 0xd ;# DW_CFA_def_cfa_register = r3 + .uleb128 0x3 + + .align 4 +L$EFDE2: Added: python/trunk/Modules/_ctypes/libffi/src/x86/darwin64.S ============================================================================== --- (empty file) +++ python/trunk/Modules/_ctypes/libffi/src/x86/darwin64.S Fri Apr 4 18:01:54 2008 @@ -0,0 +1,416 @@ +/* ----------------------------------------------------------------------- + darwin64.S - Copyright (c) 2006 Free Software Foundation, Inc. + Copyright (c) 2008 Red Hat, Inc. + derived from unix64.S + + x86-64 Foreign Function Interface for Darwin. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + ``Software''), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR + OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + ----------------------------------------------------------------------- */ + +#ifdef __x86_64__ +#define LIBFFI_ASM +#include +#include + + .file "darwin64.S" +.text + +/* ffi_call_unix64 (void *args, unsigned long bytes, unsigned flags, + void *raddr, void (*fnaddr)(void)); + + Bit o trickiness here -- ARGS+BYTES is the base of the stack frame + for this function. This has been allocated by ffi_call. We also + deallocate some of the stack that has been alloca'd. */ + + .align 3 + .globl _ffi_call_unix64 + +_ffi_call_unix64: +LUW0: + movq (%rsp), %r10 /* Load return address. */ + leaq (%rdi, %rsi), %rax /* Find local stack base. */ + movq %rdx, (%rax) /* Save flags. */ + movq %rcx, 8(%rax) /* Save raddr. */ + movq %rbp, 16(%rax) /* Save old frame pointer. */ + movq %r10, 24(%rax) /* Relocate return address. */ + movq %rax, %rbp /* Finalize local stack frame. */ +LUW1: + movq %rdi, %r10 /* Save a copy of the register area. */ + movq %r8, %r11 /* Save a copy of the target fn. */ + movl %r9d, %eax /* Set number of SSE registers. */ + + /* Load up all argument registers. */ + movq (%r10), %rdi + movq 8(%r10), %rsi + movq 16(%r10), %rdx + movq 24(%r10), %rcx + movq 32(%r10), %r8 + movq 40(%r10), %r9 + testl %eax, %eax + jnz Lload_sse +Lret_from_load_sse: + + /* Deallocate the reg arg area. */ + leaq 176(%r10), %rsp + + /* Call the user function. */ + call *%r11 + + /* Deallocate stack arg area; local stack frame in redzone. */ + leaq 24(%rbp), %rsp + + movq 0(%rbp), %rcx /* Reload flags. */ + movq 8(%rbp), %rdi /* Reload raddr. */ + movq 16(%rbp), %rbp /* Reload old frame pointer. */ +LUW2: + + /* The first byte of the flags contains the FFI_TYPE. */ + movzbl %cl, %r10d + leaq Lstore_table(%rip), %r11 + movslq (%r11, %r10, 4), %r10 + addq %r11, %r10 + jmp *%r10 + +Lstore_table: + .long Lst_void-Lstore_table /* FFI_TYPE_VOID */ + .long Lst_sint32-Lstore_table /* FFI_TYPE_INT */ + .long Lst_float-Lstore_table /* FFI_TYPE_FLOAT */ + .long Lst_double-Lstore_table /* FFI_TYPE_DOUBLE */ + .long Lst_ldouble-Lstore_table /* FFI_TYPE_LONGDOUBLE */ + .long Lst_uint8-Lstore_table /* FFI_TYPE_UINT8 */ + .long Lst_sint8-Lstore_table /* FFI_TYPE_SINT8 */ + .long Lst_uint16-Lstore_table /* FFI_TYPE_UINT16 */ + .long Lst_sint16-Lstore_table /* FFI_TYPE_SINT16 */ + .long Lst_uint32-Lstore_table /* FFI_TYPE_UINT32 */ + .long Lst_sint32-Lstore_table /* FFI_TYPE_SINT32 */ + .long Lst_int64-Lstore_table /* FFI_TYPE_UINT64 */ + .long Lst_int64-Lstore_table /* FFI_TYPE_SINT64 */ + .long Lst_struct-Lstore_table /* FFI_TYPE_STRUCT */ + .long Lst_int64-Lstore_table /* FFI_TYPE_POINTER */ + + .text + .align 3 +Lst_void: + ret + .align 3 +Lst_uint8: + movzbq %al, %rax + movq %rax, (%rdi) + ret + .align 3 +Lst_sint8: + movsbq %al, %rax + movq %rax, (%rdi) + ret + .align 3 +Lst_uint16: + movzwq %ax, %rax + movq %rax, (%rdi) + .align 3 +Lst_sint16: + movswq %ax, %rax + movq %rax, (%rdi) + ret + .align 3 +Lst_uint32: + movl %eax, %eax + movq %rax, (%rdi) + .align 3 +Lst_sint32: + cltq + movq %rax, (%rdi) + ret + .align 3 +Lst_int64: + movq %rax, (%rdi) + ret + .align 3 +Lst_float: + movss %xmm0, (%rdi) + ret + .align 3 +Lst_double: + movsd %xmm0, (%rdi) + ret +Lst_ldouble: + fstpt (%rdi) + ret + .align 3 +Lst_struct: + leaq -20(%rsp), %rsi /* Scratch area in redzone. */ + + /* We have to locate the values now, and since we don't want to + write too much data into the user's return value, we spill the + value to a 16 byte scratch area first. Bits 8, 9, and 10 + control where the values are located. Only one of the three + bits will be set; see ffi_prep_cif_machdep for the pattern. */ + movd %xmm0, %r10 + movd %xmm1, %r11 + testl $0x100, %ecx + cmovnz %rax, %rdx + cmovnz %r10, %rax + testl $0x200, %ecx + cmovnz %r10, %rdx + testl $0x400, %ecx + cmovnz %r10, %rax + cmovnz %r11, %rdx + movq %rax, (%rsi) + movq %rdx, 8(%rsi) + + /* Bits 12-31 contain the true size of the structure. Copy from + the scratch area to the true destination. */ + shrl $12, %ecx + rep movsb + ret + + /* Many times we can avoid loading any SSE registers at all. + It's not worth an indirect jump to load the exact set of + SSE registers needed; zero or all is a good compromise. */ + .align 3 +LUW3: +Lload_sse: + movdqa 48(%r10), %xmm0 + movdqa 64(%r10), %xmm1 + movdqa 80(%r10), %xmm2 + movdqa 96(%r10), %xmm3 + movdqa 112(%r10), %xmm4 + movdqa 128(%r10), %xmm5 + movdqa 144(%r10), %xmm6 + movdqa 160(%r10), %xmm7 + jmp Lret_from_load_sse + +LUW4: + .align 3 + .globl _ffi_closure_unix64 + +_ffi_closure_unix64: +LUW5: + /* The carry flag is set by the trampoline iff SSE registers + are used. Don't clobber it before the branch instruction. */ + leaq -200(%rsp), %rsp +LUW6: + movq %rdi, (%rsp) + movq %rsi, 8(%rsp) + movq %rdx, 16(%rsp) + movq %rcx, 24(%rsp) + movq %r8, 32(%rsp) + movq %r9, 40(%rsp) + jc Lsave_sse +Lret_from_save_sse: + + movq %r10, %rdi + leaq 176(%rsp), %rsi + movq %rsp, %rdx + leaq 208(%rsp), %rcx + call _ffi_closure_unix64_inner + + /* Deallocate stack frame early; return value is now in redzone. */ + addq $200, %rsp +LUW7: + + /* The first byte of the return value contains the FFI_TYPE. */ + movzbl %al, %r10d + leaq Lload_table(%rip), %r11 + movslq (%r11, %r10, 4), %r10 + addq %r11, %r10 + jmp *%r10 + +Lload_table: + .long Lld_void-Lload_table /* FFI_TYPE_VOID */ + .long Lld_int32-Lload_table /* FFI_TYPE_INT */ + .long Lld_float-Lload_table /* FFI_TYPE_FLOAT */ + .long Lld_double-Lload_table /* FFI_TYPE_DOUBLE */ + .long Lld_ldouble-Lload_table /* FFI_TYPE_LONGDOUBLE */ + .long Lld_int8-Lload_table /* FFI_TYPE_UINT8 */ + .long Lld_int8-Lload_table /* FFI_TYPE_SINT8 */ + .long Lld_int16-Lload_table /* FFI_TYPE_UINT16 */ + .long Lld_int16-Lload_table /* FFI_TYPE_SINT16 */ + .long Lld_int32-Lload_table /* FFI_TYPE_UINT32 */ + .long Lld_int32-Lload_table /* FFI_TYPE_SINT32 */ + .long Lld_int64-Lload_table /* FFI_TYPE_UINT64 */ + .long Lld_int64-Lload_table /* FFI_TYPE_SINT64 */ + .long Lld_struct-Lload_table /* FFI_TYPE_STRUCT */ + .long Lld_int64-Lload_table /* FFI_TYPE_POINTER */ + + .text + .align 3 +Lld_void: + ret + .align 3 +Lld_int8: + movzbl -24(%rsp), %eax + ret + .align 3 +Lld_int16: + movzwl -24(%rsp), %eax + ret + .align 3 +Lld_int32: + movl -24(%rsp), %eax + ret + .align 3 +Lld_int64: + movq -24(%rsp), %rax + ret + .align 3 +Lld_float: + movss -24(%rsp), %xmm0 + ret + .align 3 +Lld_double: + movsd -24(%rsp), %xmm0 + ret + .align 3 +Lld_ldouble: + fldt -24(%rsp) + ret + .align 3 +Lld_struct: + /* There are four possibilities here, %rax/%rdx, %xmm0/%rax, + %rax/%xmm0, %xmm0/%xmm1. We collapse two by always loading + both rdx and xmm1 with the second word. For the remaining, + bit 8 set means xmm0 gets the second word, and bit 9 means + that rax gets the second word. */ + movq -24(%rsp), %rcx + movq -16(%rsp), %rdx + movq -16(%rsp), %xmm1 + testl $0x100, %eax + cmovnz %rdx, %rcx + movd %rcx, %xmm0 + testl $0x200, %eax + movq -24(%rsp), %rax + cmovnz %rdx, %rax + ret + + /* See the comment above Lload_sse; the same logic applies here. */ + .align 3 +LUW8: +Lsave_sse: + movdqa %xmm0, 48(%rsp) + movdqa %xmm1, 64(%rsp) + movdqa %xmm2, 80(%rsp) + movdqa %xmm3, 96(%rsp) + movdqa %xmm4, 112(%rsp) + movdqa %xmm5, 128(%rsp) + movdqa %xmm6, 144(%rsp) + movdqa %xmm7, 160(%rsp) + jmp Lret_from_save_sse + +LUW9: +.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support +EH_frame1: + .set L$set$0,LECIE1-LSCIE1 /* CIE Length */ + .long L$set$0 +LSCIE1: + .long 0x0 /* CIE Identifier Tag */ + .byte 0x1 /* CIE Version */ + .ascii "zR\0" /* CIE Augmentation */ + .byte 0x1 /* uleb128 0x1; CIE Code Alignment Factor */ + .byte 0x78 /* sleb128 -8; CIE Data Alignment Factor */ + .byte 0x10 /* CIE RA Column */ + .byte 0x1 /* uleb128 0x1; Augmentation size */ + .byte 0x10 /* FDE Encoding (pcrel sdata4) */ + .byte 0xc /* DW_CFA_def_cfa, %rsp offset 8 */ + .byte 0x7 /* uleb128 0x7 */ + .byte 0x8 /* uleb128 0x8 */ + .byte 0x90 /* DW_CFA_offset, column 0x10 */ + .byte 0x1 + .align 3 +LECIE1: + .globl _ffi_call_unix64.eh +_ffi_call_unix64.eh: +LSFDE1: + .set L$set$1,LEFDE1-LASFDE1 /* FDE Length */ + .long L$set$1 +LASFDE1: + .long LASFDE1-EH_frame1 /* FDE CIE offset */ + .quad LUW0-. /* FDE initial location */ + .set L$set$2,LUW4-LUW0 /* FDE address range */ + .quad L$set$2 + .byte 0x0 /* Augmentation size */ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$3,LUW1-LUW0 + .long L$set$3 + + /* New stack frame based off rbp. This is a itty bit of unwind + trickery in that the CFA *has* changed. There is no easy way + to describe it correctly on entry to the function. Fortunately, + it doesn't matter too much since at all points we can correctly + unwind back to ffi_call. Note that the location to which we + moved the return address is (the new) CFA-8, so from the + perspective of the unwind info, it hasn't moved. */ + .byte 0xc /* DW_CFA_def_cfa, %rbp offset 32 */ + .byte 0x6 + .byte 0x20 + .byte 0x80+6 /* DW_CFA_offset, %rbp offset 2*-8 */ + .byte 0x2 + .byte 0xa /* DW_CFA_remember_state */ + + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$4,LUW2-LUW1 + .long L$set$4 + .byte 0xc /* DW_CFA_def_cfa, %rsp offset 8 */ + .byte 0x7 + .byte 0x8 + .byte 0xc0+6 /* DW_CFA_restore, %rbp */ + + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$5,LUW3-LUW2 + .long L$set$5 + .byte 0xb /* DW_CFA_restore_state */ + + .align 3 +LEFDE1: + .globl _ffi_closure_unix64.eh +_ffi_closure_unix64.eh: +LSFDE3: + .set L$set$6,LEFDE3-LASFDE3 /* FDE Length */ + .long L$set$6 +LASFDE3: + .long LASFDE3-EH_frame1 /* FDE CIE offset */ + .quad LUW5-. /* FDE initial location */ + .set L$set$7,LUW9-LUW5 /* FDE address range */ + .quad L$set$7 + .byte 0x0 /* Augmentation size */ + + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$8,LUW6-LUW5 + .long L$set$8 + .byte 0xe /* DW_CFA_def_cfa_offset */ + .byte 208,1 /* uleb128 208 */ + .byte 0xa /* DW_CFA_remember_state */ + + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$9,LUW7-LUW6 + .long L$set$9 + .byte 0xe /* DW_CFA_def_cfa_offset */ + .byte 0x8 + + .byte 0x4 /* DW_CFA_advance_loc4 */ + .set L$set$10,LUW8-LUW7 + .long L$set$10 + .byte 0xb /* DW_CFA_restore_state */ + + .align 3 +LEFDE3: + .subsections_via_symbols + +#endif /* __x86_64__ */ Modified: python/trunk/Modules/_ctypes/libffi/src/x86/ffi.c ============================================================================== --- python/trunk/Modules/_ctypes/libffi/src/x86/ffi.c (original) +++ python/trunk/Modules/_ctypes/libffi/src/x86/ffi.c Fri Apr 4 18:01:54 2008 @@ -349,14 +349,14 @@ { FFI_INIT_TRAMPOLINE (&closure->tramp[0], &ffi_closure_SYSV, - (void*)closure); + (void*)codeloc); } #ifdef X86_WIN32 else if (cif->abi == FFI_STDCALL) { FFI_INIT_TRAMPOLINE_STDCALL (&closure->tramp[0], &ffi_closure_STDCALL, - (void*)closure, cif->bytes); + (void*)codeloc, cif->bytes); } #endif else Added: python/trunk/Modules/_ctypes/libffi/src/x86/freebsd.S ============================================================================== --- (empty file) +++ python/trunk/Modules/_ctypes/libffi/src/x86/freebsd.S Fri Apr 4 18:01:54 2008 @@ -0,0 +1,458 @@ +/* ----------------------------------------------------------------------- + freebsd.S - Copyright (c) 1996, 1998, 2001, 2002, 2003, 2005 Red Hat, Inc. + Copyright (c) 2008 Bj?rn K?nig + + X86 Foreign Function Interface for FreeBSD + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + ``Software''), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. +----------------------------------------------------------------------- */ + +#ifndef __x86_64__ + +#define LIBFFI_ASM +#include +#include + +.text + +.globl ffi_prep_args + + .align 4 +.globl ffi_call_SYSV + .type ffi_call_SYSV, at function + +ffi_call_SYSV: +.LFB1: + pushl %ebp +.LCFI0: + movl %esp,%ebp +.LCFI1: + /* Make room for all of the new args. */ + movl 16(%ebp),%ecx + subl %ecx,%esp + + movl %esp,%eax + + /* Place all of the ffi_prep_args in position */ + pushl 12(%ebp) + pushl %eax + call *8(%ebp) + + /* Return stack to previous state and call the function */ + addl $8,%esp + + call *28(%ebp) + + /* Load %ecx with the return type code */ + movl 20(%ebp),%ecx + + /* Protect %esi. We're going to pop it in the epilogue. */ + pushl %esi + + /* If the return value pointer is NULL, assume no return value. */ + cmpl $0,24(%ebp) + jne 0f + + /* Even if there is no space for the return value, we are + obliged to handle floating-point values. */ + cmpl $FFI_TYPE_FLOAT,%ecx + jne noretval + fstp %st(0) + + jmp epilogue + +0: + call 1f + +.Lstore_table: + .long noretval-.Lstore_table /* FFI_TYPE_VOID */ + .long retint-.Lstore_table /* FFI_TYPE_INT */ + .long retfloat-.Lstore_table /* FFI_TYPE_FLOAT */ + .long retdouble-.Lstore_table /* FFI_TYPE_DOUBLE */ + .long retlongdouble-.Lstore_table /* FFI_TYPE_LONGDOUBLE */ + .long retuint8-.Lstore_table /* FFI_TYPE_UINT8 */ + .long retsint8-.Lstore_table /* FFI_TYPE_SINT8 */ + .long retuint16-.Lstore_table /* FFI_TYPE_UINT16 */ + .long retsint16-.Lstore_table /* FFI_TYPE_SINT16 */ + .long retint-.Lstore_table /* FFI_TYPE_UINT32 */ + .long retint-.Lstore_table /* FFI_TYPE_SINT32 */ + .long retint64-.Lstore_table /* FFI_TYPE_UINT64 */ + .long retint64-.Lstore_table /* FFI_TYPE_SINT64 */ + .long retstruct-.Lstore_table /* FFI_TYPE_STRUCT */ + .long retint-.Lstore_table /* FFI_TYPE_POINTER */ + .long retstruct1b-.Lstore_table /* FFI_TYPE_SMALL_STRUCT_1B */ + .long retstruct2b-.Lstore_table /* FFI_TYPE_SMALL_STRUCT_2B */ + +1: + pop %esi + add (%esi, %ecx, 4), %esi + jmp *%esi + + /* Sign/zero extend as appropriate. */ +retsint8: + movsbl %al, %eax + jmp retint + +retsint16: + movswl %ax, %eax + jmp retint + +retuint8: + movzbl %al, %eax + jmp retint + +retuint16: + movzwl %ax, %eax + jmp retint + +retfloat: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + fstps (%ecx) + jmp epilogue + +retdouble: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + fstpl (%ecx) + jmp epilogue + +retlongdouble: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + fstpt (%ecx) + jmp epilogue + +retint64: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + movl %eax,0(%ecx) + movl %edx,4(%ecx) + jmp epilogue + +retstruct1b: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + movb %al,0(%ecx) + jmp epilogue + +retstruct2b: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + movw %ax,0(%ecx) + jmp epilogue + +retint: + /* Load %ecx with the pointer to storage for the return value */ + movl 24(%ebp),%ecx + movl %eax,0(%ecx) + +retstruct: + /* Nothing to do! */ + +noretval: +epilogue: + popl %esi + movl %ebp,%esp + popl %ebp + ret +.LFE1: +.ffi_call_SYSV_end: + .size ffi_call_SYSV,.ffi_call_SYSV_end-ffi_call_SYSV + + .align 4 +FFI_HIDDEN (ffi_closure_SYSV) +.globl ffi_closure_SYSV + .type ffi_closure_SYSV, @function + +ffi_closure_SYSV: +.LFB2: + pushl %ebp +.LCFI2: + movl %esp, %ebp +.LCFI3: + subl $40, %esp + leal -24(%ebp), %edx + movl %edx, -12(%ebp) /* resp */ + leal 8(%ebp), %edx + movl %edx, 4(%esp) /* args = __builtin_dwarf_cfa () */ + leal -12(%ebp), %edx + movl %edx, (%esp) /* &resp */ +#if defined HAVE_HIDDEN_VISIBILITY_ATTRIBUTE || !defined __PIC__ + call ffi_closure_SYSV_inner +#else + movl %ebx, 8(%esp) +.LCFI7: + call 1f +1: popl %ebx + addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx + call ffi_closure_SYSV_inner at PLT + movl 8(%esp), %ebx +#endif + movl -12(%ebp), %ecx + cmpl $FFI_TYPE_INT, %eax + je .Lcls_retint + + /* Handle FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16, + FFI_TYPE_SINT16, FFI_TYPE_UINT32, FFI_TYPE_SINT32. */ + cmpl $FFI_TYPE_UINT64, %eax + jge 0f + cmpl $FFI_TYPE_UINT8, %eax + jge .Lcls_retint + +0: cmpl $FFI_TYPE_FLOAT, %eax + je .Lcls_retfloat + cmpl $FFI_TYPE_DOUBLE, %eax + je .Lcls_retdouble + cmpl $FFI_TYPE_LONGDOUBLE, %eax + je .Lcls_retldouble + cmpl $FFI_TYPE_SINT64, %eax + je .Lcls_retllong + cmpl $FFI_TYPE_SMALL_STRUCT_1B, %eax + je .Lcls_retstruct1b + cmpl $FFI_TYPE_SMALL_STRUCT_2B, %eax + je .Lcls_retstruct2b + cmpl $FFI_TYPE_STRUCT, %eax + je .Lcls_retstruct +.Lcls_epilogue: + movl %ebp, %esp + popl %ebp + ret +.Lcls_retint: + movl (%ecx), %eax + jmp .Lcls_epilogue +.Lcls_retfloat: + flds (%ecx) + jmp .Lcls_epilogue +.Lcls_retdouble: + fldl (%ecx) + jmp .Lcls_epilogue +.Lcls_retldouble: + fldt (%ecx) + jmp .Lcls_epilogue +.Lcls_retllong: + movl (%ecx), %eax + movl 4(%ecx), %edx + jmp .Lcls_epilogue +.Lcls_retstruct1b: + movsbl (%ecx), %eax + jmp .Lcls_epilogue +.Lcls_retstruct2b: + movswl (%ecx), %eax + jmp .Lcls_epilogue +.Lcls_retstruct: + movl %ebp, %esp + popl %ebp + ret $4 +.LFE2: + .size ffi_closure_SYSV, .-ffi_closure_SYSV + +#if !FFI_NO_RAW_API + +#define RAW_CLOSURE_CIF_OFFSET ((FFI_TRAMPOLINE_SIZE + 3) & ~3) +#define RAW_CLOSURE_FUN_OFFSET (RAW_CLOSURE_CIF_OFFSET + 4) +#define RAW_CLOSURE_USER_DATA_OFFSET (RAW_CLOSURE_FUN_OFFSET + 4) +#define CIF_FLAGS_OFFSET 20 + + .align 4 +FFI_HIDDEN (ffi_closure_raw_SYSV) +.globl ffi_closure_raw_SYSV + .type ffi_closure_raw_SYSV, @function + +ffi_closure_raw_SYSV: +.LFB3: + pushl %ebp +.LCFI4: + movl %esp, %ebp +.LCFI5: + pushl %esi +.LCFI6: + subl $36, %esp + movl RAW_CLOSURE_CIF_OFFSET(%eax), %esi /* closure->cif */ + movl RAW_CLOSURE_USER_DATA_OFFSET(%eax), %edx /* closure->user_data */ + movl %edx, 12(%esp) /* user_data */ + leal 8(%ebp), %edx /* __builtin_dwarf_cfa () */ + movl %edx, 8(%esp) /* raw_args */ + leal -24(%ebp), %edx + movl %edx, 4(%esp) /* &res */ + movl %esi, (%esp) /* cif */ + call *RAW_CLOSURE_FUN_OFFSET(%eax) /* closure->fun */ + movl CIF_FLAGS_OFFSET(%esi), %eax /* rtype */ + cmpl $FFI_TYPE_INT, %eax + je .Lrcls_retint + + /* Handle FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16, + FFI_TYPE_SINT16, FFI_TYPE_UINT32, FFI_TYPE_SINT32. */ + cmpl $FFI_TYPE_UINT64, %eax + jge 0f + cmpl $FFI_TYPE_UINT8, %eax + jge .Lrcls_retint +0: + cmpl $FFI_TYPE_FLOAT, %eax + je .Lrcls_retfloat + cmpl $FFI_TYPE_DOUBLE, %eax + je .Lrcls_retdouble + cmpl $FFI_TYPE_LONGDOUBLE, %eax + je .Lrcls_retldouble + cmpl $FFI_TYPE_SINT64, %eax + je .Lrcls_retllong +.Lrcls_epilogue: + addl $36, %esp + popl %esi + popl %ebp + ret +.Lrcls_retint: + movl -24(%ebp), %eax + jmp .Lrcls_epilogue +.Lrcls_retfloat: + flds -24(%ebp) + jmp .Lrcls_epilogue +.Lrcls_retdouble: + fldl -24(%ebp) + jmp .Lrcls_epilogue +.Lrcls_retldouble: + fldt -24(%ebp) + jmp .Lrcls_epilogue +.Lrcls_retllong: + movl -24(%ebp), %eax + movl -20(%ebp), %edx + jmp .Lrcls_epilogue +.LFE3: + .size ffi_closure_raw_SYSV, .-ffi_closure_raw_SYSV +#endif + + .section .eh_frame,EH_FRAME_FLAGS, at progbits +.Lframe1: + .long .LECIE1-.LSCIE1 /* Length of Common Information Entry */ +.LSCIE1: + .long 0x0 /* CIE Identifier Tag */ + .byte 0x1 /* CIE Version */ +#ifdef __PIC__ + .ascii "zR\0" /* CIE Augmentation */ +#else + .ascii "\0" /* CIE Augmentation */ +#endif + .byte 0x1 /* .uleb128 0x1; CIE Code Alignment Factor */ + .byte 0x7c /* .sleb128 -4; CIE Data Alignment Factor */ + .byte 0x8 /* CIE RA Column */ +#ifdef __PIC__ + .byte 0x1 /* .uleb128 0x1; Augmentation size */ + .byte 0x1b /* FDE Encoding (pcrel sdata4) */ +#endif + .byte 0xc /* DW_CFA_def_cfa */ + .byte 0x4 /* .uleb128 0x4 */ + .byte 0x4 /* .uleb128 0x4 */ + .byte 0x88 /* DW_CFA_offset, column 0x8 */ + .byte 0x1 /* .uleb128 0x1 */ + .align 4 +.LECIE1: +.LSFDE1: + .long .LEFDE1-.LASFDE1 /* FDE Length */ +.LASFDE1: + .long .LASFDE1-.Lframe1 /* FDE CIE offset */ +#ifdef __PIC__ + .long .LFB1-. /* FDE initial location */ +#else + .long .LFB1 /* FDE initial location */ +#endif + .long .LFE1-.LFB1 /* FDE address range */ +#ifdef __PIC__ + .byte 0x0 /* .uleb128 0x0; Augmentation size */ +#endif + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI0-.LFB1 + .byte 0xe /* DW_CFA_def_cfa_offset */ + .byte 0x8 /* .uleb128 0x8 */ + .byte 0x85 /* DW_CFA_offset, column 0x5 */ + .byte 0x2 /* .uleb128 0x2 */ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI1-.LCFI0 + .byte 0xd /* DW_CFA_def_cfa_register */ + .byte 0x5 /* .uleb128 0x5 */ + .align 4 +.LEFDE1: +.LSFDE2: + .long .LEFDE2-.LASFDE2 /* FDE Length */ +.LASFDE2: + .long .LASFDE2-.Lframe1 /* FDE CIE offset */ +#ifdef __PIC__ + .long .LFB2-. /* FDE initial location */ +#else + .long .LFB2 +#endif + .long .LFE2-.LFB2 /* FDE address range */ +#ifdef __PIC__ + .byte 0x0 /* .uleb128 0x0; Augmentation size */ +#endif + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI2-.LFB2 + .byte 0xe /* DW_CFA_def_cfa_offset */ + .byte 0x8 /* .uleb128 0x8 */ + .byte 0x85 /* DW_CFA_offset, column 0x5 */ + .byte 0x2 /* .uleb128 0x2 */ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI3-.LCFI2 + .byte 0xd /* DW_CFA_def_cfa_register */ + .byte 0x5 /* .uleb128 0x5 */ +#if !defined HAVE_HIDDEN_VISIBILITY_ATTRIBUTE && defined __PIC__ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI7-.LCFI3 + .byte 0x83 /* DW_CFA_offset, column 0x3 */ + .byte 0xa /* .uleb128 0xa */ +#endif + .align 4 +.LEFDE2: + +#if !FFI_NO_RAW_API + +.LSFDE3: + .long .LEFDE3-.LASFDE3 /* FDE Length */ +.LASFDE3: + .long .LASFDE3-.Lframe1 /* FDE CIE offset */ +#ifdef __PIC__ + .long .LFB3-. /* FDE initial location */ +#else + .long .LFB3 +#endif + .long .LFE3-.LFB3 /* FDE address range */ +#ifdef __PIC__ + .byte 0x0 /* .uleb128 0x0; Augmentation size */ +#endif + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI4-.LFB3 + .byte 0xe /* DW_CFA_def_cfa_offset */ + .byte 0x8 /* .uleb128 0x8 */ + .byte 0x85 /* DW_CFA_offset, column 0x5 */ + .byte 0x2 /* .uleb128 0x2 */ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI5-.LCFI4 + .byte 0xd /* DW_CFA_def_cfa_register */ + .byte 0x5 /* .uleb128 0x5 */ + .byte 0x4 /* DW_CFA_advance_loc4 */ + .long .LCFI6-.LCFI5 + .byte 0x86 /* DW_CFA_offset, column 0x6 */ + .byte 0x3 /* .uleb128 0x3 */ + .align 4 +.LEFDE3: + +#endif + +#endif /* ifndef __x86_64__ */ From buildbot at python.org Fri Apr 4 18:41:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 16:41:33 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080404164133.4408D1E400F@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%20trunk/builds/1155 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_timeout make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 18:46:08 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 16:46:08 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080404164608.DB9481E401E@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%20trunk/builds/671 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_timeout make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 18:48:19 2008 From: python-checkins at python.org (jeffrey.yasskin) Date: Fri, 4 Apr 2008 18:48:19 +0200 (CEST) Subject: [Python-checkins] r62150 - python/trunk/Lib/test/test_signal.py Message-ID: <20080404164819.8D57A1E400F@bag.python.org> Author: jeffrey.yasskin Date: Fri Apr 4 18:48:19 2008 New Revision: 62150 Modified: python/trunk/Lib/test/test_signal.py Log: Oops again. EINTR is in errno, not signal. Modified: python/trunk/Lib/test/test_signal.py ============================================================================== --- python/trunk/Lib/test/test_signal.py (original) +++ python/trunk/Lib/test/test_signal.py Fri Apr 4 18:48:19 2008 @@ -32,7 +32,7 @@ try: return __func(*args, **kwargs) except EnvironmentError as e: - if e.errno != signal.EINTR: + if e.errno != errno.EINTR: raise return None From buildbot at python.org Fri Apr 4 18:58:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 16:58:04 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080404165804.A54561E400F@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3153 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 19:05:17 2008 From: python-checkins at python.org (benjamin.peterson) Date: Fri, 4 Apr 2008 19:05:17 +0200 (CEST) Subject: [Python-checkins] r62151 - peps/trunk/pep-0000.txt Message-ID: <20080404170517.D8DED1E400F@bag.python.org> Author: benjamin.peterson Date: Fri Apr 4 19:05:17 2008 New Revision: 62151 Modified: peps/trunk/pep-0000.txt Log: got other instance of Python 2.6 release schedule and added 3.0 Modified: peps/trunk/pep-0000.txt ============================================================================== --- peps/trunk/pep-0000.txt (original) +++ peps/trunk/pep-0000.txt Fri Apr 4 19:05:17 2008 @@ -461,7 +461,7 @@ SA 358 The "bytes" Object Schemenauer, GvR SW 359 The "make" Statement Bethard I 360 Externally Maintained Packages Cannon - I 361 Python 2.6 Release Schedule Norwitz, et al + I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al S 362 Function Signature Object Cannon, Seo SR 363 Syntax For Dynamic Attribute Access North S 364 Transitioning to the Py3K Standard Library Warsaw From python-checkins at python.org Fri Apr 4 19:26:21 2008 From: python-checkins at python.org (trent.nelson) Date: Fri, 4 Apr 2008 19:26:21 +0200 (CEST) Subject: [Python-checkins] r62152 - python/trunk/Lib/test/test_socket.py Message-ID: <20080404172621.CB0931E4010@bag.python.org> Author: trent.nelson Date: Fri Apr 4 19:26:21 2008 New Revision: 62152 Modified: python/trunk/Lib/test/test_socket.py Log: Issue 2550: extend test_socket.py to test SO_REUSEADDR semantics when bind() is called on identical (host, port) combinations in two separate sockets. This should raise an EADDRINUSE socket.error in all cases, irrespective of whether or not SO_REUSEADDR is set on the sockets. However, with Windows, when SO_REUSEADDR is set on the sockets, no error is thrown (an error is thrown when the option isn't set), which results in an extremely wedged python process whenever accept() is called on either of the bound sockets. I'm committing this test now to observe if it's only Windows that has this behaviour (via the buildbots). Note: this WILL break all Windows buildbots for now; once I've observed the results on other platforms, I'll revert, then start looking into a patch. Modified: python/trunk/Lib/test/test_socket.py ============================================================================== --- python/trunk/Lib/test/test_socket.py (original) +++ python/trunk/Lib/test/test_socket.py Fri Apr 4 19:26:21 2008 @@ -3,6 +3,7 @@ import unittest from test import test_support +import errno import socket import select import thread, threading @@ -486,6 +487,81 @@ reuse = sock.getsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR) self.failIf(reuse == 0, "failed to set reuse mode") + def testAddressReuseSemantics(self): + # As per the 'SO_REUSEADDR and SO_REUSEPORT Socket Options' section in + # chapter 7.5 of Stevens' UNIX Network Programming Volume 1 (2nd Ed): + # + # "With TCP, we are never able to start multiple servers that bind + # the same IP address and same port: a completely duplicate binding. + # That is, we cannot start one server that binds 198.69.10.2 port 80 + # and start another that also binds 198.69.10.2 port 80, even if we + # set the SO_REUSEADDR socket option for the second server." + # + # However, on Windows, it seems that if SO_REUSEADDR is set on the 2nd + # socket, binding to an already bound (host, port) combination doesn't + # raise an exception. Instead, it causes Python to wedge pretty badly + # when accept() is called against either of the sockets. This test case + # is being added to help debug this issue, as well as seeing if the + # expected semantics differ on any other platforms. + + # Get a port that we *know* is unique. Don't rely on test_support's + # bind_port method, as this operates under the assumption that an + # EADDRINUSE exception will be raised correctly, which is exactly what + # we're trying to test here. + host = '127.0.0.1' + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock.bind((host, 0)) + port = sock.getsockname()[1] + sock.close() + del sock + + # First test that we get EADDRINUSE without SO_REUSEADDR. + sock1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock1.bind((host, port)) + sock2 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + try: + sock2.bind((host, port)) + except socket.error, (err, msg): + self.assertEqual(err, errno.EADDRINUSE) + else: + self.fail("expected EADDRINUSE socket.error exception to be " \ + "raised when attempting to bind a second socket to " \ + "a (host, port) we've already bound to (SO_REUSEADDR " \ + "was NOT set on the socket)") + finally: + sock1.close() + try: + sock2.close() + except: + pass + del sock1 + del sock2 + + # Try again with SO_REUSEADDR; the behaviour *should* be identical to + # the test above, i.e. an EADDRINUSE socket.error should be raised. + sock1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock1.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + sock1.bind((host, port)) + sock2 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock2.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + try: + sock2.bind((host, port)) + except socket.error, (err, msg): + self.assertEqual(err, errno.EADDRINUSE) + else: + self.fail("expected EADDRINUSE socket.error exception to be " \ + "raised when attempting to bind a second socket to " \ + "a (host, port) we've already bound to (SO_REUSEADDR " \ + "*WAS* set on the socket)") + finally: + sock1.close() + try: + sock2.close() + except: + pass + del sock1 + del sock2 + def testSendAfterClose(self): # testing send() after close() with timeout sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) From buildbot at python.org Fri Apr 4 19:54:56 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 17:54:56 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080404175515.916781E4023@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/565 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 19:56:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 17:56:01 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080404175609.81F081E4020@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/253 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\trunk.nelson-win64\build\lib\test\test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 19:53:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 17:53:35 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080404175617.AAD191E4028@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/299 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\trunk.nelson-windows\build\lib\test\test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 20:05:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 18:05:16 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080404180516.567EC1E4010@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%20trunk/builds/1157 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 20:10:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 18:10:14 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080404181048.62A511E4010@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%20trunk/builds/673 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 20:53:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 18:53:16 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080404185316.CD6F91E4021@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1238 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_socket test_zipfile ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 21:14:43 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 4 Apr 2008 21:14:43 +0200 (CEST) Subject: [Python-checkins] r62153 - python/trunk/Modules/_ctypes/libffi/README python/trunk/Modules/_ctypes/libffi/configure python/trunk/Modules/_ctypes/libffi/configure.ac python/trunk/Modules/_ctypes/libffi/libffi.pc.in Message-ID: <20080404191443.1FA941E4012@bag.python.org> Author: thomas.heller Date: Fri Apr 4 21:14:42 2008 New Revision: 62153 Removed: python/trunk/Modules/_ctypes/libffi/libffi.pc.in Modified: python/trunk/Modules/_ctypes/libffi/README python/trunk/Modules/_ctypes/libffi/configure python/trunk/Modules/_ctypes/libffi/configure.ac Log: More files from libffi 3.0.5. Removed libffi.pc.in because it is not needed for ctypes. Modified: python/trunk/Modules/_ctypes/libffi/README ============================================================================== --- python/trunk/Modules/_ctypes/libffi/README (original) +++ python/trunk/Modules/_ctypes/libffi/README Fri Apr 4 21:14:42 2008 @@ -1,7 +1,7 @@ Status ====== -libffi-3.0.4 was released on February 24, 2008. Check the libffi web +libffi-3.0.5 was released on April 3, 2008. Check the libffi web page for updates: . @@ -158,6 +158,11 @@ History ======= +3.0.5 Apr-3-08 + Fix libffi.pc file. + Fix #define ARM for IcedTea users. + Fix x86 closure bug. + 3.0.4 Feb-24-08 Fix x86 OpenBSD configury. Modified: python/trunk/Modules/_ctypes/libffi/configure ============================================================================== --- python/trunk/Modules/_ctypes/libffi/configure (original) +++ python/trunk/Modules/_ctypes/libffi/configure Fri Apr 4 21:14:42 2008 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61 for libffi 3.0.4. +# Generated by GNU Autoconf 2.61 for libffi 3.0.5. # # Report bugs to . # @@ -728,8 +728,8 @@ # Identity of this package. PACKAGE_NAME='libffi' PACKAGE_TARNAME='libffi' -PACKAGE_VERSION='3.0.4' -PACKAGE_STRING='libffi 3.0.4' +PACKAGE_VERSION='3.0.5' +PACKAGE_STRING='libffi 3.0.5' PACKAGE_BUGREPORT='http://gcc.gnu.org/bugs.html' # Factoring default headers for most tests. @@ -1459,7 +1459,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libffi 3.0.4 to adapt to many kinds of systems. +\`configure' configures libffi 3.0.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1530,7 +1530,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libffi 3.0.4:";; + short | recursive ) echo "Configuration of libffi 3.0.5:";; esac cat <<\_ACEOF @@ -1640,7 +1640,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libffi configure 3.0.4 +libffi configure 3.0.5 generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1654,7 +1654,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libffi $as_me 3.0.4, which was +It was created by libffi $as_me 3.0.5, which was generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ @@ -2477,7 +2477,7 @@ # Define the identity of the package. PACKAGE='libffi' - VERSION='3.0.4' + VERSION='3.0.5' cat >>confdefs.h <<_ACEOF @@ -23327,7 +23327,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libffi $as_me 3.0.4, which was +This file was extended by libffi $as_me 3.0.5, which was generated by GNU Autoconf 2.61. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -23384,7 +23384,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -libffi config.status 3.0.4 +libffi config.status 3.0.5 configured by $0, generated by GNU Autoconf 2.61, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" Modified: python/trunk/Modules/_ctypes/libffi/configure.ac ============================================================================== --- python/trunk/Modules/_ctypes/libffi/configure.ac (original) +++ python/trunk/Modules/_ctypes/libffi/configure.ac Fri Apr 4 21:14:42 2008 @@ -1,8 +1,11 @@ dnl Process this with autoconf to create configure +# +# file from libffi - slightly patched for ctypes +# AC_PREREQ(2.59) -AC_INIT([libffi], [3.0.4], [http://gcc.gnu.org/bugs.html]) +AC_INIT([libffi], [3.0.5], [http://gcc.gnu.org/bugs.html]) AC_CONFIG_HEADERS([fficonfig.h]) AC_CANONICAL_SYSTEM Deleted: /python/trunk/Modules/_ctypes/libffi/libffi.pc.in ============================================================================== --- /python/trunk/Modules/_ctypes/libffi/libffi.pc.in Fri Apr 4 21:14:42 2008 +++ (empty file) @@ -1,10 +0,0 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=${libdir}/@PACKAGE_NAME at -@PACKAGE_VERSION@/include - -Name: @PACKAGE_NAME@ -Description: Library supporting Foreign Function Interfaces -Version: @PACKAGE_VERSION@ -Libs: -lffi -Cflags: -I${includedir} From buildbot at python.org Fri Apr 4 21:22:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 19:22:54 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080404192254.49B7F1E402C@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/325 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-s390/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 21:43:24 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 19:43:24 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080404194324.8B08D1E4015@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/934 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin,thomas.heller,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\test\test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 21:43:25 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 4 Apr 2008 21:43:25 +0200 (CEST) Subject: [Python-checkins] r62154 - python/trunk/Misc/NEWS Message-ID: <20080404194325.708AA1E4017@bag.python.org> Author: thomas.heller Date: Fri Apr 4 21:43:25 2008 New Revision: 62154 Modified: python/trunk/Misc/NEWS Log: News entry for: Sync with files from the just released libffi 3.0.5 version. Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 4 21:43:25 2008 @@ -18,6 +18,10 @@ Library ------- +- The bundled libffi copy is now in sync with the recently released + libffi3.0.5 version, apart from some small changes to + Modules/_ctypes/libffi/configure.ac. + - Issue #2385: distutils.core.run_script() makes __file__ available, so the controlled environment will more closely mirror the typical script environment. This supports setup.py scripts that refer to data files. From buildbot at python.org Fri Apr 4 21:58:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 19:58:10 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD trunk Message-ID: <20080404195810.70B071E4018@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%20trunk/builds/849 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-freebsd Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Fri Apr 4 22:04:26 2008 From: python-checkins at python.org (trent.nelson) Date: Fri, 4 Apr 2008 22:04:26 +0200 (CEST) Subject: [Python-checkins] r62156 - python/trunk/Lib/test/test_socket.py Message-ID: <20080404200426.79CE51E4010@bag.python.org> Author: trent.nelson Date: Fri Apr 4 22:04:09 2008 New Revision: 62156 Modified: python/trunk/Lib/test/test_socket.py Log: Revert r62152 (Issue #2550). Being able to observe the results of all the buildbots was certainly useful. All of the platforms that have some form of BSD lineage -- FreeBSD, OS X, Solaris and Tru64 -- all pass the test. Windows and Linux, on the other hand, don't. Windows I knew about, Linux was a surprise. Knowing this, I believe a more appropriate fix will revolve around test_support.bind_socket() -- this method needs to return a port that nothing in the system has bound already. The best way to do this may just be to rely on ephemeral ports, rather than having the user specify a desired port, then fall back to four random ports, then try 0. Modified: python/trunk/Lib/test/test_socket.py ============================================================================== --- python/trunk/Lib/test/test_socket.py (original) +++ python/trunk/Lib/test/test_socket.py Fri Apr 4 22:04:09 2008 @@ -3,7 +3,6 @@ import unittest from test import test_support -import errno import socket import select import thread, threading @@ -487,81 +486,6 @@ reuse = sock.getsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR) self.failIf(reuse == 0, "failed to set reuse mode") - def testAddressReuseSemantics(self): - # As per the 'SO_REUSEADDR and SO_REUSEPORT Socket Options' section in - # chapter 7.5 of Stevens' UNIX Network Programming Volume 1 (2nd Ed): - # - # "With TCP, we are never able to start multiple servers that bind - # the same IP address and same port: a completely duplicate binding. - # That is, we cannot start one server that binds 198.69.10.2 port 80 - # and start another that also binds 198.69.10.2 port 80, even if we - # set the SO_REUSEADDR socket option for the second server." - # - # However, on Windows, it seems that if SO_REUSEADDR is set on the 2nd - # socket, binding to an already bound (host, port) combination doesn't - # raise an exception. Instead, it causes Python to wedge pretty badly - # when accept() is called against either of the sockets. This test case - # is being added to help debug this issue, as well as seeing if the - # expected semantics differ on any other platforms. - - # Get a port that we *know* is unique. Don't rely on test_support's - # bind_port method, as this operates under the assumption that an - # EADDRINUSE exception will be raised correctly, which is exactly what - # we're trying to test here. - host = '127.0.0.1' - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock.bind((host, 0)) - port = sock.getsockname()[1] - sock.close() - del sock - - # First test that we get EADDRINUSE without SO_REUSEADDR. - sock1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock1.bind((host, port)) - sock2 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - try: - sock2.bind((host, port)) - except socket.error, (err, msg): - self.assertEqual(err, errno.EADDRINUSE) - else: - self.fail("expected EADDRINUSE socket.error exception to be " \ - "raised when attempting to bind a second socket to " \ - "a (host, port) we've already bound to (SO_REUSEADDR " \ - "was NOT set on the socket)") - finally: - sock1.close() - try: - sock2.close() - except: - pass - del sock1 - del sock2 - - # Try again with SO_REUSEADDR; the behaviour *should* be identical to - # the test above, i.e. an EADDRINUSE socket.error should be raised. - sock1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock1.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - sock1.bind((host, port)) - sock2 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock2.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - try: - sock2.bind((host, port)) - except socket.error, (err, msg): - self.assertEqual(err, errno.EADDRINUSE) - else: - self.fail("expected EADDRINUSE socket.error exception to be " \ - "raised when attempting to bind a second socket to " \ - "a (host, port) we've already bound to (SO_REUSEADDR " \ - "*WAS* set on the socket)") - finally: - sock1.close() - try: - sock2.close() - except: - pass - del sock1 - del sock2 - def testSendAfterClose(self): # testing send() after close() with timeout sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) From buildbot at python.org Fri Apr 4 22:28:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 20:28:34 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu trunk Message-ID: <20080404202834.E9B831E4010@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%20trunk/builds/452 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-ubuntu-sparc/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 23:01:24 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 21:01:24 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080404210124.D69D11E4010@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/694 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 23:11:24 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 21:11:24 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080404211205.B40451E4012@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/757 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.heller BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 23:23:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 21:23:31 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080404212413.A69D81E4010@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/191 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Apr 4 23:28:13 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 21:28:13 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080404212826.36A771E4010@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/299 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.heller,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 00:01:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 22:01:30 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian trunk Message-ID: <20080404220130.6012F1E4012@bag.python.org> The Buildbot has detected a new failure of alpha Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%20trunk/builds/71 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: The web-page 'force build' button was pressed by 'Trent': Doesn't seem to be building when left to it's own accord. Build Source Stamp: [branch trunk] HEAD Blamelist: BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== FAIL: testAddressReuseSemantics (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/test/test_socket.py", line 552, in testAddressReuseSemantics self.fail("expected EADDRINUSE socket.error exception to be " \ AssertionError: expected EADDRINUSE socket.error exception to be raised when attempting to bind a second socket to a (host, port) we've already bound to (SO_REUSEADDR *WAS* set on the socket) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 00:09:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 04 Apr 2008 22:09:34 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080404220934.CF3EB1E4012@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/145 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_getargs2 ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 02:19:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 00:19:14 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080405001914.B78A91E4012@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/751 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_getargs2 test_threading ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From python-checkins at python.org Sat Apr 5 04:42:20 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 5 Apr 2008 04:42:20 +0200 (CEST) Subject: [Python-checkins] r62158 - python/trunk/Doc/library/signal.rst Message-ID: <20080405024220.89C141E4012@bag.python.org> Author: andrew.kuchling Date: Sat Apr 5 04:42:20 2008 New Revision: 62158 Modified: python/trunk/Doc/library/signal.rst Log: Minor edits Modified: python/trunk/Doc/library/signal.rst ============================================================================== --- python/trunk/Doc/library/signal.rst (original) +++ python/trunk/Doc/library/signal.rst Sat Apr 5 04:42:20 2008 @@ -143,8 +143,8 @@ .. function:: setitimer(which, seconds[, interval]) - Sets given itimer (one of :const:`signal.ITIMER_REAL`, - :const:`signal.ITIMER_VIRTUAL` or :const:`signal.ITIMER_PROF`) especified + Sets given interval timer (one of :const:`signal.ITIMER_REAL`, + :const:`signal.ITIMER_VIRTUAL` or :const:`signal.ITIMER_PROF`) specified by *which* to fire after *seconds* (float is accepted, different from :func:`alarm`) and after that every *interval* seconds. The interval timer specified by *which* can be cleared by setting seconds to zero. @@ -159,7 +159,7 @@ .. function:: getitimer(which) - Returns current value of a given itimer especified by *which*. + Returns current value of a given interval timer especified by *which*. .. versionadded:: 2.6 From python-checkins at python.org Sat Apr 5 04:47:07 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 5 Apr 2008 04:47:07 +0200 (CEST) Subject: [Python-checkins] r62159 - python/trunk/Doc/library/signal.rst Message-ID: <20080405024707.ABD821E4012@bag.python.org> Author: andrew.kuchling Date: Sat Apr 5 04:47:07 2008 New Revision: 62159 Modified: python/trunk/Doc/library/signal.rst Log: Markup fix; explain what interval timers do; typo fix Modified: python/trunk/Doc/library/signal.rst ============================================================================== --- python/trunk/Doc/library/signal.rst (original) +++ python/trunk/Doc/library/signal.rst Sat Apr 5 04:47:07 2008 @@ -82,7 +82,7 @@ .. data:: ITIMER_REAL - Decrements interval timer in real time, and delivers SIGALRM upon expiration. + Decrements interval timer in real time, and delivers :const:`SIGALRM` upon expiration. .. data:: ITIMER_VIRTUAL @@ -149,6 +149,12 @@ :func:`alarm`) and after that every *interval* seconds. The interval timer specified by *which* can be cleared by setting seconds to zero. + When an interval timer fires, a signal is sent to the process. + The signal sent is dependent on the timer being used; + :const:`signal.ITIMER_REAL` will deliver :const:`SIGALRM`, + :const:`signal.ITIMER_VIRTUAL` sends :const:`SIGVTALRM`, + and :const:`signal.ITIMER_PROF` will deliver :const:`SIGPROF`. + The old values are returned as a tuple: (delay, interval). Attempting to pass an invalid interval timer will cause a @@ -159,7 +165,7 @@ .. function:: getitimer(which) - Returns current value of a given interval timer especified by *which*. + Returns current value of a given interval timer specified by *which*. .. versionadded:: 2.6 From python-checkins at python.org Sat Apr 5 05:38:40 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 5 Apr 2008 05:38:40 +0200 (CEST) Subject: [Python-checkins] r62160 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080405033840.8A3F01E4023@bag.python.org> Author: andrew.kuchling Date: Sat Apr 5 05:38:39 2008 New Revision: 62160 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Various edits Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Sat Apr 5 05:38:39 2008 @@ -133,8 +133,11 @@ therefore posted a call for issue trackers, asking volunteers to set up different products and import some of the bugs and patches from SourceForge. Four different trackers were examined: Atlassian's `Jira -`__, `Launchpad `__, ` `Roundup -`__, and Trac `__. The committee eventually settled on Jira +`__, +`Launchpad `__, +`Roundup `__, and +Trac `__. +The committee eventually settled on Jira and Roundup as the two candidates. Jira is a commercial product that offers a no-cost hosted instance to free-software projects; Roundup is an open-source project that requires volunteers @@ -146,19 +149,18 @@ for Jython and for the Python web site. It will surely find other uses in the future. -Hosting is kindly provided by `Upfront `__ of XXX. Martin von -Loewis put a lot of effort into importing existing bugs and patches -from SourceForge; his scripts for this import are at XXX. +Hosting is kindly provided by `Upfront Systems `__ of Stellenbosch, South Africa. Martin von Loewis put a +lot of effort into importing existing bugs and patches from +SourceForge; his scripts for this import operation are at +http://svn.python.org/view/tracker/importer/. .. seealso:: - XXX Roundup web site. + http://bugs.python.org: The Python bug tracker. - bugs.python.org + http://bugs.jython.org: The Jython bug tracker. - bugs.jython.org - - Python web site bug tracker + http://roundup.sourceforge.net/: Roundup downloads and documentation. New Documentation Format: ReStructured Text @@ -728,6 +730,21 @@ .. ====================================================================== +.. _pep-3116: + +PEP 3116: New I/O Library +===================================================== + +XXX write this. + +.. seealso:: + + :pep:`3116` - New I/O + PEP written by Daniel Stutzbach, Mike Verdone, and Guido van Rossum. + XXX code written by who? + +.. ====================================================================== + .. _pep-3118: PEP 3118: Revised Buffer Protocol @@ -895,8 +912,9 @@ :pep:`3141` - A Type Hierarchy for Numbers PEP written by Jeffrey Yasskin. - XXX link: Discusses Scheme's numeric tower. + `Scheme's numerical tower `__, from the Guile manual. + `Scheme's number datatypes `__ from the R5RS Scheme specification. The :mod:`fractions` Module @@ -1229,7 +1247,7 @@ * The :mod:`datetime` module's :meth:`strftime` methods now support a ``%f`` format code that expands to the number of microseconds in the object, zero-padded on - the left to six places. (Contributed by XXX.) + the left to six places. (Contributed by Skip Montanaro.) .. Patch 1158 @@ -1527,7 +1545,8 @@ numbers following a triangular distribution. The returned values are between *low* and *high*, not including *high* itself, and with *mode* as the mode, the most frequently occurring value - in the distribution. (Contributed by Raymond Hettinger. XXX check) + in the distribution. (Contributed by Wladmir van der Laan and + Raymond Hettinger.) .. Patch 1681432 @@ -1544,7 +1563,7 @@ have a read-only :attr:`queue` attribute that returns the contents of the scheduler's queue, represented as a list of named tuples with the fields ``(time, priority, action, argument)``. - (Contributed by Raymond Hettinger XXX check.) + (Contributed by Raymond Hettinger.) .. Patch 1861 @@ -1554,7 +1573,7 @@ objects; ``pollobj.modify(fd, eventmask)`` takes a file descriptor or file object and an event mask, - (Contributed by XXX.) + (Contributed by Christian Heimes.) .. Patch 1657 @@ -1571,7 +1590,7 @@ :cfunc:`PySignal_SetWakeupFd`, for setting the descriptor. Event loops will use this by opening a pipe to create two descriptors, - one for reading and one for writing. The writeable descriptor + one for reading and one for writing. The writable descriptor will be passed to :func:`set_wakeup_fd`, and the readable descriptor will be added to the list of descriptors monitored by the event loop via :cfunc:`select` or :cfunc:`poll`. @@ -1586,6 +1605,16 @@ and allows changing whether signals can interrupt system calls or not. (Contributed by Ralf Schmitt.) + The :func:`setitimer` and :func:`getitimer` functions have also been + added on systems that support these system calls. :func:`setitimer` + allows setting interval timers that will cause a signal to be + delivered to the process after a specified time, measured in + wall-clock time, consumed process time, or combined process+system + time. (Contributed by Guilherme Polo.) + + .. Patch 2240 + + * The :mod:`smtplib` module now supports SMTP over SSL thanks to the addition of the :class:`SMTP_SSL` class. This class supports an interface identical to the existing :class:`SMTP` class. Both From python-checkins at python.org Sat Apr 5 06:26:31 2008 From: python-checkins at python.org (neal.norwitz) Date: Sat, 5 Apr 2008 06:26:31 +0200 (CEST) Subject: [Python-checkins] r62161 - python/trunk/Lib/sqlite3/test/transactions.py Message-ID: <20080405042631.CEEAF1E4012@bag.python.org> Author: neal.norwitz Date: Sat Apr 5 06:26:31 2008 New Revision: 62161 Modified: python/trunk/Lib/sqlite3/test/transactions.py Log: Prevent test_sqlite from hanging on older versions of sqlite. The problem is that when trying to do the second insert, sqlite seems to sleep for a very long time. Here is the output from strace: read(6, "SQLite format 3\0\4\0\1\1\0@ \0\0\0\1\0\0\0\0"..., 1024) = 1024 nanosleep({4294, 966296000}, I don't know which version this was fixed in, but 3.2.1 definitely fails. Modified: python/trunk/Lib/sqlite3/test/transactions.py ============================================================================== --- python/trunk/Lib/sqlite3/test/transactions.py (original) +++ python/trunk/Lib/sqlite3/test/transactions.py Sat Apr 5 06:26:31 2008 @@ -113,6 +113,10 @@ self.failUnlessEqual(len(res), 1) def CheckRaiseTimeout(self): + if sqlite.sqlite_version_info < (3, 2, 2): + # This will fail (hang) on earlier versions of sqlite. + # Determine exact version it was fixed. 3.2.1 hangs. + return self.cur1.execute("create table test(i)") self.cur1.execute("insert into test(i) values (5)") try: @@ -128,6 +132,10 @@ This tests the improved concurrency with pysqlite 2.3.4. You needed to roll back con2 before you could commit con1. """ + if sqlite.sqlite_version_info < (3, 2, 2): + # This will fail (hang) on earlier versions of sqlite. + # Determine exact version it was fixed. 3.2.1 hangs. + return self.cur1.execute("create table test(i)") self.cur1.execute("insert into test(i) values (5)") try: From buildbot at python.org Sat Apr 5 08:12:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 06:12:46 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080405061246.8A2D81E4002@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2821 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 08:40:50 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 06:40:50 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080405064050.5E3851E4002@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/148 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_getargs2 ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 08:49:11 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 06:49:11 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080405064911.CF12E1E4002@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1241 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 16 tests failed: test_array test_builtin test_cookielib test_deque test_distutils test_filecmp test_gzip test_hotshot test_iter test_mmap test_multibytecodec test_set test_urllib2 test_uu test_zipfile test_zipimport ====================================================================== ERROR: test_tofromfile (test.test_array.UnicodeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_array.py", line 166, in test_tofromfile f = open(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_open (test.test_builtin.BuiltinTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_builtin.py", line 1564, in test_open self.write_testfile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_builtin.py", line 1551, in write_testfile fp = open(TESTFN, 'w') IOError: [Errno 13] Permission denied: '@test' ====================================================================== FAIL: test_intern (test.test_builtin.BuiltinTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_builtin.py", line 1067, in test_intern self.assert_(intern(s) is s) AssertionError ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 78, in test_maxlen fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 284, in test_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 48, in test_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 85, in test_readline self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 98, in test_readlines self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 112, in test_seek_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 132, in test_seek_whence self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 144, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_addinfo (test.test_hotshot.HotShotTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 74, in test_addinfo profiler = self.new_profiler() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 42, in new_profiler return hotshot.Profile(self.logfn, lineevents, linetimings) File "C:\buildbot\work\trunk.heller-windows\build\lib\hotshot\__init__.py", line 15, in __init__ logfn, self.lineevents, self.linetimings) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bad_sys_path (test.test_hotshot.HotShotTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 118, in test_bad_sys_path self.assertRaises(RuntimeError, coverage, test_support.TESTFN) File "C:\buildbot\work\trunk.heller-windows\build\lib\unittest.py", line 329, in failUnlessRaises callableObj(*args, **kwargs) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_line_numbers (test.test_hotshot.HotShotTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 98, in test_line_numbers self.run_test(g, events, self.new_profiler(lineevents=1)) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 42, in new_profiler return hotshot.Profile(self.logfn, lineevents, linetimings) File "C:\buildbot\work\trunk.heller-windows\build\lib\hotshot\__init__.py", line 15, in __init__ logfn, self.lineevents, self.linetimings) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_start_stop (test.test_hotshot.HotShotTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 104, in test_start_stop profiler = self.new_profiler() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 42, in new_profiler return hotshot.Profile(self.logfn, lineevents, linetimings) File "C:\buildbot\work\trunk.heller-windows\build\lib\hotshot\__init__.py", line 15, in __init__ logfn, self.lineevents, self.linetimings) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_list (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 262, in test_builtin_list f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_map (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 408, in test_builtin_map f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_max_min (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 371, in test_builtin_max_min f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_tuple (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 295, in test_builtin_tuple f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_zip (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 455, in test_builtin_zip f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_countOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 617, in test_countOf f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_in_and_not_in (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 580, in test_in_and_not_in f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_indexOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 651, in test_indexOf f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter_file (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 232, in test_iter_file f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode_join_endcase (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 534, in test_unicode_join_endcase f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unpack_iter (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 760, in test_unpack_iter f = open(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_writelines (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_iter.py", line 677, in test_writelines f = file(TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_access_parameter (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 116, in test_access_parameter open(TESTFN, "wb").write("a"*mapsize) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_basic (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 24, in test_basic f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_double_close (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 298, in test_double_close f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_entire_file (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 312, in test_entire_file f = open(TESTFN, "w+") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib2.py", line 612, in test_file f = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_decode (test.test_uu.UUFileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_uu.py", line 151, in test_decode uu.decode(f) File "C:\buildbot\work\trunk.heller-windows\build\lib\uu.py", line 111, in decode raise Error('Cannot overwrite existing file: %s' % out_file) Error: Cannot overwrite existing file: @testo ====================================================================== ERROR: test_decodetwice (test.test_uu.UUFileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_uu.py", line 168, in test_decodetwice f = open(self.tmpin, 'r') IOError: [Errno 2] No such file or directory: '@testi' sincerely, -The Buildbot From python-checkins at python.org Sat Apr 5 14:18:02 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 5 Apr 2008 14:18:02 +0200 (CEST) Subject: [Python-checkins] r62164 - peps/trunk/pep-0000.txt Message-ID: <20080405121802.9BE851E4002@bag.python.org> Author: georg.brandl Date: Sat Apr 5 14:18:02 2008 New Revision: 62164 Modified: peps/trunk/pep-0000.txt Log: Fix tabs and indentation. Modified: peps/trunk/pep-0000.txt ============================================================================== --- peps/trunk/pep-0000.txt (original) +++ peps/trunk/pep-0000.txt Sat Apr 5 14:18:02 2008 @@ -69,7 +69,7 @@ I 339 Design of the CPython Compiler Cannon IF 356 Python 2.5 Release Schedule Norwitz, et al I 360 Externally Maintained Packages Cannon - I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al + I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al I 3100 Python 3.0 Plans Cannon Accepted PEPs (accepted; may not be completely implemented yet) @@ -461,7 +461,7 @@ SA 358 The "bytes" Object Schemenauer, GvR SW 359 The "make" Statement Bethard I 360 Externally Maintained Packages Cannon - I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al + I 361 Python 2.6 and 3.0 Release Schedule Norwitz, et al S 362 Function Signature Object Cannon, Seo SR 363 Syntax For Dynamic Attribute Access North S 364 Transitioning to the Py3K Standard Library Warsaw From buildbot at python.org Sat Apr 5 17:01:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 15:01:43 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080405150143.BB7781E4002@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/761 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed svn sincerely, -The Buildbot From python-checkins at python.org Sat Apr 5 17:45:26 2008 From: python-checkins at python.org (martin.v.loewis) Date: Sat, 5 Apr 2008 17:45:26 +0200 (CEST) Subject: [Python-checkins] r62167 - python/trunk/Tools/msi/schema.py Message-ID: <20080405154526.4A51E1E4002@bag.python.org> Author: martin.v.loewis Date: Sat Apr 5 17:45:25 2008 New Revision: 62167 Modified: python/trunk/Tools/msi/schema.py Log: Extend sizes of various fields, to support the CRT90 merge module. Modified: python/trunk/Tools/msi/schema.py ============================================================================== --- python/trunk/Tools/msi/schema.py (original) +++ python/trunk/Tools/msi/schema.py Sat Apr 5 17:45:25 2008 @@ -18,7 +18,7 @@ ActionText.add_field(3,'Template',7936) AdminExecuteSequence = Table('AdminExecuteSequence') -AdminExecuteSequence.add_field(1,'Action',11592) +AdminExecuteSequence.add_field(1,'Action',0x2DFF) AdminExecuteSequence.add_field(2,'Condition',7679) AdminExecuteSequence.add_field(3,'Sequence',5378) @@ -28,12 +28,12 @@ Condition.add_field(3,'Condition',7679) AdminUISequence = Table('AdminUISequence') -AdminUISequence.add_field(1,'Action',11592) +AdminUISequence.add_field(1,'Action',0x2DFF) AdminUISequence.add_field(2,'Condition',7679) AdminUISequence.add_field(3,'Sequence',5378) AdvtExecuteSequence = Table('AdvtExecuteSequence') -AdvtExecuteSequence.add_field(1,'Action',11592) +AdvtExecuteSequence.add_field(1,'Action',0x2DFF) AdvtExecuteSequence.add_field(2,'Condition',7679) AdvtExecuteSequence.add_field(3,'Sequence',5378) @@ -83,7 +83,7 @@ Feature.add_field(4,'Description',8191) Feature.add_field(5,'Display',5378) Feature.add_field(6,'Level',1282) -Feature.add_field(7,'Directory_',7496) +Feature.add_field(7,'Directory_',0x1DFF) Feature.add_field(8,'Attributes',1282) Binary = Table('Binary') @@ -91,15 +91,15 @@ Binary.add_field(2,'Data',2304) BindImage = Table('BindImage') -BindImage.add_field(1,'File_',11592) +BindImage.add_field(1,'File_',0x2DFF) BindImage.add_field(2,'Path',7679) File = Table('File') -File.add_field(1,'File',11592) -File.add_field(2,'Component_',3400) +File.add_field(1,'File',0x2DFF) +File.add_field(2,'Component_',0xDFF) File.add_field(3,'FileName',4095) File.add_field(4,'FileSize',260) -File.add_field(5,'Version',7496) +File.add_field(5,'Version',0x1DFF) File.add_field(6,'Language',7444) File.add_field(7,'Attributes',5378) File.add_field(8,'Sequence',1282) @@ -114,7 +114,7 @@ Class = Table('Class') Class.add_field(1,'CLSID',11558) Class.add_field(2,'Context',11552) -Class.add_field(3,'Component_',11592) +Class.add_field(3,'Component_',0x2DFF) Class.add_field(4,'ProgId_Default',7679) Class.add_field(5,'Description',8191) Class.add_field(6,'AppId_',7462) @@ -127,12 +127,12 @@ Class.add_field(13,'Attributes',5378) Component = Table('Component') -Component.add_field(1,'Component',11592) +Component.add_field(1,'Component',0x2DFF) Component.add_field(2,'ComponentId',7462) -Component.add_field(3,'Directory_',3400) +Component.add_field(3,'Directory_',0xDFF) Component.add_field(4,'Attributes',1282) Component.add_field(5,'Condition',7679) -Component.add_field(6,'KeyPath',7496) +Component.add_field(6,'KeyPath',0x1DFF) Icon = Table('Icon') Icon.add_field(1,'Name',11592) @@ -158,12 +158,12 @@ CompLocator.add_field(3,'Type',5378) Complus = Table('Complus') -Complus.add_field(1,'Component_',11592) +Complus.add_field(1,'Component_',0x2DFF) Complus.add_field(2,'ExpType',13570) Directory = Table('Directory') -Directory.add_field(1,'Directory',11592) -Directory.add_field(2,'Directory_Parent',7496) +Directory.add_field(1,'Directory',0x2DFF) +Directory.add_field(2,'Directory_Parent',0x1DFF) Directory.add_field(3,'DefaultDir',4095) Control = Table('Control') @@ -207,13 +207,13 @@ ControlEvent.add_field(6,'Ordering',5378) CreateFolder = Table('CreateFolder') -CreateFolder.add_field(1,'Directory_',11592) -CreateFolder.add_field(2,'Component_',11592) +CreateFolder.add_field(1,'Directory_',0x2DFF) +CreateFolder.add_field(2,'Component_',0x2DFF) CustomAction = Table('CustomAction') -CustomAction.add_field(1,'Action',11592) +CustomAction.add_field(1,'Action',0x2DFF) CustomAction.add_field(2,'Type',1282) -CustomAction.add_field(3,'Source',7496) +CustomAction.add_field(3,'Source',0x1DFF) CustomAction.add_field(4,'Target',7679) DrLocator = Table('DrLocator') @@ -224,8 +224,8 @@ DuplicateFile = Table('DuplicateFile') DuplicateFile.add_field(1,'FileKey',11592) -DuplicateFile.add_field(2,'Component_',3400) -DuplicateFile.add_field(3,'File_',3400) +DuplicateFile.add_field(2,'Component_',0xDFF) +DuplicateFile.add_field(3,'File_',0xDFF) DuplicateFile.add_field(4,'DestName',8191) DuplicateFile.add_field(5,'DestFolder',7496) @@ -233,7 +233,7 @@ Environment.add_field(1,'Environment',11592) Environment.add_field(2,'Name',4095) Environment.add_field(3,'Value',8191) -Environment.add_field(4,'Component_',3400) +Environment.add_field(4,'Component_',0xDFF) Error = Table('Error') Error.add_field(1,'Error',9474) @@ -247,7 +247,7 @@ Extension = Table('Extension') Extension.add_field(1,'Extension',11775) -Extension.add_field(2,'Component_',11592) +Extension.add_field(2,'Component_',0x2DFF) Extension.add_field(3,'ProgId_',7679) Extension.add_field(4,'MIME_',7488) Extension.add_field(5,'Feature_',3366) @@ -259,10 +259,10 @@ FeatureComponents = Table('FeatureComponents') FeatureComponents.add_field(1,'Feature_',11558) -FeatureComponents.add_field(2,'Component_',11592) +FeatureComponents.add_field(2,'Component_',0x2DFF) FileSFPCatalog = Table('FileSFPCatalog') -FileSFPCatalog.add_field(1,'File_',11592) +FileSFPCatalog.add_field(1,'File_',0x2DFF) FileSFPCatalog.add_field(2,'SFPCatalog_',11775) SFPCatalog = Table('SFPCatalog') @@ -271,7 +271,7 @@ SFPCatalog.add_field(3,'Dependency',7424) Font = Table('Font') -Font.add_field(1,'File_',11592) +Font.add_field(1,'File_',0x2DFF) Font.add_field(2,'FontTitle',7552) IniFile = Table('IniFile') @@ -282,7 +282,7 @@ IniFile.add_field(5,'Key',3968) IniFile.add_field(6,'Value',4095) IniFile.add_field(7,'Action',1282) -IniFile.add_field(8,'Component_',3400) +IniFile.add_field(8,'Component_',0xDFF) IniLocator = Table('IniLocator') IniLocator.add_field(1,'Signature_',11592) @@ -293,18 +293,18 @@ IniLocator.add_field(6,'Type',5378) InstallExecuteSequence = Table('InstallExecuteSequence') -InstallExecuteSequence.add_field(1,'Action',11592) +InstallExecuteSequence.add_field(1,'Action',0x2DFF) InstallExecuteSequence.add_field(2,'Condition',7679) InstallExecuteSequence.add_field(3,'Sequence',5378) InstallUISequence = Table('InstallUISequence') -InstallUISequence.add_field(1,'Action',11592) +InstallUISequence.add_field(1,'Action',0x2DFF) InstallUISequence.add_field(2,'Condition',7679) InstallUISequence.add_field(3,'Sequence',5378) IsolatedComponent = Table('IsolatedComponent') -IsolatedComponent.add_field(1,'Component_Shared',11592) -IsolatedComponent.add_field(2,'Component_Application',11592) +IsolatedComponent.add_field(1,'Component_Shared',0x2DFF) +IsolatedComponent.add_field(2,'Component_Application',0x2DFF) LaunchCondition = Table('LaunchCondition') LaunchCondition.add_field(1,'Condition',11775) @@ -340,7 +340,7 @@ MoveFile = Table('MoveFile') MoveFile.add_field(1,'FileKey',11592) -MoveFile.add_field(2,'Component_',3400) +MoveFile.add_field(2,'Component_',0xDFF) MoveFile.add_field(3,'SourceName',8191) MoveFile.add_field(4,'DestName',8191) MoveFile.add_field(5,'SourceFolder',7496) @@ -348,14 +348,14 @@ MoveFile.add_field(7,'Options',1282) MsiAssembly = Table('MsiAssembly') -MsiAssembly.add_field(1,'Component_',11592) +MsiAssembly.add_field(1,'Component_',0x2DFF) MsiAssembly.add_field(2,'Feature_',3366) -MsiAssembly.add_field(3,'File_Manifest',7496) -MsiAssembly.add_field(4,'File_Application',7496) +MsiAssembly.add_field(3,'File_Manifest',0x1DFF) +MsiAssembly.add_field(4,'File_Application',0x1DFF) MsiAssembly.add_field(5,'Attributes',5378) MsiAssemblyName = Table('MsiAssemblyName') -MsiAssemblyName.add_field(1,'Component_',11592) +MsiAssemblyName.add_field(1,'Component_',0x2DFF) MsiAssemblyName.add_field(2,'Name',11775) MsiAssemblyName.add_field(3,'Value',3583) @@ -370,7 +370,7 @@ MsiDigitalSignature.add_field(4,'Hash',6400) MsiFileHash = Table('MsiFileHash') -MsiFileHash.add_field(1,'File_',11592) +MsiFileHash.add_field(1,'File_',0x2DFF) MsiFileHash.add_field(2,'Options',1282) MsiFileHash.add_field(3,'HashPart1',260) MsiFileHash.add_field(4,'HashPart2',260) @@ -388,14 +388,14 @@ ODBCDriver = Table('ODBCDriver') ODBCDriver.add_field(1,'Driver',11592) -ODBCDriver.add_field(2,'Component_',3400) +ODBCDriver.add_field(2,'Component_',0xDFF) ODBCDriver.add_field(3,'Description',3583) -ODBCDriver.add_field(4,'File_',3400) -ODBCDriver.add_field(5,'File_Setup',7496) +ODBCDriver.add_field(4,'File_',0xDFF) +ODBCDriver.add_field(5,'File_Setup',0x1DFF) ODBCDataSource = Table('ODBCDataSource') -ODBCDataSource.add_field(1,'DataSource',11592) -ODBCDataSource.add_field(2,'Component_',3400) +ODBCDataSource.add_field(1,'DataSource',0x2DFF) +ODBCDataSource.add_field(2,'Component_',0xDFF) ODBCDataSource.add_field(3,'Description',3583) ODBCDataSource.add_field(4,'DriverDescription',3583) ODBCDataSource.add_field(5,'Registration',1282) @@ -407,10 +407,10 @@ ODBCTranslator = Table('ODBCTranslator') ODBCTranslator.add_field(1,'Translator',11592) -ODBCTranslator.add_field(2,'Component_',3400) +ODBCTranslator.add_field(2,'Component_',0xDFF) ODBCTranslator.add_field(3,'Description',3583) -ODBCTranslator.add_field(4,'File_',3400) -ODBCTranslator.add_field(5,'File_Setup',7496) +ODBCTranslator.add_field(4,'File_',0xDFF) +ODBCTranslator.add_field(5,'File_Setup',0x1DFF) Patch = Table('Patch') Patch.add_field(1,'File_',11592) @@ -427,7 +427,7 @@ PublishComponent = Table('PublishComponent') PublishComponent.add_field(1,'ComponentId',11558) PublishComponent.add_field(2,'Qualifier',11775) -PublishComponent.add_field(3,'Component_',11592) +PublishComponent.add_field(3,'Component_',0x2DFF) PublishComponent.add_field(4,'AppData',8191) PublishComponent.add_field(5,'Feature_',3366) @@ -443,12 +443,12 @@ RadioButton.add_field(9,'Help',7986) Registry = Table('Registry') -Registry.add_field(1,'Registry',11592) +Registry.add_field(1,'Registry',0x2DFF) Registry.add_field(2,'Root',1282) Registry.add_field(3,'Key',4095) Registry.add_field(4,'Name',8191) Registry.add_field(5,'Value',7936) -Registry.add_field(6,'Component_',3400) +Registry.add_field(6,'Component_',0xDFF) RegLocator = Table('RegLocator') RegLocator.add_field(1,'Signature_',11592) @@ -459,7 +459,7 @@ RemoveFile = Table('RemoveFile') RemoveFile.add_field(1,'FileKey',11592) -RemoveFile.add_field(2,'Component_',3400) +RemoveFile.add_field(2,'Component_',0xDFF) RemoveFile.add_field(3,'FileName',8191) RemoveFile.add_field(4,'DirProperty',3400) RemoveFile.add_field(5,'InstallMode',1282) @@ -472,24 +472,24 @@ RemoveIniFile.add_field(5,'Key',3968) RemoveIniFile.add_field(6,'Value',8191) RemoveIniFile.add_field(7,'Action',1282) -RemoveIniFile.add_field(8,'Component_',3400) +RemoveIniFile.add_field(8,'Component_',0xDFF) RemoveRegistry = Table('RemoveRegistry') RemoveRegistry.add_field(1,'RemoveRegistry',11592) RemoveRegistry.add_field(2,'Root',1282) RemoveRegistry.add_field(3,'Key',4095) RemoveRegistry.add_field(4,'Name',8191) -RemoveRegistry.add_field(5,'Component_',3400) +RemoveRegistry.add_field(5,'Component_',0xDFF) ReserveCost = Table('ReserveCost') ReserveCost.add_field(1,'ReserveKey',11592) -ReserveCost.add_field(2,'Component_',3400) +ReserveCost.add_field(2,'Component_',0xDFF) ReserveCost.add_field(3,'ReserveFolder',7496) ReserveCost.add_field(4,'ReserveLocal',260) ReserveCost.add_field(5,'ReserveSource',260) SelfReg = Table('SelfReg') -SelfReg.add_field(1,'File_',11592) +SelfReg.add_field(1,'File_',0x2DFF) SelfReg.add_field(2,'Cost',5378) ServiceControl = Table('ServiceControl') @@ -498,7 +498,7 @@ ServiceControl.add_field(3,'Event',1282) ServiceControl.add_field(4,'Arguments',8191) ServiceControl.add_field(5,'Wait',5378) -ServiceControl.add_field(6,'Component_',3400) +ServiceControl.add_field(6,'Component_',0xDFF) ServiceInstall = Table('ServiceInstall') ServiceInstall.add_field(1,'ServiceInstall',11592) @@ -512,14 +512,14 @@ ServiceInstall.add_field(9,'StartName',7679) ServiceInstall.add_field(10,'Password',7679) ServiceInstall.add_field(11,'Arguments',7679) -ServiceInstall.add_field(12,'Component_',3400) +ServiceInstall.add_field(12,'Component_',0xDFF) ServiceInstall.add_field(13,'Description',8191) Shortcut = Table('Shortcut') Shortcut.add_field(1,'Shortcut',11592) -Shortcut.add_field(2,'Directory_',3400) +Shortcut.add_field(2,'Directory_',0xDFF) Shortcut.add_field(3,'Name',3968) -Shortcut.add_field(4,'Component_',3400) +Shortcut.add_field(4,'Component_',0xDFF) Shortcut.add_field(5,'Target',3400) Shortcut.add_field(6,'Arguments',7679) Shortcut.add_field(7,'Description',8191) @@ -550,10 +550,10 @@ TypeLib = Table('TypeLib') TypeLib.add_field(1,'LibID',11558) TypeLib.add_field(2,'Language',9474) -TypeLib.add_field(3,'Component_',11592) +TypeLib.add_field(3,'Component_',0x2DFF) TypeLib.add_field(4,'Version',4356) TypeLib.add_field(5,'Description',8064) -TypeLib.add_field(6,'Directory_',7496) +TypeLib.add_field(6,'Directory_',0x1DFF) TypeLib.add_field(7,'Feature_',3366) TypeLib.add_field(8,'Cost',4356) From python-checkins at python.org Sat Apr 5 17:51:11 2008 From: python-checkins at python.org (martin.v.loewis) Date: Sat, 5 Apr 2008 17:51:11 +0200 (CEST) Subject: [Python-checkins] r62169 - python/trunk/Tools/msi/merge.py Message-ID: <20080405155111.DF9FA1E4002@bag.python.org> Author: martin.v.loewis Date: Sat Apr 5 17:50:58 2008 New Revision: 62169 Added: python/trunk/Tools/msi/merge.py Log: Add script to merge msvcr90. Added: python/trunk/Tools/msi/merge.py ============================================================================== --- (empty file) +++ python/trunk/Tools/msi/merge.py Sat Apr 5 17:50:58 2008 @@ -0,0 +1,70 @@ +import msilib,os,win32com,tempfile +PCBUILD="PCBuild" +from config import * + +Win64 = "amd64" in PCBUILD + +mod_dir = os.path.join(os.environ["ProgramFiles"], "Common Files", "Merge Modules") +if Win64: + modules = ["Microsoft_VC90_CRT_x86.msm", "policy_8_0_Microsoft_VC80_CRT_x86_x64.msm"] + msi = "python-%s.amd64.msi" % full_current_version +else: + modules = ["Microsoft_VC90_CRT_x86.msm","policy_8_0_Microsoft_VC80_CRT_x86.msm"] + msi = "python-%s.msi" % full_current_version +for i, n in enumerate(modules): + modules[i] = os.path.join(mod_dir, n) + +def merge(msi, feature, rootdir, modules): + cab_and_filecount = [] + # Step 1: Merge databases, extract cabfiles + m = msilib.MakeMerge2() + m.OpenLog("merge.log") + print "Opened Log" + m.OpenDatabase(msi) + print "Opened DB" + for module in modules: + print module + m.OpenModule(module,0) + print "Opened Module",module + m.Merge(feature, rootdir) + print "Errors:" + for e in m.Errors: + print e.Type, e.ModuleTable, e.DatabaseTable + print " Modkeys:", + for s in e.ModuleKeys: print s, + print + print " DBKeys:", + for s in e.DatabaseKeys: print s, + print + cabname = tempfile.mktemp(suffix=".cab") + m.ExtractCAB(cabname) + cab_and_filecount.append((cabname, len(m.ModuleFiles))) + m.CloseModule() + m.CloseDatabase(True) + m.CloseLog() + + # Step 2: Add CAB files + i = msilib.MakeInstaller() + db = i.OpenDatabase(msi, win32com.client.constants.msiOpenDatabaseModeTransact) + + v = db.OpenView("SELECT LastSequence FROM Media") + v.Execute(None) + maxmedia = -1 + while 1: + r = v.Fetch() + if not r: break + seq = r.IntegerData(1) + if seq > maxmedia: + maxmedia = seq + print "Start of Media", maxmedia + + for cabname, count in cab_and_filecount: + stream = "merged%d" % maxmedia + msilib.add_data(db, "Media", + [(maxmedia+1, maxmedia+count, None, "#"+stream, None, None)]) + msilib.add_stream(db, stream, cabname) + os.unlink(cabname) + maxmedia += count + db.Commit() + +merge(msi, "SharedCRT", "TARGETDIR", modules) From buildbot at python.org Sat Apr 5 17:52:11 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 15:52:11 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080405155223.E6CF21E4002@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/195 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'1001-1001-1001-1001-1001' Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'2000-2000-2000-2000-2000' Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'0002-0002-0002-0002-0002' 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Apr 5 17:57:46 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 5 Apr 2008 17:57:46 +0200 (CEST) Subject: [Python-checkins] r62170 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080405155746.7BE871E4002@bag.python.org> Author: andrew.kuchling Date: Sat Apr 5 17:57:46 2008 New Revision: 62170 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Markup fixes; write PEP 3118 section Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Sat Apr 5 17:57:46 2008 @@ -156,15 +156,18 @@ .. seealso:: - http://bugs.python.org: The Python bug tracker. + http://bugs.python.org + The Python bug tracker. - http://bugs.jython.org: The Jython bug tracker. + http://bugs.jython.org: + The Jython bug tracker. - http://roundup.sourceforge.net/: Roundup downloads and documentation. + http://roundup.sourceforge.net/ + Roundup downloads and documentation. -New Documentation Format: ReStructured Text --------------------------------------------------- +New Documentation Format: ReStructured Text Using Sphinx +----------------------------------------------------------- Since the Python project's inception around 1989, the documentation had been written using LaTeX. At that time, most documentation was @@ -191,16 +194,20 @@ a markup commonly used in the Python community that supports custom extensions and directives. Sphinx concentrates on HTML output, producing attractively styled -and modern HTML, but printed output is still supported through -conversion to LaTeX as an output format. +and modern HTML, though printed output is still supported through +conversion to LaTeX. Sphinx is a standalone package that +can be used in documenting other projects. .. seealso:: - `Docutils `__: The fundamental - reStructured Text parser and toolset. + :ref:`documenting-index` + Describes how to write for Python's documentation. + + `Sphinx `__ + Documentation and code for the Sphinx toolchain. - :ref:`documenting-index`: Describes how to write for - Python's documentation. + `Docutils `__ + The underlying reStructured Text parser and toolset. PEP 343: The 'with' statement @@ -487,8 +494,7 @@ .. seealso:: :pep:`370` - XXX - - PEP written by XXX; implemented by Christian Heimes. + PEP written by XXX; implemented by Christian Heimes. .. ====================================================================== @@ -633,9 +639,8 @@ ===================================================== The ``print`` statement becomes the :func:`print` function in Python 3.0. -Making :func:`print` a function makes it easier to replace within a -module by doing 'def print(...)' or importing a new -function from somewhere else. +Making :func:`print` a function makes it easier to change +by doing 'def print(...)' or importing a new function from somewhere else. Python 2.6 has a ``__future__`` import that removes ``print`` as language syntax, letting you use the functional form instead. For example:: @@ -750,13 +755,50 @@ PEP 3118: Revised Buffer Protocol ===================================================== -The buffer protocol is a C-level API that lets Python extensions -XXX +The buffer protocol is a C-level API that lets Python types +exchange pointers into their internal representations. A +memory-mapped file can be viewed as a buffer of characters, for +example, and this lets another module such as :mod:`re` +treat memory-mapped files as a string of characters to be searched. + +The primary users of the buffer protocol are numeric-processing +packages such as NumPy, which can expose the internal representation +of arrays so that callers can write data directly into an array instead +of going through a slower API. This PEP updates the buffer protocol in light of experience +from NumPy development, adding a number of new features +such as indicating the shape of an array, +locking memory . + +The most important new C API function is +``PyObject_GetBuffer(PyObject *obj, Py_buffer *view, int flags)``, which +takes an object and a set of flags, and fills in the +``Py_buffer`` structure with information +about the object's memory representation. Objects +can use this operation to lock memory in place +while an external caller could be modifying the contents, +so there's a corresponding +``PyObject_ReleaseBuffer(PyObject *obj, Py_buffer *view)`` to +indicate that the external caller is done. + +The **flags** argument to :cfunc:`PyObject_GetBuffer` specifies +constraints upon the memory returned. Some examples are: + + * :const:`PyBUF_WRITABLE` indicates that the memory must be writable. + + * :const:`PyBUF_LOCK` requests a read-only or exclusive lock on the memory. + + * :const:`PyBUF_C_CONTIGUOUS` and :const:`PyBUF_F_CONTIGUOUS` + requests a C-contiguous (last dimension varies the fastest) or + Fortran-contiguous (first dimension varies the fastest) layout. + +.. XXX this feature is not in 2.6 docs yet .. seealso:: :pep:`3118` - Revising the buffer protocol - PEP written by Travis Oliphant and Carl Banks. + PEP written by Travis Oliphant and Carl Banks; implemented by + Travis Oliphant. + .. ====================================================================== From python-checkins at python.org Sat Apr 5 19:28:37 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 5 Apr 2008 19:28:37 +0200 (CEST) Subject: [Python-checkins] r62171 - doctools/trunk/sphinx/ext/autodoc.py Message-ID: <20080405172837.79E951E4002@bag.python.org> Author: georg.brandl Date: Sat Apr 5 19:28:37 2008 New Revision: 62171 Modified: doctools/trunk/sphinx/ext/autodoc.py Log: Properly expand tabs in docstrings. Modified: doctools/trunk/sphinx/ext/autodoc.py ============================================================================== --- doctools/trunk/sphinx/ext/autodoc.py (original) +++ doctools/trunk/sphinx/ext/autodoc.py Sat Apr 5 19:28:37 2008 @@ -41,7 +41,8 @@ """ if not s or s.isspace(): return [''] - nl = s.expandtabs().rstrip().find('\n') + s = s.expandtabs() + nl = s.rstrip().find('\n') if nl == -1: # Only one line... return [s.strip(), ''] From python-checkins at python.org Sat Apr 5 19:45:59 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 5 Apr 2008 19:45:59 +0200 (CEST) Subject: [Python-checkins] r62173 - python/trunk/Doc/library/pickle.rst Message-ID: <20080405174559.E0D151E4002@bag.python.org> Author: georg.brandl Date: Sat Apr 5 19:45:58 2008 New Revision: 62173 Modified: python/trunk/Doc/library/pickle.rst Log: Mention that the tuple returned by __reduce__ is pickled as normal. Modified: python/trunk/Doc/library/pickle.rst ============================================================================== --- python/trunk/Doc/library/pickle.rst (original) +++ python/trunk/Doc/library/pickle.rst Sat Apr 5 19:45:58 2008 @@ -480,8 +480,9 @@ namespace to determine the object's module. When a tuple is returned, it must be between two and five elements long. -Optional elements can either be omitted, or ``None`` can be provided as their -value. The semantics of each element are: +Optional elements can either be omitted, or ``None`` can be provided as their +value. The contents of this tuple are pickled as normal and used to +reconstruct the object at unpickling time. The semantics of each element are: * A callable object that will be called to create the initial version of the object. The next element of the tuple will provide arguments for this callable, From python-checkins at python.org Sat Apr 5 20:15:30 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 5 Apr 2008 20:15:30 +0200 (CEST) Subject: [Python-checkins] r62174 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080405181530.C15301E4002@bag.python.org> Author: andrew.kuchling Date: Sat Apr 5 20:15:30 2008 New Revision: 62174 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Write PEP 3119 section Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Sat Apr 5 20:15:30 2008 @@ -807,41 +807,142 @@ PEP 3119: Abstract Base Classes ===================================================== -XXX write this -- this section is currently just brief notes. +Some object-oriented languages such as Java support interfaces: declarations +that a class has a given set of methods or supports a given access protocol. +Abstract Base Classes (or ABCs) are an equivalent feature for Python. The ABC +support consists of an :mod:`abc` module containing a metaclass called +:class:`ABCMeta`, special handling +of this metaclass by the :func:`isinstance` and :func:`issubclass` built-ins, +and a collection of basic ABCs that the Python developers think will be widely +useful. + +Let's say you have a particular class and wish to know whether it supports +dictionary-style access. The phrase "dictionary-style" is vague, however. +It probably means that accessing items with ``obj[1]`` works. +Does it imply that setting items with ``obj[2] = value`` works? +Or that the object will have :meth:`keys`, :meth:`values`, and :meth:`items` +methods? What about the iterative variants such as :meth:`iterkeys`? :meth:`copy` +and :meth:`update`? Iterating over the object with :func:`iter`? + +Python 2.6 includes a number of different ABCs in the :mod:`collections` +module. :class:`Iterable` indicates that a class defines :meth:`__iter__`, +and :class:`Container` means the class supports ``x in y`` expressions +by defining a :meth:`__contains__` method. The basic dictionary interface of +getting items, setting items, and +:meth:`keys`, :meth:`values`, and :meth:`items`, is defined by the +:class:`MutableMapping` ABC. + +You can derive your own classes from a particular ABC +to indicate they support that ABC's interface:: -How to identify a file object? + import collections + + class Storage(collections.MutableMapping): + ... -ABCs are a collection of classes describing various interfaces. -Classes can derive from an ABC to indicate they support that ABC's -interface. Concrete classes should obey the semantics specified by -an ABC, but Python can't check this; it's up to the implementor. -A metaclass lets you declare that an existing class or type -derives from a particular ABC. You can even +Alternatively, you could write the class without deriving from +the desired ABC and instead register the class by +calling the ABC's :meth:`register` method:: + + import collections + + class Storage: + ... + + collections.MutableMapping.register(Storage) + +For classes that you write, deriving from the ABC is probably clearer. +The :meth:`register` method is useful when you've written a new +ABC that can describe an existing type or class, or if you want +to declare that some third-party class implements an ABC. +For example, if you defined a :class:`PrintableType` ABC, +it's legal to do: + + # Register Python's types + PrintableType.register(int) + PrintableType.register(float) + PrintableType.register(str) + +Classes should obey the semantics specified by an ABC, but +Python can't check this; it's up to the class author to +understand the ABC's requirements and to implement the code accordingly. + +To check whether an object supports a particular interface, you can +now write:: + + def func(d): + if not isinstance(d, collections.MutableMapping): + raise ValueError("Mapping object expected, not %r" % d) + +(Don't feel that you must now begin writing lots of checks as in the +above example. Python has a strong tradition of duck-typing, where +explicit type-checking isn't done and code simply calls methods on +an object, trusting that those methods will be there and raising an +exception if they aren't. Be judicious in checking for ABCs +and only do it where it helps.) -class AppendableSequence: - __metaclass__ = ABCMeta +You can write your own ABCs by using ``abc.ABCMeta`` as the +metaclass in a class definition:: -AppendableSequence.register(list) -assert issubclass(list, AppendableSequence) -assert isinstance([], AppendableSequence) + from abc import ABCMeta + + class Drawable(): + __metaclass__ = ABCMeta + + def draw(self, x, y, scale=1.0): + pass - at abstractmethod decorator -- you can't instantiate classes w/ -an abstract method. + def draw_doubled(self, x, y): + self.draw(x, y, scale=2.0) + + + class Square(Drawable): + def draw(self, x, y, scale): + ... + + +In the :class:`Drawable` ABC above, the :meth:`draw_doubled` method +renders the object at twice its size and can be implemented in terms +of other methods described in :class:`Drawable`. Classes implementing +this ABC therefore don't need to provide their own implementation +of :meth:`draw_doubled`, though they can do so. An implementation +of :meth:`draw` is necessary, though; the ABC can't provide +a useful generic implementation. You +can apply the ``@abstractmethod`` decorator to methods such as +:meth:`draw` that must be implemented; Python will +then raise an exception for classes that +don't define the method:: + + class Drawable(): + __metaclass__ = ABCMeta + + @abstractmethod + def draw(self, x, y, scale): + pass + +Note that the exception is only raised when you actually +try to create an instance of a subclass without the method:: + + >>> s=Square() + Traceback (most recent call last): + File "", line 1, in + TypeError: Can't instantiate abstract class Square with abstract methods draw + >>> -:: +Abstract data attributes can be declared using the ``@abstractproperty`` decorator:: - @abstractproperty decorator @abstractproperty def readonly(self): return self._x +Subclasses must then define a :meth:`readonly` property .. seealso:: :pep:`3119` - Introducing Abstract Base Classes PEP written by Guido van Rossum and Talin. - Implemented by XXX. + Implemented by Guido van Rossum. Backported to 2.6 by Benjamin Aranguren, with Alex Martelli. .. ====================================================================== From buildbot at python.org Sat Apr 5 20:55:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 18:55:25 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080405185525.F2A701E4014@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/330 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 21:42:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 19:42:33 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080405194233.C30A91E4014@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%203.0/builds/754 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: georg.brandl,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_time sincerely, -The Buildbot From python-checkins at python.org Sat Apr 5 21:47:47 2008 From: python-checkins at python.org (skip.montanaro) Date: Sat, 5 Apr 2008 21:47:47 +0200 (CEST) Subject: [Python-checkins] r62177 - python/trunk/Modules/timemodule.c Message-ID: <20080405194747.70DD51E4014@bag.python.org> Author: skip.montanaro Date: Sat Apr 5 21:47:47 2008 New Revision: 62177 Modified: python/trunk/Modules/timemodule.c Log: Declare inittimezone static. Modified: python/trunk/Modules/timemodule.c ============================================================================== --- python/trunk/Modules/timemodule.c (original) +++ python/trunk/Modules/timemodule.c Sat Apr 5 21:47:47 2008 @@ -620,7 +620,7 @@ #endif /* HAVE_MKTIME */ #ifdef HAVE_WORKING_TZSET -void inittimezone(PyObject *module); +static void inittimezone(PyObject *module); static PyObject * time_tzset(PyObject *self, PyObject *unused) @@ -656,7 +656,8 @@ should not be relied on."); #endif /* HAVE_WORKING_TZSET */ -void inittimezone(PyObject *m) { +static void +inittimezone(PyObject *m) { /* This code moved from inittime wholesale to allow calling it from time_tzset. In the future, some parts of it can be moved back (for platforms that don't HAVE_WORKING_TZSET, when we know what they From buildbot at python.org Sat Apr 5 22:07:44 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 20:07:44 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080405200757.2B4F51E4014@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%203.0/builds/247 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 5 22:11:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 05 Apr 2008 20:11:57 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080405201158.26A591E4014@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/152 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 2 tests failed: test_getargs2 test_smtplib ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 01:39:15 2008 From: python-checkins at python.org (thomas.wouters) Date: Sun, 6 Apr 2008 01:39:15 +0200 (CEST) Subject: [Python-checkins] r62179 - in python/trunk: Lib/distutils/tests/test_sysconfig.py setup.py Message-ID: <20080405233915.904A01E4014@bag.python.org> Author: thomas.wouters Date: Sun Apr 6 01:39:15 2008 New Revision: 62179 Modified: python/trunk/Lib/distutils/tests/test_sysconfig.py python/trunk/setup.py Log: Fix test_distutils to not fail when running 'make test' from a Python build directory that is not the source directory (ie, one created using '/path/to/source/configure'.) Leaves this test very slightly degraded in that particular case, compared to the build-in-sourcedir case, but that case isn't a particularly strong test either: neither test the actual path that will be used after installing. There isn't a particularly good way to test this, and a poor test beats a failing test. Modified: python/trunk/Lib/distutils/tests/test_sysconfig.py ============================================================================== --- python/trunk/Lib/distutils/tests/test_sysconfig.py (original) +++ python/trunk/Lib/distutils/tests/test_sysconfig.py Sun Apr 6 01:39:15 2008 @@ -19,7 +19,27 @@ # test for pythonxx.lib? def test_get_python_inc(self): - inc_dir = sysconfig.get_python_inc() + # The check for srcdir is copied from Python's setup.py, + # and is necessary to make this test pass when building + # Python in a directory other than the source directory. + (srcdir,) = sysconfig.get_config_vars('srcdir') + if not srcdir: + inc_dir = sysconfig.get_python_inc() + else: + # This test is not really a proper test: when building + # Python from source, even in the same directory, + # we won't be testing the same thing as when running + # distutils' tests on an installed Python. Nevertheless, + # let's try to do our best: if we are running Python's + # unittests from a build directory that is not the source + # directory, the normal inc_dir will exist, it will just not + # contain anything of interest. + inc_dir = sysconfig.get_python_inc() + self.assert_(os.path.isdir(inc_dir)) + # Now test the source location, to make sure Python.h does + # exist. + inc_dir = os.path.join(os.getcwd(), srcdir, 'Include') + inc_dir = os.path.normpath(inc_dir) self.assert_(os.path.isdir(inc_dir), inc_dir) python_h = os.path.join(inc_dir, "Python.h") self.assert_(os.path.isfile(python_h), python_h) Modified: python/trunk/setup.py ============================================================================== --- python/trunk/setup.py (original) +++ python/trunk/setup.py Sun Apr 6 01:39:15 2008 @@ -119,6 +119,8 @@ raise ValueError("No source directory; cannot proceed.") # Figure out the location of the source code for extension modules + # (This logic is copied in distutils.test.test_sysconfig, + # so building in a separate directory does not break test_distutils.) moddir = os.path.join(os.getcwd(), srcdir, 'Modules') moddir = os.path.normpath(moddir) srcdir, tail = os.path.split(moddir) From buildbot at python.org Sun Apr 6 02:32:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 00:32:54 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080406003303.414161E4025@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/764 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 20 tests failed: test_array test_bool test_cookielib test_deque test_distutils test_exceptions test_filecmp test_fileio test_gzip test_io test_mailbox test_marshal test_multibytecodec test_netrc test_set test_urllib test_urllib2 test_uu test_zipfile test_zipimport ====================================================================== ERROR: test_tofromfile (test.test_array.ByteTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tofromfile (test.test_array.FloatTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 292, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_installation (distutils.tests.test_install_scripts.InstallScriptsTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\distutils\tests\support.py", line 34, in tearDown shutil.rmtree(d) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 188, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 186, in rmtree os.rmdir(path) WindowsError: [Error 145] The directory is not empty: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpjtyzg5' ====================================================================== ERROR: test_readline (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 180, in test_readline f = io.open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_with_open (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 222, in test_with_open with open(test_support.TESTFN, "wb", bufsize) as f: File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBasicIO (test.test_io.TextIOWrapperTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 819, in testBasicIO f = io.open(test_support.TESTFN, "w+", encoding=enc) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 2] No such file or directory: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_ints (test.test_marshal.IntTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 34, in test_ints self.helper(expected) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_floats (test.test_marshal.FloatTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 72, in test_floats self.helper(float(expected)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bytes (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 103, in test_bytes self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_string (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 99, in test_string self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 95, in test_unicode self.helper(marshal.loads(marshal.dumps(s))) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_dict (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 128, in test_dict self.helper(self.d) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_list (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 131, in test_list self.helper(list(self.d.items())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_sets (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 138, in test_sets self.helper(constructor(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tuple (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 134, in test_tuple self.helper(tuple(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bug1728403 (test.test_multibytecodec.Test_StreamReader) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_multibytecodec.py", line 143, in test_bug1728403 f = open(TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_case_1 (test.test_netrc.NetrcTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_netrc.py", line 28, in setUp fp = open(temp_filename, mode) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_getcode (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_geturl (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_info (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_interface (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_basic (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_copy (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_0_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_5_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_8193_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib2.py", line 607, in test_file f = open(TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_decode (test.test_uu.UUFileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_uu.py", line 158, in test_decode uu.decode(f) File "C:\buildbot\work\3.0.heller-windows\build\lib\uu.py", line 112, in decode raise Error('Cannot overwrite existing file: %s' % out_file) uu.Error: Cannot overwrite existing file: @testo ====================================================================== ERROR: test_decodetwice (test.test_uu.UUFileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_uu.py", line 175, in test_decodetwice f = open(self.tmpin, 'rb') File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 2] No such file or directory: '@testi' ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBadMagic (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 160, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 609, in __init__ self.fp = io.open(file, modeDict[mode]) File "C:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\junk95142.zip' sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 02:49:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 00:49:18 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080406004918.EC7EF1E4014@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/332 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 03:42:06 2008 From: python-checkins at python.org (mark.hammond) Date: Sun, 6 Apr 2008 03:42:06 +0200 (CEST) Subject: [Python-checkins] r62180 - python/trunk/PC/_winreg.c Message-ID: <20080406014206.D40671E4014@bag.python.org> Author: mark.hammond Date: Sun Apr 6 03:42:06 2008 New Revision: 62180 Modified: python/trunk/PC/_winreg.c Log: >From issue 1753245 - better _winreg support for x64. Adds _winreg.DisableReflectionKey, EnableReflectionKey, QueryReflectionKey, KEY_WOW64_64KEY and KEY_WOW64_32KEY. Modified: python/trunk/PC/_winreg.c ============================================================================== --- python/trunk/PC/_winreg.c (original) +++ python/trunk/PC/_winreg.c Sun Apr 6 03:42:06 2008 @@ -290,6 +290,22 @@ "2048 bytes) should be stored as files with the filenames stored in \n" "the configuration registry. This helps the registry perform efficiently."); +PyDoc_STRVAR(DisableReflectionKey_doc, +"Disables registry reflection for 32bit processes running on a 64bit\n" +"Operating System. Will generally raise NotImplemented if executed on\n" +"a 32bit Operating System.\n" +"If the key is not on the reflection list, the function succeeds but has no effect.\n" +"Disabling reflection for a key does not affect reflection of any subkeys."); + +PyDoc_STRVAR(EnableReflectionKey_doc, +"Restores registry reflection for the specified disabled key.\n" +"Will generally raise NotImplemented if executed on a 32bit Operating System.\n" +"Restoring reflection for a key does not affect reflection of any subkeys."); + +PyDoc_STRVAR(QueryReflectionKey_doc, +"bool = QueryReflectionKey(hkey) - Determines the reflection state for the specified key.\n" +"Will generally raise NotImplemented if executed on a 32bit Operating System.\n"); + /* PyHKEY docstrings */ PyDoc_STRVAR(PyHKEY_doc, "PyHKEY Object - A Python object, representing a win32 registry key.\n" @@ -1459,12 +1475,122 @@ return Py_None; } +static PyObject * +PyDisableReflectionKey(PyObject *self, PyObject *args) +{ + HKEY hKey; + PyObject *obKey; + HMODULE hMod; + typedef LONG (WINAPI *RDRKFunc)(HKEY); + RDRKFunc pfn = NULL; + LONG rc; + + if (!PyArg_ParseTuple(args, "O:DisableReflectionKey", &obKey)) + return NULL; + if (!PyHKEY_AsHKEY(obKey, &hKey, FALSE)) + return NULL; + + // Only available on 64bit platforms, so we must load it + // dynamically. + hMod = GetModuleHandle("advapi32.dll"); + if (hMod) + pfn = (RDRKFunc)GetProcAddress(hMod, + "RegDisableReflectionKey"); + if (!pfn) { + PyErr_SetString(PyExc_NotImplementedError, + "not implemented on this platform"); + return NULL; + } + Py_BEGIN_ALLOW_THREADS + rc = (*pfn)(hKey); + Py_END_ALLOW_THREADS + if (rc != ERROR_SUCCESS) + return PyErr_SetFromWindowsErrWithFunction(rc, + "RegDisableReflectionKey"); + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +PyEnableReflectionKey(PyObject *self, PyObject *args) +{ + HKEY hKey; + PyObject *obKey; + HMODULE hMod; + typedef LONG (WINAPI *RERKFunc)(HKEY); + RERKFunc pfn = NULL; + LONG rc; + + if (!PyArg_ParseTuple(args, "O:EnableReflectionKey", &obKey)) + return NULL; + if (!PyHKEY_AsHKEY(obKey, &hKey, FALSE)) + return NULL; + + // Only available on 64bit platforms, so we must load it + // dynamically. + hMod = GetModuleHandle("advapi32.dll"); + if (hMod) + pfn = (RERKFunc)GetProcAddress(hMod, + "RegEnableReflectionKey"); + if (!pfn) { + PyErr_SetString(PyExc_NotImplementedError, + "not implemented on this platform"); + return NULL; + } + Py_BEGIN_ALLOW_THREADS + rc = (*pfn)(hKey); + Py_END_ALLOW_THREADS + if (rc != ERROR_SUCCESS) + return PyErr_SetFromWindowsErrWithFunction(rc, + "RegEnableReflectionKey"); + Py_INCREF(Py_None); + return Py_None; +} + +static PyObject * +PyQueryReflectionKey(PyObject *self, PyObject *args) +{ + HKEY hKey; + PyObject *obKey; + HMODULE hMod; + typedef LONG (WINAPI *RQRKFunc)(HKEY, BOOL *); + RQRKFunc pfn = NULL; + BOOL result; + LONG rc; + + if (!PyArg_ParseTuple(args, "O:QueryReflectionKey", &obKey)) + return NULL; + if (!PyHKEY_AsHKEY(obKey, &hKey, FALSE)) + return NULL; + + // Only available on 64bit platforms, so we must load it + // dynamically. + hMod = GetModuleHandle("advapi32.dll"); + if (hMod) + pfn = (RQRKFunc)GetProcAddress(hMod, + "RegQueryReflectionKey"); + if (!pfn) { + PyErr_SetString(PyExc_NotImplementedError, + "not implemented on this platform"); + return NULL; + } + Py_BEGIN_ALLOW_THREADS + rc = (*pfn)(hKey, &result); + Py_END_ALLOW_THREADS + if (rc != ERROR_SUCCESS) + return PyErr_SetFromWindowsErrWithFunction(rc, + "RegQueryReflectionKey"); + return PyBool_FromLong(rc); +} + static struct PyMethodDef winreg_methods[] = { {"CloseKey", PyCloseKey, METH_VARARGS, CloseKey_doc}, {"ConnectRegistry", PyConnectRegistry, METH_VARARGS, ConnectRegistry_doc}, {"CreateKey", PyCreateKey, METH_VARARGS, CreateKey_doc}, {"DeleteKey", PyDeleteKey, METH_VARARGS, DeleteKey_doc}, {"DeleteValue", PyDeleteValue, METH_VARARGS, DeleteValue_doc}, + {"DisableReflectionKey", PyDisableReflectionKey, METH_VARARGS, DisableReflectionKey_doc}, + {"EnableReflectionKey", PyEnableReflectionKey, METH_VARARGS, EnableReflectionKey_doc}, {"EnumKey", PyEnumKey, METH_VARARGS, EnumKey_doc}, {"EnumValue", PyEnumValue, METH_VARARGS, EnumValue_doc}, {"ExpandEnvironmentStrings", PyExpandEnvironmentStrings, METH_VARARGS, @@ -1476,6 +1602,7 @@ {"QueryValue", PyQueryValue, METH_VARARGS, QueryValue_doc}, {"QueryValueEx", PyQueryValueEx, METH_VARARGS, QueryValueEx_doc}, {"QueryInfoKey", PyQueryInfoKey, METH_VARARGS, QueryInfoKey_doc}, + {"QueryReflectionKey",PyQueryReflectionKey,METH_VARARGS, QueryReflectionKey_doc}, {"SaveKey", PySaveKey, METH_VARARGS, SaveKey_doc}, {"SetValue", PySetValue, METH_VARARGS, SetValue_doc}, {"SetValueEx", PySetValueEx, METH_VARARGS, SetValueEx_doc}, @@ -1544,6 +1671,12 @@ ADD_INT(KEY_WRITE); ADD_INT(KEY_EXECUTE); ADD_INT(KEY_ALL_ACCESS); +#ifdef KEY_WOW64_64KEY + ADD_INT(KEY_WOW64_64KEY); +#endif +#ifdef KEY_WOW64_32KEY + ADD_INT(KEY_WOW64_32KEY); +#endif ADD_INT(REG_OPTION_RESERVED); ADD_INT(REG_OPTION_NON_VOLATILE); ADD_INT(REG_OPTION_VOLATILE); From buildbot at python.org Sun Apr 6 03:42:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 01:42:23 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu trunk Message-ID: <20080406014224.0D93A1E4014@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%20trunk/builds/457 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,georg.brandl,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.ConnectedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-ubuntu-sparc/build/Lib/test/test_socket_ssl.py", line 50, in testBasic f = self.urlopen('https://sf.net') File "/home/pybot/buildarea/trunk.klose-ubuntu-sparc/build/Lib/test/test_socket_ssl.py", line 37, in urlopen raise last_exc IOError: [Errno socket error] [Errno -2] Name or service not known ====================================================================== ERROR: testTimeout (test.test_socket_ssl.ConnectedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-ubuntu-sparc/build/Lib/test/test_socket_ssl.py", line 69, in testTimeout s.connect(ADDR) File "", line 1, in connect gaierror: [Errno -2] Name or service not known make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 03:47:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 01:47:49 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080406014749.2B74D1E4014@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/3 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.hammond BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 04:12:47 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 02:12:47 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080406021247.3AB021E4020@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/304 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,georg.brandl,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testTimeout (test.test_socket_ssl.ConnectedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_socket_ssl.py", line 69, in testTimeout s.connect(ADDR) File "", line 1, in connect gaierror: [Errno -2] Name or service not known make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 05:19:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 03:19:25 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080406031925.D28DE1E4014@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1245 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: 20 tests failed: test_array test_bufio test_cmd_line_script test_cookielib test_deque test_file test_filecmp test_fileinput test_genericpath test_gzip test_io test_iter test_mailbox test_multibytecodec test_set test_urllib test_urllib2 test_uu test_zipfile test_zipimport ====================================================================== ERROR: test_tofromfile (test.test_array.UnsignedShortTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_array.py", line 166, in test_tofromfile f = open(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_primepat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 56, in test_primepat self.drive_one("1234567890\00\01\02\03\04\05\06") File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 49, in drive_one self.try_one(teststring) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_zipfile (test.test_cmd_line_script.CmdLineTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_cmd_line_script.py", line 160, in test_zipfile self._check_script(zip_name, None, zip_name, '') File "C:\buildbot\work\trunk.heller-windows\build\lib\contextlib.py", line 33, in __exit__ self.gen.throw(type, value, traceback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_cmd_line_script.py", line 36, in temp_dir shutil.rmtree(dirname) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 184, in rmtree onerror(os.remove, fullname, sys.exc_info()) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 182, in rmtree os.remove(fullname) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpbjqm24\\test_zip.zip' ====================================================================== ERROR: test_zipfile_compiled (test.test_cmd_line_script.CmdLineTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_cmd_line_script.py", line 167, in test_zipfile_compiled self._check_script(zip_name, None, zip_name, '') File "C:\buildbot\work\trunk.heller-windows\build\lib\contextlib.py", line 33, in __exit__ self.gen.throw(type, value, traceback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_cmd_line_script.py", line 36, in temp_dir shutil.rmtree(dirname) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 184, in rmtree onerror(os.remove, fullname, sys.exc_info()) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 182, in rmtree os.remove(fullname) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'c:\\docume~1\\theller\\locals~1\\temp\\tmplf_gao\\test_zip.zip' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 78, in test_maxlen fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 284, in test_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAttributes (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testErrors (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testMethods (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testReadinto (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testRepr (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWeakRefs (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWritelinesIntegers (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWritelinesIntegersUserList (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWritelinesNonString (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWritelinesUserList (test.test_file.AutoFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 14, in setUp self.f = open(TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIteration (test.test_file.OtherFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 323, in testIteration os.unlink(TESTFN) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: testTruncateOnWindows (test.test_file.OtherFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 184, in testTruncateOnWindows os.unlink(TESTFN) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: testUnicodeOpen (test.test_file.OtherFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 145, in testUnicodeOpen f = open(unicode(TESTFN), "w") IOError: [Errno 13] Permission denied: u'@test' ====================================================================== ERROR: testExit (test.test_file.FileSubclassTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 337, in testExit with C(TESTFN, 'w') as f: File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 332, in __init__ file.__init__(self, *args) IOError: [Errno 13] Permission denied: '@test' ====================================================================== FAIL: testSetBufferSize (test.test_file.OtherFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_file.py", line 180, in testSetBufferSize self.fail('error setting buffer size %d: %s' % (s, str(msg))) AssertionError: error setting buffer size -1: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_different (test.test_filecmp.FileCompareTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_filecmp.py", line 13, in setUp output = open(name, 'w') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_matching (test.test_filecmp.FileCompareTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_filecmp.py", line 13, in setUp output = open(name, 'w') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 48, in test_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 85, in test_readline self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 98, in test_readlines self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 112, in test_seek_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 132, in test_seek_whence self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 144, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_buffered_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 165, in test_buffered_file_io f = io.open(test_support.TESTFN, "wb") File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_close_flushes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 251, in test_close_flushes f = io.open(test_support.TESTFN, "wb") File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_destructor (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 245, in test_destructor f = MyFileIO(test_support.TESTFN, "w") IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_large_file_ops (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 211, in test_large_file_ops f = io.open(test_support.TESTFN, "w+b", 0) File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_raw_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 151, in test_raw_file_io f = io.open(test_support.TESTFN, "wb", buffering=0) File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_readline (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 179, in test_readline f = io.open(test_support.TESTFN, "wb") File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: test_with_open (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 221, in test_with_open with open(test_support.TESTFN, "wb", bufsize) as f: IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBasicIO (test.test_io.TextIOWrapperTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 818, in testBasicIO f = io.open(test_support.TESTFN, "w+", encoding=enc) File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 155, in open closefd) IOError: [Errno 13] Permission denied ====================================================================== ERROR: Test seek/tell using the StatefulIncrementalDecoder. ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 944, in testSeekAndTell testSeekAndTellWithData(input) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 924, in testSeekAndTellWithData decoded = f.read() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1472, in read decoder = self._decoder or self._get_decoder() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1269, in _get_decoder decoder = make_decoder(self._errors) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 523, in __init__ codecs.IncrementalDecoder.__init__(self, errors) AttributeError: 'NoneType' object has no attribute 'IncrementalDecoder' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_labels (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_bug1728403 (test.test_multibytecodec.Test_StreamReader) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_multibytecodec.py", line 148, in test_bug1728403 os.unlink(TESTFN) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_cyclical_print (test.test_set.TestSet) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_set.py", line 286, in test_cyclical_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_cyclical_print (test.test_set.TestSetSubclass) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_set.py", line 286, in test_cyclical_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 240, in testAbsoluteArcnames zipfp.write(TESTFN, "/absolute") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 266, in testAppendToNonZipFile zipfp.write(TESTFN, TESTFN) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 250, in testAppendToZipFile zipfp.write(TESTFN, TESTFN) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 203, in testDeflated self.zipTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 44, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 38, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 307, in testExtract zipfp.writestr(fpath, fdata) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 336, in testExtractAll zipfp.writestr(fpath, fdata) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 223, in testIterlinesDeflated self.zipIterlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 179, in zipIterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 38, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 198, in testIterlinesStored self.zipIterlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 179, in zipIterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 38, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 207, in testOpenDeflated self.zipOpenTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 107, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 133, in testOpenStored self.zipOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 107, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testRandomOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 211, in testRandomOpenDeflated self.zipRandomOpenTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 136, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testRandomOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 153, in testRandomOpenStored self.zipRandomOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 136, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 215, in testReadlineDeflated self.zipReadlineTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 156, in zipReadlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testReadlineStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 190, in testReadlineStored self.zipReadlineTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 156, in zipReadlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testReadlineStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 219, in testReadlinesDeflated self.zipReadlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 168, in zipReadlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 194, in testReadlinesStored self.zipReadlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 168, in zipReadlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 5] Access is denied: '@test2' ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 104, in testStored self.zipTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 44, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp = zipfile.ZipFile(f, "w", compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: '@test2' ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 2] The system cannot find the file specified: '@test2' ====================================================================== ERROR: test_PerFileCompression (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 286, in test_PerFileCompression zipfp.write(TESTFN, 'storeme', zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_PerFileCompression (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: test_WriteDefaultName (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 279, in test_WriteDefaultName zipfp.write(TESTFN) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_WriteDefaultName (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 358, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testClosedZipRaisesRuntimeError (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 627, in testClosedZipRaisesRuntimeError zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testCreateNonExistentFileForAppend (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 565, in testCreateNonExistentFileForAppend zf.writestr(filename, content) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIsZipValidFile (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 604, in testIsZipValidFile zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_BadOpenMode (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 648, in test_BadOpenMode zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_NullByteInFilename (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 682, in test_NullByteInFilename zipf.writestr("foo.txt\x00qqq", "O, for a Muse of Fire!") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_Read0 (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 660, in test_Read0 zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePyfile (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 490, in testWritePyfile zipfp.writepy(fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 1174, in writepy self.write(fname, arcname) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePythonDirectory (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 538, in testWritePythonDirectory zipfp.writepy(TESTFN2) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 1166, in writepy self.write(fname, arcname) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePythonPackage (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 515, in testWritePythonPackage zipfp.writepy(packagedir) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 1137, in writepy self.write(fname, arcname) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 719, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 615, in __init__ self._GetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 635, in _GetContents self._RealGetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 672, in _RealGetContents raise BadZipfile, "Bad magic number for central directory" BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 719, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 615, in __init__ self._GetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 635, in _GetContents self._RealGetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 672, in _RealGetContents raise BadZipfile, "Bad magic number for central directory" BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 719, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 615, in __init__ self._GetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 635, in _GetContents self._RealGetContents() File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 672, in _RealGetContents raise BadZipfile, "Bad magic number for central directory" BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testDifferentFile (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 846, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testInterleaved (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 846, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testSameFile (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 846, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 990, in testIterlinesDeflated self.iterlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 949, in iterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 973, in testIterlinesStored self.iterlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 949, in iterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 978, in testReadDeflated self.readTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 913, in readTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 961, in testReadStored self.readTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 913, in readTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 982, in testReadlineDeflated self.readlineTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 924, in readlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 965, in testReadlineStored self.readlineTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 924, in readlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 986, in testReadlinesDeflated self.readlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 937, in readlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 969, in testReadlinesStored self.readlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 937, in readlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 909, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 818, in testOpenStored self.zipOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 787, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 767, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 840, in testRandomOpenStored self.zipRandomOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 821, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 767, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 784, in testStored self.zipTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 772, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 767, in makeTestArchive zipfp.write(TESTFN, "another"+os.extsep+"name") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 928, in write self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMTime (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 183, in testBadMTime self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 161, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic2 (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 170, in testBadMagic2 self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBoth (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 148, in testBoth self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDeepPackage (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 197, in testDeepPackage self.doTest(pyc_ext, files, TESTPACK, TESTPACK2, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestFile (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 299, in testDoctestFile self.runDoctest(self.doDoctestFile) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 284, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestSuite (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 310, in testDoctestSuite self.runDoctest(self.doDoctestSuite) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 284, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 987, in writestr self._writecheck(zinfo) File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 896, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testEmptyPy (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 152, in testEmptyPy self.doTest(None, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 91, in doTest ["__dummy__"]) ImportError: No module named ziptestmodule ====================================================================== ERROR: testGetCompiledSource (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 279, in testGetCompiledSource self.doTest(pyc_ext, files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetData (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 236, in testGetData z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetSource (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 273, in testGetSource self.doTest(".py", files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testImport_WithStuff (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 266, in testImport_WithStuff stuff="Some Stuff"*31) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testImporterAttr (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 259, in testImporterAttr self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPackage (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 189, in testPackage self.doTest(pyc_ext, files, TESTPACK, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPy (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 139, in testPy self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPyc (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 143, in testPyc self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testTraceback (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 333, in testTraceback self.doTest(None, files, TESTMOD, call=self.doTraceback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testZipImporterMethods (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 206, in testZipImporterMethods z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testBadMTime (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 183, in testBadMTime self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testBadMagic (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 161, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testBadMagic2 (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 170, in testBadMagic2 self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testBoth (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 148, in testBoth self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testDeepPackage (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 197, in testDeepPackage self.doTest(pyc_ext, files, TESTPACK, TESTPACK2, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testDoctestFile (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 299, in testDoctestFile self.runDoctest(self.doDoctestFile) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 284, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testDoctestSuite (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 310, in testDoctestSuite self.runDoctest(self.doDoctestSuite) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 284, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testEmptyPy (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 152, in testEmptyPy self.doTest(None, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetCompiledSource (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 279, in testGetCompiledSource self.doTest(pyc_ext, files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetData (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 236, in testGetData z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetSource (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 273, in testGetSource self.doTest(".py", files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testImport_WithStuff (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 266, in testImport_WithStuff stuff="Some Stuff"*31) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testImporterAttr (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 259, in testImporterAttr self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPackage (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 189, in testPackage self.doTest(pyc_ext, files, TESTPACK, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPy (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 139, in testPy self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testPyc (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 143, in testPyc self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testTraceback (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 333, in testTraceback self.doTest(None, files, TESTMOD, call=self.doTraceback) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testZipImporterMethods (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipimport.py", line 206, in testZipImporterMethods z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\trunk.heller-windows\build\lib\zipfile.py", line 602, in __init__ self.fp = open(file, modeDict[mode]) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\junk95142.zip' sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 05:21:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 03:21:06 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080406032106.4006A1E4014@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%203.0/builds/249 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_normalization test_urllib2net make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 09:06:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 07:06:01 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian trunk Message-ID: <20080406070601.BF6EB1E4014@bag.python.org> The Buildbot has detected a new failure of alpha Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%20trunk/builds/73 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,georg.brandl,mark.hammond,martin.v.loewis,skip.montanaro,thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 12:17:14 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 12:17:14 +0200 (CEST) Subject: [Python-checkins] r62182 - doctools/trunk/sphinx/builder.py Message-ID: <20080406101714.E54791E401B@bag.python.org> Author: georg.brandl Date: Sun Apr 6 12:17:14 2008 New Revision: 62182 Modified: doctools/trunk/sphinx/builder.py Log: Fix traceback when moving documents. Modified: doctools/trunk/sphinx/builder.py ============================================================================== --- doctools/trunk/sphinx/builder.py (original) +++ doctools/trunk/sphinx/builder.py Sun Apr 6 12:17:14 2008 @@ -527,10 +527,15 @@ targetmtime = path.getmtime(targetname) except Exception: targetmtime = 0 - srcmtime = max(path.getmtime(self.env.doc2path(docname)), template_mtime) - if srcmtime > targetmtime: - yield docname - + try: + srcmtime = max(path.getmtime(self.env.doc2path(docname)), + template_mtime) + if srcmtime > targetmtime: + yield docname + except EnvironmentError: + # source doesn't exist anymore + pass + def load_indexer(self, docnames): try: f = open(path.join(self.outdir, 'searchindex.'+self.indexer_format), 'r') From buildbot at python.org Sun Apr 6 12:44:02 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 10:44:02 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 2.5 Message-ID: <20080406104403.1E9F01E400C@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%202.5/builds/235 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: The web-page 'force build' button was pressed by 'chao': dev Build Source Stamp: [branch 1] 1 Blamelist: BUILD FAILED: failed svn sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 13:05:24 2008 From: python-checkins at python.org (gerhard.haering) Date: Sun, 6 Apr 2008 13:05:24 +0200 (CEST) Subject: [Python-checkins] r62183 - python/branches/release25-maint/Modules/_sqlite/cursor.c Message-ID: <20080406110524.D65801E4014@bag.python.org> Author: gerhard.haering Date: Sun Apr 6 13:05:24 2008 New Revision: 62183 Modified: python/branches/release25-maint/Modules/_sqlite/cursor.c Log: Fix for Issue2515: Don't crash when trying to fetch data from a closed cursor. Modified: python/branches/release25-maint/Modules/_sqlite/cursor.c ============================================================================== --- python/branches/release25-maint/Modules/_sqlite/cursor.c (original) +++ python/branches/release25-maint/Modules/_sqlite/cursor.c Sun Apr 6 13:05:24 2008 @@ -851,15 +851,17 @@ next_row = next_row_tuple; } - rc = _sqlite_step_with_busyhandler(self->statement->st, self->connection); - if (rc != SQLITE_DONE && rc != SQLITE_ROW) { - Py_DECREF(next_row); - _seterror(self->connection->db); - return NULL; - } + if (self->statement) { + rc = _sqlite_step_with_busyhandler(self->statement->st, self->connection); + if (rc != SQLITE_DONE && rc != SQLITE_ROW) { + Py_DECREF(next_row); + _seterror(self->connection->db); + return NULL; + } - if (rc == SQLITE_ROW) { - self->next_row = _fetch_one_row(self); + if (rc == SQLITE_ROW) { + self->next_row = _fetch_one_row(self); + } } return next_row; From buildbot at python.org Sun Apr 6 13:10:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 11:10:26 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 2.5 Message-ID: <20080406111026.8A56D1E400C@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%202.5/builds/0 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: gerhard.haering BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 13:12:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 11:12:04 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 2.5 Message-ID: <20080406111205.16B031E400C@bag.python.org> The Buildbot has detected a new failure of amd64 XP 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%202.5/builds/195 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: gerhard.haering BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 13:12:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 11:12:25 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 2.5 Message-ID: <20080406111225.ECBBC1E400C@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%202.5/builds/16 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: gerhard.haering BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 13:43:56 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 11:43:56 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD 2 2.5 Message-ID: <20080406114356.49D751E400C@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD 2 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%202%202.5/builds/14 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: werven-freebsd Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: gerhard.haering BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 14:46:55 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 12:46:55 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD 2.5 Message-ID: <20080406124655.69B631E4019@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%202.5/builds/168 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-freebsd Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: gerhard.haering BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== ERROR: testSockName (test.test_socket.GeneralModuleTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/home/db3l/buildarea/2.5.bolen-freebsd/build/Lib/test/test_socket.py", line 456, in testSockName my_ip_addr = socket.gethostbyname(socket.gethostname()) gaierror: (8, 'hostname nor servname provided, or not known') sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 15:08:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 13:08:14 +0000 Subject: [Python-checkins] buildbot failure in 2.6.msi Message-ID: <20080406130814.DA51A1E4014@bag.python.org> The Buildbot has detected a new failure of 2.6.msi. Full details are available at: http://www.python.org/dev/buildbot/all/2.6.msi/builds/221 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: The Nightly scheduler named '2.6.msi' triggered this build Build Source Stamp: HEAD Blamelist: BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 15:29:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 13:29:36 +0000 Subject: [Python-checkins] buildbot failure in 3.0.msi Message-ID: <20080406132936.960F31E4014@bag.python.org> The Buildbot has detected a new failure of 3.0.msi. Full details are available at: http://www.python.org/dev/buildbot/all/3.0.msi/builds/215 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: The Nightly scheduler named '3.0.msi' triggered this build Build Source Stamp: HEAD Blamelist: BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 15:32:16 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 15:32:16 +0200 (CEST) Subject: [Python-checkins] r62184 - doctools/trunk/sphinx/environment.py Message-ID: <20080406133216.2115C1E4008@bag.python.org> Author: georg.brandl Date: Sun Apr 6 15:32:15 2008 New Revision: 62184 Modified: doctools/trunk/sphinx/environment.py Log: Fix the case where a toctree doesn't contain anything. Modified: doctools/trunk/sphinx/environment.py ============================================================================== --- doctools/trunk/sphinx/environment.py (original) +++ doctools/trunk/sphinx/environment.py Sun Apr 6 15:32:15 2008 @@ -722,7 +722,7 @@ entries.append(toc) if entries: return addnodes.compact_paragraph('', '', *entries) - return None + return [] def _walk_depth(node, depth, maxdepth, titleoverrides): """Utility: Cut a TOC at a specified depth.""" From python-checkins at python.org Sun Apr 6 18:47:29 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 18:47:29 +0200 (CEST) Subject: [Python-checkins] r62186 - in doctools/trunk: CHANGES doc/contents.rst sphinx/environment.py Message-ID: <20080406164729.0975B1E400C@bag.python.org> Author: georg.brandl Date: Sun Apr 6 18:47:28 2008 New Revision: 62186 Modified: doctools/trunk/CHANGES doctools/trunk/doc/contents.rst doctools/trunk/sphinx/environment.py Log: Don't swallow toc entries when resolving subtrees. Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 6 18:47:28 2008 @@ -5,9 +5,14 @@ It works like ``add_description_unit`` but the directive will only create a target and no output. +* sphinx.environment: Don't swallow TOC entries when resolving subtrees. + * sphinx.directives: Allow giving a different title to documents in the toctree. +* sphinx.builder, sphinx.environment: Gracefully handle some exception + cases. + Release 0.1.61950 (Mar 26, 2008) ================================ Modified: doctools/trunk/doc/contents.rst ============================================================================== --- doctools/trunk/doc/contents.rst (original) +++ doctools/trunk/doc/contents.rst Sun Apr 6 18:47:28 2008 @@ -7,7 +7,7 @@ :maxdepth: 2 intro - Konzepte + concepts rest markup/index builders Modified: doctools/trunk/sphinx/environment.py ============================================================================== --- doctools/trunk/sphinx/environment.py (original) +++ doctools/trunk/sphinx/environment.py Sun Apr 6 18:47:28 2008 @@ -703,7 +703,7 @@ self.resolve_references(doctree, docname, builder) # now, resolve all toctree nodes - def _entries_from_toctree(toctreenode): + def _entries_from_toctree(toctreenode, separate=False): """Return TOC entries for a toctree node.""" includefiles = map(str, toctreenode['includefiles']) @@ -716,13 +716,18 @@ self.warn(docname, 'toctree contains ref to nonexisting ' 'file %r' % includefile) else: + # resolve all sub-toctrees for toctreenode in toc.traverse(addnodes.toctree): - toctreenode.parent.replace_self( - _entries_from_toctree(toctreenode)) - entries.append(toc) - if entries: - return addnodes.compact_paragraph('', '', *entries) - return [] + i = toctreenode.parent.index(toctreenode) + 1 + for item in _entries_from_toctree(toctreenode): + toctreenode.parent.insert(i, item) + i += 1 + toctreenode.parent.remove(toctreenode) + if separate: + entries.append(toc) + else: + entries.extend(toc.children) + return entries def _walk_depth(node, depth, maxdepth, titleoverrides): """Utility: Cut a TOC at a specified depth.""" @@ -738,8 +743,9 @@ for toctreenode in doctree.traverse(addnodes.toctree): maxdepth = toctreenode.get('maxdepth', -1) titleoverrides = toctreenode.get('includetitles', {}) - newnode = _entries_from_toctree(toctreenode) - if newnode is not None: + tocentries = _entries_from_toctree(toctreenode, separate=True) + if tocentries: + newnode = addnodes.compact_paragraph('', '', *tocentries) # prune the tree to maxdepth and replace titles if maxdepth > 0: _walk_depth(newnode, 1, maxdepth, titleoverrides) From python-checkins at python.org Sun Apr 6 19:05:57 2008 From: python-checkins at python.org (skip.montanaro) Date: Sun, 6 Apr 2008 19:05:57 +0200 (CEST) Subject: [Python-checkins] r62187 - python/trunk/Modules/timemodule.c Message-ID: <20080406170557.B65A21E400C@bag.python.org> Author: skip.montanaro Date: Sun Apr 6 19:05:57 2008 New Revision: 62187 Modified: python/trunk/Modules/timemodule.c Log: type Modified: python/trunk/Modules/timemodule.c ============================================================================== --- python/trunk/Modules/timemodule.c (original) +++ python/trunk/Modules/timemodule.c Sun Apr 6 19:05:57 2008 @@ -661,7 +661,7 @@ /* This code moved from inittime wholesale to allow calling it from time_tzset. In the future, some parts of it can be moved back (for platforms that don't HAVE_WORKING_TZSET, when we know what they - are), and the extranious calls to tzset(3) should be removed. + are), and the extraneous calls to tzset(3) should be removed. I haven't done this yet, as I don't want to change this code as little as possible when introducing the time.tzset and time.tzsetwall methods. This should simply be a method of doing the following once, From buildbot at python.org Sun Apr 6 19:12:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 17:12:25 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080406171225.507171E4017@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/171 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 1 test failed: test_smtplib sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 19:12:42 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 17:12:42 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080406171242.D04A61E4021@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/154 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_getargs2 ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 19:38:55 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 19:38:55 +0200 (CEST) Subject: [Python-checkins] r62188 - in doctools/trunk: CHANGES doc/conf.py doc/config.rst doc/ext.py doc/extensions.rst sphinx/application.py sphinx/config.py sphinx/environment.py Message-ID: <20080406173855.EE1781E400C@bag.python.org> Author: georg.brandl Date: Sun Apr 6 19:38:55 2008 New Revision: 62188 Removed: doctools/trunk/doc/ext.py Modified: doctools/trunk/CHANGES doctools/trunk/doc/conf.py doctools/trunk/doc/config.rst doctools/trunk/doc/extensions.rst doctools/trunk/sphinx/application.py doctools/trunk/sphinx/config.py doctools/trunk/sphinx/environment.py Log: Allow the config to act as an extension. Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 6 19:38:55 2008 @@ -13,6 +13,9 @@ * sphinx.builder, sphinx.environment: Gracefully handle some exception cases. +* sphinx.config: The config file itself can be an extension (if it + provides a setup() function). + Release 0.1.61950 (Mar 26, 2008) ================================ Modified: doctools/trunk/doc/conf.py ============================================================================== --- doctools/trunk/doc/conf.py (original) +++ doctools/trunk/doc/conf.py Sun Apr 6 19:38:55 2008 @@ -11,17 +11,17 @@ # All configuration values have a default value; values that are commented out # serve to show the default value. -import sys, os +import sys, os, re # If your extensions are in another directory, add it here. -sys.path.append(os.path.dirname(__file__)) +#sys.path.append(os.path.dirname(__file__)) # General configuration # --------------------- # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.addons.*') or your custom ones. -extensions = ['ext', 'sphinx.ext.autodoc', 'sphinx.ext.doctest'] +extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] @@ -125,3 +125,37 @@ #latex_appendices = [] automodule_skip_lines = 4 + + +# Extension interface +# ------------------- + +from sphinx import addnodes + +dir_sig_re = re.compile(r'\.\. ([^:]+)::(.*)$') + +def parse_directive(env, sig, signode): + if not sig.startswith('.'): + dec_sig = '.. %s::' % sig + signode += addnodes.desc_name(dec_sig, dec_sig) + return sig + m = dir_sig_re.match(sig) + if not m: + signode += addnodes.desc_name(sig, sig) + return sig + name, args = m.groups() + dec_name = '.. %s::' % name + signode += addnodes.desc_name(dec_name, dec_name) + signode += addnodes.desc_classname(args, args) + return name + + +def parse_role(env, sig, signode): + signode += addnodes.desc_name(':%s:' % sig, ':%s:' % sig) + return sig + + +def setup(app): + app.add_description_unit('directive', 'dir', 'pair: %s; directive', parse_directive) + app.add_description_unit('role', 'role', 'pair: %s; role', parse_role) + app.add_description_unit('confval', 'confval', 'pair: %s; configuration value') Modified: doctools/trunk/doc/config.rst ============================================================================== --- doctools/trunk/doc/config.rst (original) +++ doctools/trunk/doc/config.rst Sun Apr 6 19:38:55 2008 @@ -50,6 +50,9 @@ That way, you can load an extension called ``extname`` from the documentation root's subdirectory ``sphinxext``. + The configuration file itself can be an extension; for that, you only need to + provide a :func:`setup` function in it. + .. confval:: templates_path A list of paths that contain extra templates (or templates that overwrite Deleted: /doctools/trunk/doc/ext.py ============================================================================== --- /doctools/trunk/doc/ext.py Sun Apr 6 19:38:55 2008 +++ (empty file) @@ -1,40 +0,0 @@ -# -*- coding: utf-8 -*- -""" - ext.py -- Sphinx extension for the Sphinx documentation - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - :copyright: 2008 by Georg Brandl. - :license: BSD. -""" - -import re - -from sphinx import addnodes - -dir_sig_re = re.compile(r'\.\. ([^:]+)::(.*)$') - -def parse_directive(env, sig, signode): - if not sig.startswith('.'): - dec_sig = '.. %s::' % sig - signode += addnodes.desc_name(dec_sig, dec_sig) - return sig - m = dir_sig_re.match(sig) - if not m: - signode += addnodes.desc_name(sig, sig) - return sig - name, args = m.groups() - dec_name = '.. %s::' % name - signode += addnodes.desc_name(dec_name, dec_name) - signode += addnodes.desc_classname(args, args) - return name - - -def parse_role(env, sig, signode): - signode += addnodes.desc_name(':%s:' % sig, ':%s:' % sig) - return sig - - -def setup(app): - app.add_description_unit('directive', 'dir', 'pair: %s; directive', parse_directive) - app.add_description_unit('role', 'role', 'pair: %s; role', parse_role) - app.add_description_unit('confval', 'confval', 'pair: %s; configuration value') Modified: doctools/trunk/doc/extensions.rst ============================================================================== --- doctools/trunk/doc/extensions.rst (original) +++ doctools/trunk/doc/extensions.rst Sun Apr 6 19:38:55 2008 @@ -15,6 +15,9 @@ are so-called "hook points" at strategic places throughout the build process, where an extension can register a hook and run specialized code. +The configuration file itself can be an extension, see the :confval:`extensions` +configuration value docs. + .. toctree:: ext/appapi Modified: doctools/trunk/sphinx/application.py ============================================================================== --- doctools/trunk/sphinx/application.py (original) +++ doctools/trunk/sphinx/application.py Sun Apr 6 19:38:55 2008 @@ -79,6 +79,9 @@ # load all extension modules for extension in getattr(self.config, 'extensions', ()): self.setup_extension(extension) + # the config file itself can be an extension + if hasattr(self.config, 'setup'): + self.config.setup(self) # this must happen after loading extension modules, since they # can add custom config values Modified: doctools/trunk/sphinx/config.py ============================================================================== --- doctools/trunk/sphinx/config.py (original) +++ doctools/trunk/sphinx/config.py Sun Apr 6 19:38:55 2008 @@ -10,7 +10,6 @@ """ import os -import types from os import path @@ -77,10 +76,6 @@ execfile(config['__file__'], config) finally: os.chdir(olddir) - # remove potentially pickling-problematic values - for key, val in config.items(): - if key.startswith('_') or isinstance(val, types.ModuleType): - del config[key] self.__dict__.update(config) def init_defaults(self): @@ -91,5 +86,11 @@ def __getitem__(self, name): return getattr(self, name) + def __setitem__(self, name, value): + setattr(self, name, value) + + def __delitem__(self, name): + delattr(self, name) + def __contains__(self, name): return hasattr(self, name) Modified: doctools/trunk/sphinx/environment.py ============================================================================== --- doctools/trunk/sphinx/environment.py (original) +++ doctools/trunk/sphinx/environment.py Sun Apr 6 19:38:55 2008 @@ -13,6 +13,7 @@ import os import time import heapq +import types import difflib import itertools import cPickle as pickle @@ -179,6 +180,12 @@ warnfunc = self._warnfunc self.set_warnfunc(None) picklefile = open(filename, 'wb') + # remove potentially pickling-problematic values from config + for key, val in vars(self.config).items(): + if key.startswith('_') or \ + isinstance(val, types.ModuleType) or \ + isinstance(val, types.FunctionType): + del self.config[key] try: pickle.dump(self, picklefile, pickle.HIGHEST_PROTOCOL) finally: From python-checkins at python.org Sun Apr 6 19:41:51 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 19:41:51 +0200 (CEST) Subject: [Python-checkins] r62189 - doctools/trunk/doc/markup/para.rst Message-ID: <20080406174151.568A91E400E@bag.python.org> Author: georg.brandl Date: Sun Apr 6 19:41:51 2008 New Revision: 62189 Modified: doctools/trunk/doc/markup/para.rst Log: Advise to put index directives before the target. Modified: doctools/trunk/doc/markup/para.rst ============================================================================== --- doctools/trunk/doc/markup/para.rst (original) +++ doctools/trunk/doc/markup/para.rst Sun Apr 6 19:41:51 2008 @@ -120,10 +120,19 @@ module: sys triple: module; search; path + The execution context + --------------------- + + ... + This directive contains five entries, which will be converted to entries in the generated index which link to the exact location of the index statement (or, in case of offline media, the corresponding page number). + Since index directives generate cross-reference targets at their location in + the source, it makes sense to put them *before* the thing they refer to -- + e.g. a heading, as in the example above. + The possible entry types are: single From buildbot at python.org Sun Apr 6 20:31:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 18:31:29 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080406183129.299661E400C@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/758 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 20:33:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 18:33:01 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080406183301.AAE071E400C@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%203.0/builds/2 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_smtplib make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 20:41:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 18:41:12 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080406184112.820DF1E400C@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/676 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "E:\cygwin\home\db3l\buildarea\3.0.bolen-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 20:52:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 18:52:33 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080406185233.61C5D1E400C@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2827 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_smtplib test_socket ====================================================================== FAIL: testInterruptedTimeout (test.test_socket.TCPTimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_socket.py", line 998, in testInterruptedTimeout self.fail("got Alarm in wrong place") AssertionError: got Alarm in wrong place sincerely, -The Buildbot From python-checkins at python.org Sun Apr 6 21:05:25 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 6 Apr 2008 21:05:25 +0200 (CEST) Subject: [Python-checkins] r62191 - in doctools/trunk: CHANGES sphinx/htmlwriter.py Message-ID: <20080406190525.51A0D1E400C@bag.python.org> Author: georg.brandl Date: Sun Apr 6 21:05:13 2008 New Revision: 62191 Modified: doctools/trunk/CHANGES doctools/trunk/sphinx/htmlwriter.py Log: Don't use os.path for HTML pathnames. Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 6 21:05:13 2008 @@ -16,6 +16,8 @@ * sphinx.config: The config file itself can be an extension (if it provides a setup() function). +* sphinx.htmlwriter: Don't use os.path for joining image HREFs. + Release 0.1.61950 (Mar 26, 2008) ================================ Modified: doctools/trunk/sphinx/htmlwriter.py ============================================================================== --- doctools/trunk/sphinx/htmlwriter.py (original) +++ doctools/trunk/sphinx/htmlwriter.py Sun Apr 6 21:05:13 2008 @@ -10,7 +10,7 @@ """ import sys -from os import path +import posixpath from docutils import nodes from docutils.writers.html4css1 import Writer, HTMLTranslator as BaseTranslator @@ -252,8 +252,8 @@ olduri = node['uri'] # rewrite the URI if the environment knows about it if olduri in self.builder.env.images: - node['uri'] = path.join(self.builder.imgpath, - self.builder.env.images[olduri][1]) + node['uri'] = posixpath.join(self.builder.imgpath, + self.builder.env.images[olduri][1]) BaseTranslator.visit_image(self, node) def visit_toctree(self, node): From python-checkins at python.org Sun Apr 6 22:51:24 2008 From: python-checkins at python.org (trent.nelson) Date: Sun, 6 Apr 2008 22:51:24 +0200 (CEST) Subject: [Python-checkins] r62193 - in python/trunk: PCbuild/kill_python.vcproj PCbuild/pythoncore.vcproj Tools/buildbot/build-amd64.bat Tools/buildbot/build.bat Message-ID: <20080406205124.345EE1E4019@bag.python.org> Author: trent.nelson Date: Sun Apr 6 22:51:23 2008 New Revision: 62193 Modified: python/trunk/PCbuild/kill_python.vcproj python/trunk/PCbuild/pythoncore.vcproj python/trunk/Tools/buildbot/build-amd64.bat python/trunk/Tools/buildbot/build.bat Log: Don't run kill_python as part of the build process. Change the buildbots so they have to call it explicitly instead. Modified: python/trunk/PCbuild/kill_python.vcproj ============================================================================== --- python/trunk/PCbuild/kill_python.vcproj (original) +++ python/trunk/PCbuild/kill_python.vcproj Sun Apr 6 22:51:23 2008 @@ -77,8 +77,6 @@ /> Modified: python/trunk/PCbuild/pythoncore.vcproj ============================================================================== --- python/trunk/PCbuild/pythoncore.vcproj (original) +++ python/trunk/PCbuild/pythoncore.vcproj Sun Apr 6 22:51:23 2008 @@ -58,8 +58,8 @@ /> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/761 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: georg.brandl BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sun Apr 6 22:57:50 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 20:57:50 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080406205751.1A3701E4023@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/6 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 00:18:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 22:18:28 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080406221828.B7F381E402B@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/766 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 17 tests failed: test_array test_bufio test_builtin test_cookielib test_deque test_distutils test_fileinput test_gzip test_iter test_mailbox test_marshal test_univnewlines test_urllib test_urllib2 test_uu test_zipfile test_zipimport ====================================================================== ERROR: test_tofromfile (test.test_array.ByteTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tofromfile (test.test_array.ShortTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tofromfile (test.test_array.DoubleTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_nullpat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 59, in test_nullpat self.drive_one(bytes(1000)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 49, in drive_one self.try_one(teststring) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 292, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_list (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 254, in test_builtin_list f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_map (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 397, in test_builtin_map f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_max_min (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 364, in test_builtin_max_min f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_tuple (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 287, in test_builtin_tuple f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_zip (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 444, in test_builtin_zip f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_countOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 593, in test_countOf f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_in_and_not_in (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 556, in test_in_and_not_in f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_indexOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 627, in test_indexOf f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter_file (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 225, in test_iter_file f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode_join_endcase (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 512, in test_unicode_join_endcase f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unpack_iter (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 736, in test_unpack_iter f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_writelines (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 653, in test_writelines f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_MM (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clean (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_consistent_factory (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_create_tmp (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_directory_in_folder (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_folder (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_MM (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_initialize_existing (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_initialize_new (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lookup (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_refresh (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_MM (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMaildir) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 463, in setUp TestMailbox.setUp(self) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 460, in _factory = lambda self, path, factory=None: mailbox.Maildir(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 231, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 62, in tearDown self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 45, in _delete_recursively os.rmdir(target) WindowsError: [Error 145] The directory is not empty: '@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\4' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 2] The system cannot find the file specified: '@test\\4' ====================================================================== ERROR: test_ints (test.test_marshal.IntTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 34, in test_ints self.helper(expected) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_floats (test.test_marshal.FloatTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 72, in test_floats self.helper(float(expected)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bytes (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 103, in test_bytes self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_string (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 99, in test_string self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 95, in test_unicode self.helper(marshal.loads(marshal.dumps(s))) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_dict (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 128, in test_dict self.helper(self.d) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_list (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 131, in test_list self.helper(list(self.d.items())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_sets (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 138, in test_sets self.helper(constructor(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tuple (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 134, in test_tuple self.helper(tuple(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tell (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib2.py", line 607, in test_file f = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testLowCompression (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBadMagic (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 160, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 609, in __init__ self.fp = io.open(file, modeDict[mode]) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testBadMagic2 (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 168, in testBadMagic2 self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 609, in __init__ self.fp = io.open(file, modeDict[mode]) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\junk95142.zip' sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 00:26:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 06 Apr 2008 22:26:38 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD 3 trunk Message-ID: <20080406222638.AAF201E4020@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD 3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%203%20trunk/builds/82 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-freebsd Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '1000-1000-1000-1000-1000' Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '0002-0002-0002-0002-0002' Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '2000-2000-2000-2000-2000' 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): ====================================================================== FAIL: test_itimer_prof (test.test_signal.ItimerTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/test/test_signal.py", line 373, in test_itimer_prof self.assertEquals(signal.getitimer(self.itimer), (0.0, 0.0)) AssertionError: (0.20000000000000001, 0.20000000000000001) != (0.0, 0.0) ====================================================================== FAIL: test_itimer_virtual (test.test_signal.ItimerTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/store/home/python.buildbot/default/trunk.nelson-freebsd/build/Lib/test/test_signal.py", line 359, in test_itimer_virtual self.assertEquals(signal.getitimer(self.itimer), (0.0, 0.0)) AssertionError: (0.29999999999999999, 0.20000000000000001) != (0.0, 0.0) sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 01:04:29 2008 From: python-checkins at python.org (jeffrey.yasskin) Date: Mon, 7 Apr 2008 01:04:29 +0200 (CEST) Subject: [Python-checkins] r62194 - python/trunk/Lib/test/test_signal.py Message-ID: <20080406230429.3C3EA1E400C@bag.python.org> Author: jeffrey.yasskin Date: Mon Apr 7 01:04:28 2008 New Revision: 62194 Modified: python/trunk/Lib/test/test_signal.py Log: Add enough debugging information to diagnose failures where the HandlerBException is ignored, and fix one such problem, where it was thrown during the __del__ method of the previous Popen object. We may want to find a better way of printing verbose information so it's not spammy when the test passes. Modified: python/trunk/Lib/test/test_signal.py ============================================================================== --- python/trunk/Lib/test/test_signal.py (original) +++ python/trunk/Lib/test/test_signal.py Mon Apr 7 01:04:28 2008 @@ -48,16 +48,21 @@ if self.using_gc: gc.enable() - def handlerA(self, *args): + def format_frame(self, frame, limit=None): + return ''.join(traceback.format_stack(frame, limit=limit)) + + def handlerA(self, signum, frame): self.a_called = True if test_support.verbose: - print "handlerA invoked", args + print "handlerA invoked from signal %s at:\n%s" % ( + signum, self.format_frame(frame, limit=1)) - def handlerB(self, *args): + def handlerB(self, signum, frame): self.b_called = True if test_support.verbose: - print "handlerB invoked", args - raise HandlerBCalled(*args) + print "handlerB invoked from signal %s at:\n%s" % ( + signum, self.format_frame(frame, limit=1)) + raise HandlerBCalled(signum, self.format_frame(frame)) def wait(self, child): """Wait for child to finish, ignoring EINTR.""" @@ -95,6 +100,10 @@ self.assertFalse(self.b_called) self.a_called = False + # Make sure the signal isn't delivered while the previous + # Popen object is being destroyed, because __del__ swallows + # exceptions. + del child try: child = subprocess.Popen(['kill', '-USR1', str(pid)]) # This wait should be interrupted by the signal's exception. From python-checkins at python.org Mon Apr 7 01:11:18 2008 From: python-checkins at python.org (gregory.p.smith) Date: Mon, 7 Apr 2008 01:11:18 +0200 (CEST) Subject: [Python-checkins] r62195 - in python/trunk: Doc/c-api/file.rst Include/fileobject.h Lib/test/test_file.py Misc/NEWS Objects/fileobject.c Message-ID: <20080406231118.1A1961E400C@bag.python.org> Author: gregory.p.smith Date: Mon Apr 7 01:11:17 2008 New Revision: 62195 Modified: python/trunk/Doc/c-api/file.rst python/trunk/Include/fileobject.h python/trunk/Lib/test/test_file.py python/trunk/Misc/NEWS python/trunk/Objects/fileobject.c Log: Make file objects as thread safe as the underlying libc FILE* implementation. close() will now raise an IOError if any operations on the file object are currently in progress in other threads. Most code was written by Antoine Pitrou (pitrou). Additional testing, documentation and test suite cleanup done by me (gregory.p.smith). Fixes issue 815646 and 595601 (as well as many other bugs and references to this problem dating back to the dawn of Python). Modified: python/trunk/Doc/c-api/file.rst ============================================================================== --- python/trunk/Doc/c-api/file.rst (original) +++ python/trunk/Doc/c-api/file.rst Mon Apr 7 01:11:17 2008 @@ -58,10 +58,42 @@ closed. Return *NULL* on failure. -.. cfunction:: FILE* PyFile_AsFile(PyObject *p) +.. cfunction:: FILE* PyFile_AsFile(PyObject \*p) Return the file object associated with *p* as a :ctype:`FILE\*`. + If the caller will ever use the returned :ctype:`FILE\*` object while + the GIL is released it must also call the `PyFile_IncUseCount` and + `PyFile_DecUseCount` functions described below as appropriate. + + +.. cfunction:: void PyFile_IncUseCount(PyFileObject \*p) + + Increments the PyFileObject's internal use count to indicate + that the underlying :ctype:`FILE\*` is being used. + This prevents Python from calling f_close() on it from another thread. + Callers of this must call `PyFile_DecUseCount` when they are + finished with the :ctype:`FILE\*`. Otherwise the file object will + never be closed by Python. + + The GIL must be held while calling this function. + + The suggested use is to call this after `PyFile_AsFile` just before + you release the GIL. + + .. versionadded:: 2.6 + + +.. cfunction:: void PyFile_DecUseCount(PyFileObject \*p) + + Decrements the PyFileObject's internal unlocked_count member to + indicate that the caller is done with its own use of the :ctype:`FILE\*`. + This may only be called to undo a prior call to `PyFile_IncUseCount`. + + The GIL must be held while calling this function. + + .. versionadded:: 2.6 + .. cfunction:: PyObject* PyFile_GetLine(PyObject *p, int n) Modified: python/trunk/Include/fileobject.h ============================================================================== --- python/trunk/Include/fileobject.h (original) +++ python/trunk/Include/fileobject.h Mon Apr 7 01:11:17 2008 @@ -25,6 +25,8 @@ int f_skipnextlf; /* Skip next \n */ PyObject *f_encoding; PyObject *weakreflist; /* List of weak references */ + int unlocked_count; /* Num. currently running sections of code + using f_fp with the GIL released. */ } PyFileObject; PyAPI_DATA(PyTypeObject) PyFile_Type; @@ -38,6 +40,8 @@ PyAPI_FUNC(PyObject *) PyFile_FromFile(FILE *, char *, char *, int (*)(FILE *)); PyAPI_FUNC(FILE *) PyFile_AsFile(PyObject *); +PyAPI_FUNC(void) PyFile_IncUseCount(PyFileObject *); +PyAPI_FUNC(void) PyFile_DecUseCount(PyFileObject *); PyAPI_FUNC(PyObject *) PyFile_Name(PyObject *); PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int); PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int); Modified: python/trunk/Lib/test/test_file.py ============================================================================== --- python/trunk/Lib/test/test_file.py (original) +++ python/trunk/Lib/test/test_file.py Mon Apr 7 01:11:17 2008 @@ -1,9 +1,13 @@ import sys import os import unittest +import itertools +import time +import threading from array import array from weakref import proxy +from test import test_support from test.test_support import TESTFN, findfile, run_unittest from UserList import UserList @@ -339,11 +343,173 @@ self.failUnless(f.subclass_closed) +class FileThreadingTests(unittest.TestCase): + # These tests check the ability to call various methods of file objects + # (including close()) concurrently without crashing the Python interpreter. + # See #815646, #595601 + + def setUp(self): + self.f = None + self.filename = TESTFN + with open(self.filename, "w") as f: + f.write("\n".join("0123456789")) + self._count_lock = threading.Lock() + self.close_count = 0 + self.close_success_count = 0 + + def tearDown(self): + if self.f: + try: + self.f.close() + except (EnvironmentError, ValueError): + pass + try: + os.remove(self.filename) + except EnvironmentError: + pass + + def _create_file(self): + self.f = open(self.filename, "w+") + + def _close_file(self): + with self._count_lock: + self.close_count += 1 + self.f.close() + with self._count_lock: + self.close_success_count += 1 + + def _close_and_reopen_file(self): + self._close_file() + # if close raises an exception thats fine, self.f remains valid so + # we don't need to reopen. + self._create_file() + + def _run_workers(self, func, nb_workers, duration=0.2): + with self._count_lock: + self.close_count = 0 + self.close_success_count = 0 + self.do_continue = True + threads = [] + try: + for i in range(nb_workers): + t = threading.Thread(target=func) + t.start() + threads.append(t) + for _ in xrange(100): + time.sleep(duration/100) + with self._count_lock: + if self.close_count-self.close_success_count > nb_workers+1: + if test_support.verbose: + print 'Q', + break + time.sleep(duration) + finally: + self.do_continue = False + for t in threads: + t.join() + + def _test_close_open_io(self, io_func, nb_workers=5): + def worker(): + self._create_file() + funcs = itertools.cycle(( + lambda: io_func(), + lambda: self._close_and_reopen_file(), + )) + for f in funcs: + if not self.do_continue: + break + try: + f() + except (IOError, ValueError): + pass + self._run_workers(worker, nb_workers) + if test_support.verbose: + # Useful verbose statistics when tuning this test to take + # less time to run but still ensuring that its still useful. + # + # the percent of close calls that raised an error + percent = 100. - 100.*self.close_success_count/self.close_count + print self.close_count, ('%.4f ' % percent), + + def test_close_open(self): + def io_func(): + pass + self._test_close_open_io(io_func) + + def test_close_open_flush(self): + def io_func(): + self.f.flush() + self._test_close_open_io(io_func) + + def test_close_open_iter(self): + def io_func(): + list(iter(self.f)) + self._test_close_open_io(io_func) + + def test_close_open_isatty(self): + def io_func(): + self.f.isatty() + self._test_close_open_io(io_func) + + def test_close_open_print(self): + def io_func(): + print >> self.f, '' + self._test_close_open_io(io_func) + + def test_close_open_read(self): + def io_func(): + self.f.read(0) + self._test_close_open_io(io_func) + + def test_close_open_readinto(self): + def io_func(): + a = array('c', 'xxxxx') + self.f.readinto(a) + self._test_close_open_io(io_func) + + def test_close_open_readline(self): + def io_func(): + self.f.readline() + self._test_close_open_io(io_func) + + def test_close_open_readlines(self): + def io_func(): + self.f.readlines() + self._test_close_open_io(io_func) + + def test_close_open_seek(self): + def io_func(): + self.f.seek(0, 0) + self._test_close_open_io(io_func) + + def test_close_open_tell(self): + def io_func(): + self.f.tell() + self._test_close_open_io(io_func) + + def test_close_open_truncate(self): + def io_func(): + self.f.truncate() + self._test_close_open_io(io_func) + + def test_close_open_write(self): + def io_func(): + self.f.write('') + self._test_close_open_io(io_func) + + def test_close_open_writelines(self): + def io_func(): + self.f.writelines('') + self._test_close_open_io(io_func) + + + def test_main(): # Historically, these tests have been sloppy about removing TESTFN. # So get rid of it no matter what. try: - run_unittest(AutoFileTests, OtherFileTests, FileSubclassTests) + run_unittest(AutoFileTests, OtherFileTests, FileSubclassTests, + FileThreadingTests) finally: if os.path.exists(TESTFN): os.unlink(TESTFN) Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Apr 7 01:11:17 2008 @@ -18,6 +18,11 @@ Library ------- +- Issue #815646: Individual file objects may now be used from multiple + threads at once without fear of crashing the Python interpreter. If + file.close() is called while an object is in use by another thread + an IOError exception will be raised and the file will not be closed. + - The bundled libffi copy is now in sync with the recently released libffi3.0.5 version, apart from some small changes to Modules/_ctypes/libffi/configure.ac. Modified: python/trunk/Objects/fileobject.c ============================================================================== --- python/trunk/Objects/fileobject.c (original) +++ python/trunk/Objects/fileobject.c Mon Apr 7 01:11:17 2008 @@ -48,6 +48,30 @@ #define NEWLINE_LF 2 /* \n newline seen */ #define NEWLINE_CRLF 4 /* \r\n newline seen */ +/* + * These macros release the GIL while preventing the f_close() function being + * called in the interval between them. For that purpose, a running total of + * the number of currently running unlocked code sections is kept in + * the unlocked_count field of the PyFileObject. The close() method raises + * an IOError if that field is non-zero. See issue #815646, #595601. + */ + +#define FILE_BEGIN_ALLOW_THREADS(fobj) \ +{ \ + fobj->unlocked_count++; \ + Py_BEGIN_ALLOW_THREADS + +#define FILE_END_ALLOW_THREADS(fobj) \ + Py_END_ALLOW_THREADS \ + fobj->unlocked_count--; \ + assert(fobj->unlocked_count >= 0); \ +} + +#define FILE_ABORT_ALLOW_THREADS(fobj) \ + Py_BLOCK_THREADS \ + fobj->unlocked_count--; \ + assert(fobj->unlocked_count >= 0); + #ifdef __cplusplus extern "C" { #endif @@ -61,6 +85,17 @@ return ((PyFileObject *)f)->f_fp; } +void PyFile_IncUseCount(PyFileObject *fobj) +{ + fobj->unlocked_count++; +} + +void PyFile_DecUseCount(PyFileObject *fobj) +{ + fobj->unlocked_count--; + assert(fobj->unlocked_count >= 0); +} + PyObject * PyFile_Name(PyObject *f) { @@ -70,6 +105,19 @@ return ((PyFileObject *)f)->f_name; } +/* This is a safe wrapper around PyObject_Print to print to the FILE + of a PyFileObject. PyObject_Print releases the GIL but knows nothing + about PyFileObject. */ +static int +file_PyObject_Print(PyObject *op, PyFileObject *f, int flags) +{ + int result; + PyFile_IncUseCount(f); + result = PyObject_Print(op, f->f_fp, flags); + PyFile_DecUseCount(f); + return result; +} + /* On Unix, fopen will succeed for directories. In Python, there should be no file objects referring to directories, so we need a check. */ @@ -220,20 +268,20 @@ PyObject *wmode; wmode = PyUnicode_DecodeASCII(newmode, strlen(newmode), NULL); if (f->f_name && wmode) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) /* PyUnicode_AS_UNICODE OK without thread lock as it is a simple dereference. */ f->f_fp = _wfopen(PyUnicode_AS_UNICODE(f->f_name), PyUnicode_AS_UNICODE(wmode)); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) } Py_XDECREF(wmode); } #endif if (NULL == f->f_fp && NULL != name) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) f->f_fp = fopen(name, newmode); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) } if (f->f_fp == NULL) { @@ -271,6 +319,48 @@ return (PyObject *)f; } +static PyObject * +close_the_file(PyFileObject *f) +{ + int sts = 0; + int (*local_close)(FILE *); + FILE *local_fp = f->f_fp; + if (local_fp != NULL) { + local_close = f->f_close; + if (local_close != NULL && f->unlocked_count > 0) { + if (f->ob_refcnt > 0) { + PyErr_SetString(PyExc_IOError, + "close() called during concurrent " + "operation on the same file object."); + } else { + /* This should not happen unless someone is + * carelessly playing with the PyFileObject + * struct fields and/or its associated FILE + * pointer. */ + PyErr_SetString(PyExc_SystemError, + "PyFileObject locking error in " + "destructor (refcnt <= 0 at close)."); + } + return NULL; + } + /* NULL out the FILE pointer before releasing the GIL, because + * it will not be valid anymore after the close() function is + * called. */ + f->f_fp = NULL; + if (local_close != NULL) { + Py_BEGIN_ALLOW_THREADS + errno = 0; + sts = (*local_close)(local_fp); + Py_END_ALLOW_THREADS + if (sts == EOF) + return PyErr_SetFromErrno(PyExc_IOError); + if (sts != 0) + return PyInt_FromLong((long)sts); + } + } + Py_RETURN_NONE; +} + PyObject * PyFile_FromFile(FILE *fp, char *name, char *mode, int (*close)(FILE *)) { @@ -386,15 +476,16 @@ static void file_dealloc(PyFileObject *f) { - int sts = 0; + PyObject *ret; if (f->weakreflist != NULL) PyObject_ClearWeakRefs((PyObject *) f); - if (f->f_fp != NULL && f->f_close != NULL) { - Py_BEGIN_ALLOW_THREADS - sts = (*f->f_close)(f->f_fp); - Py_END_ALLOW_THREADS - if (sts == EOF) - PySys_WriteStderr("close failed: [Errno %d] %s\n", errno, strerror(errno)); + ret = close_the_file(f); + if (!ret) { + PySys_WriteStderr("close failed in file object destructor:\n"); + PyErr_Print(); + } + else { + Py_DECREF(ret); } PyMem_Free(f->f_setbuf); Py_XDECREF(f->f_name); @@ -432,24 +523,10 @@ static PyObject * file_close(PyFileObject *f) { - int sts = 0; - if (f->f_fp != NULL) { - if (f->f_close != NULL) { - Py_BEGIN_ALLOW_THREADS - errno = 0; - sts = (*f->f_close)(f->f_fp); - Py_END_ALLOW_THREADS - } - f->f_fp = NULL; - } + PyObject *sts = close_the_file(f); PyMem_Free(f->f_setbuf); f->f_setbuf = NULL; - if (sts == EOF) - return PyErr_SetFromErrno(PyExc_IOError); - if (sts != 0) - return PyInt_FromLong((long)sts); - Py_INCREF(Py_None); - return Py_None; + return sts; } @@ -566,10 +643,10 @@ if (PyErr_Occurred()) return NULL; - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; ret = _portable_fseek(f->f_fp, offset, whence); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret != 0) { PyErr_SetFromErrno(PyExc_IOError); @@ -603,10 +680,10 @@ * then at least on Windows). The easiest thing is to capture * current pos now and seek back to it at the end. */ - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; initialpos = _portable_ftell(f->f_fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (initialpos == -1) goto onioerror; @@ -631,10 +708,10 @@ * I/O, and a flush may be necessary to synch both platform views * of the current file state. */ - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; ret = fflush(f->f_fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret != 0) goto onioerror; @@ -645,15 +722,15 @@ HANDLE hFile; /* Have to move current pos to desired endpoint on Windows. */ - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; ret = _portable_fseek(f->f_fp, newsize, SEEK_SET) != 0; - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret) goto onioerror; /* Truncate. Note that this may grow the file! */ - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; hFile = (HANDLE)_get_osfhandle(fileno(f->f_fp)); ret = hFile == (HANDLE)-1; @@ -662,24 +739,24 @@ if (ret) errno = EACCES; } - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret) goto onioerror; } #else - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; ret = ftruncate(fileno(f->f_fp), newsize); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret != 0) goto onioerror; #endif /* !MS_WINDOWS */ /* Restore original file position. */ - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; ret = _portable_fseek(f->f_fp, initialpos, SEEK_SET) != 0; - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (ret) goto onioerror; @@ -700,10 +777,11 @@ if (f->f_fp == NULL) return err_closed(); - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; pos = _portable_ftell(f->f_fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) + if (pos == -1) { PyErr_SetFromErrno(PyExc_IOError); clearerr(f->f_fp); @@ -740,10 +818,10 @@ if (f->f_fp == NULL) return err_closed(); - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; res = fflush(f->f_fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (res != 0) { PyErr_SetFromErrno(PyExc_IOError); clearerr(f->f_fp); @@ -759,9 +837,9 @@ long res; if (f->f_fp == NULL) return err_closed(); - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) res = isatty((int)fileno(f->f_fp)); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) return PyBool_FromLong(res); } @@ -861,11 +939,11 @@ return NULL; bytesread = 0; for (;;) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; chunksize = Py_UniversalNewlineFread(BUF(v) + bytesread, buffersize - bytesread, f->f_fp, (PyObject *)f); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (chunksize == 0) { if (!ferror(f->f_fp)) break; @@ -917,11 +995,11 @@ return NULL; ndone = 0; while (ntodo > 0) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; nnow = Py_UniversalNewlineFread(ptr+ndone, ntodo, f->f_fp, (PyObject *)f); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (nnow == 0) { if (!ferror(f->f_fp)) break; @@ -986,7 +1064,7 @@ #ifdef USE_FGETS_IN_GETLINE static PyObject* -getline_via_fgets(FILE *fp) +getline_via_fgets(PyFileObject *f, FILE *fp) { /* INITBUFSIZE is the maximum line length that lets us get away with the fast * no-realloc, one-fgets()-call path. Boosting it isn't free, because we have @@ -1019,13 +1097,13 @@ total_v_size = INITBUFSIZE; /* start small and pray */ pvfree = buf; for (;;) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) pvend = buf + total_v_size; nfree = pvend - pvfree; memset(pvfree, '\n', nfree); assert(nfree < INT_MAX); /* Should be atmost MAXBUFSIZE */ p = fgets(pvfree, (int)nfree, fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (p == NULL) { clearerr(fp); @@ -1094,13 +1172,13 @@ * the code above for detailed comments about the logic. */ for (;;) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) pvend = BUF(v) + total_v_size; nfree = pvend - pvfree; memset(pvfree, '\n', nfree); assert(nfree < INT_MAX); p = fgets(pvfree, (int)nfree, fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (p == NULL) { clearerr(fp); @@ -1171,7 +1249,7 @@ #if defined(USE_FGETS_IN_GETLINE) if (n <= 0 && !univ_newline ) - return getline_via_fgets(fp); + return getline_via_fgets(f, fp); #endif total_v_size = n > 0 ? n : 100; v = PyString_FromStringAndSize((char *)NULL, total_v_size); @@ -1181,7 +1259,7 @@ end = buf + total_v_size; for (;;) { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) FLOCKFILE(fp); if (univ_newline) { c = 'x'; /* Shut up gcc warning */ @@ -1216,7 +1294,7 @@ buf != end) ; FUNLOCKFILE(fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) f->f_newlinetypes = newlinetypes; f->f_skipnextlf = skipnextlf; if (c == '\n') @@ -1381,7 +1459,7 @@ file_readlines(PyFileObject *f, PyObject *args) { long sizehint = 0; - PyObject *list; + PyObject *list = NULL; PyObject *line; char small_buffer[SMALLCHUNK]; char *buffer = small_buffer; @@ -1409,11 +1487,11 @@ if (shortread) nread = 0; else { - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; nread = Py_UniversalNewlineFread(buffer+nfilled, buffersize-nfilled, f->f_fp, (PyObject *)f); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) shortread = (nread < buffersize-nfilled); } if (nread == 0) { @@ -1422,10 +1500,7 @@ break; PyErr_SetFromErrno(PyExc_IOError); clearerr(f->f_fp); - error: - Py_DECREF(list); - list = NULL; - goto cleanup; + goto error; } totalread += nread; p = (char *)memchr(buffer+nfilled, '\n', nread); @@ -1499,9 +1574,14 @@ if (err != 0) goto error; } - cleanup: + +cleanup: Py_XDECREF(big_buffer); return list; + +error: + Py_CLEAR(list); + goto cleanup; } static PyObject * @@ -1514,10 +1594,10 @@ if (!PyArg_ParseTuple(args, f->f_binary ? "s#" : "t#", &s, &n)) return NULL; f->f_softspace = 0; - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; n2 = fwrite(s, 1, n, f->f_fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (n2 != n) { PyErr_SetFromErrno(PyExc_IOError); clearerr(f->f_fp); @@ -1615,8 +1695,8 @@ /* Since we are releasing the global lock, the following code may *not* execute Python code. */ - Py_BEGIN_ALLOW_THREADS f->f_softspace = 0; + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; for (i = 0; i < j; i++) { line = PyList_GET_ITEM(list, i); @@ -1624,13 +1704,13 @@ nwritten = fwrite(PyString_AS_STRING(line), 1, len, f->f_fp); if (nwritten != len) { - Py_BLOCK_THREADS + FILE_ABORT_ALLOW_THREADS(f) PyErr_SetFromErrno(PyExc_IOError); clearerr(f->f_fp); goto error; } } - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (j < CHUNKSIZE) break; @@ -1895,11 +1975,11 @@ PyErr_NoMemory(); return -1; } - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(f) errno = 0; chunksize = Py_UniversalNewlineFread( f->f_buf, bufsize, f->f_fp, (PyObject *)f); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(f) if (chunksize == 0) { if (ferror(f->f_fp)) { PyErr_SetFromErrno(PyExc_IOError); @@ -2008,6 +2088,7 @@ Py_INCREF(Py_None); ((PyFileObject *)self)->f_encoding = Py_None; ((PyFileObject *)self)->weakreflist = NULL; + ((PyFileObject *)self)->unlocked_count = 0; } return self; } @@ -2195,12 +2276,12 @@ return -1; } else if (PyFile_Check(f)) { - FILE *fp = PyFile_AsFile(f); + PyFileObject *fobj = (PyFileObject *) f; #ifdef Py_USING_UNICODE - PyObject *enc = ((PyFileObject*)f)->f_encoding; + PyObject *enc = fobj->f_encoding; int result; #endif - if (fp == NULL) { + if (fobj->f_fp == NULL) { err_closed(); return -1; } @@ -2215,11 +2296,11 @@ value = v; Py_INCREF(value); } - result = PyObject_Print(value, fp, flags); + result = file_PyObject_Print(value, fobj, flags); Py_DECREF(value); return result; #else - return PyObject_Print(v, fp, flags); + return file_PyObject_Print(v, fobj, flags); #endif } writer = PyObject_GetAttrString(f, "write"); @@ -2257,6 +2338,7 @@ int PyFile_WriteString(const char *s, PyObject *f) { + if (f == NULL) { /* Should be caused by a pre-existing error */ if (!PyErr_Occurred()) @@ -2265,14 +2347,15 @@ return -1; } else if (PyFile_Check(f)) { + PyFileObject *fobj = (PyFileObject *) f; FILE *fp = PyFile_AsFile(f); if (fp == NULL) { err_closed(); return -1; } - Py_BEGIN_ALLOW_THREADS + FILE_BEGIN_ALLOW_THREADS(fobj) fputs(s, fp); - Py_END_ALLOW_THREADS + FILE_END_ALLOW_THREADS(fobj) return 0; } else if (!PyErr_Occurred()) { From buildbot at python.org Mon Apr 7 02:19:48 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 00:19:48 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080407001948.C3FFA1E400C@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/307 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_signal.py", line 156, in test_main pickle.dump(None, done_w) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/contextlib.py", line 157, in __exit__ self.thing.close() IOError: [Errno 9] Bad file descriptor 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 02:49:32 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 00:49:32 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080407004932.47B441E400C@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/174 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 116, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 1 test failed: test_smtplib sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 02:52:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 00:52:57 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080407005257.930E41E400C@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%203.0/builds/291 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 263, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'2093-2093-2093-2093-2093' Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'1001-1001-1001-1001-1001' Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'0002-0002-0002-0002-0002' 1 test failed: test_threading make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 03:53:40 2008 From: python-checkins at python.org (mark.hammond) Date: Mon, 7 Apr 2008 03:53:40 +0200 (CEST) Subject: [Python-checkins] r62197 - in python/trunk: Doc/distutils/builtdist.rst Lib/distutils/command/bdist.py Lib/distutils/command/bdist_msi.py Lib/distutils/command/bdist_wininst.py Lib/distutils/command/build.py Lib/distutils/command/build_ext.py Lib/distutils/command/install.py Lib/distutils/command/wininst-9.0-amd64.exe Lib/distutils/msvc9compiler.py Lib/distutils/msvccompiler.py Lib/distutils/util.py Misc/NEWS PC/example_nt/readme.txt PC/example_nt/setup.py PCbuild/bdist_wininst.vcproj PCbuild/pcbuild.sln Message-ID: <20080407015340.5AB6A1E400C@bag.python.org> Author: mark.hammond Date: Mon Apr 7 03:53:39 2008 New Revision: 62197 Added: python/trunk/Lib/distutils/command/wininst-9.0-amd64.exe (contents, props changed) python/trunk/PC/example_nt/setup.py (contents, props changed) Modified: python/trunk/Doc/distutils/builtdist.rst python/trunk/Lib/distutils/command/bdist.py python/trunk/Lib/distutils/command/bdist_msi.py python/trunk/Lib/distutils/command/bdist_wininst.py python/trunk/Lib/distutils/command/build.py python/trunk/Lib/distutils/command/build_ext.py python/trunk/Lib/distutils/command/install.py python/trunk/Lib/distutils/msvc9compiler.py python/trunk/Lib/distutils/msvccompiler.py python/trunk/Lib/distutils/util.py python/trunk/Misc/NEWS python/trunk/PC/example_nt/readme.txt python/trunk/PCbuild/bdist_wininst.vcproj python/trunk/PCbuild/pcbuild.sln Log: Issue #2513: enable 64bit cross compilation on windows. Modified: python/trunk/Doc/distutils/builtdist.rst ============================================================================== --- python/trunk/Doc/distutils/builtdist.rst (original) +++ python/trunk/Doc/distutils/builtdist.rst Mon Apr 7 03:53:39 2008 @@ -329,6 +329,42 @@ The installer file will be written to the "distribution directory" --- normally :file:`dist/`, but customizable with the :option:`--dist-dir` option. +.. _cross-compile-windows: + +Cross-compiling on Windows +===================== + +Starting with Python 2.6, distutils is capable of cross-compiling between +Windows platforms. In practice, this means that with the correct tools +installed, you can use a 32bit version of Windows to create 64bit extensions +and vice-versa. + +To build for an alternate platform, specify the :option:`--plat-name` option +to the build command. Valid values are currently 'win32', 'win-amd64' and +'win-ia64'. For example, on a 32bit version of Windows, you could execute:: + + python setup.py build --plat-name=win-amd64 + +to build a 64bit version of your extension. The Windows Installers also +support this option, so the command:: + + python setup.py build --plat-name=win-amd64 bdist_wininst + +would create a 64bit installation executable on your 32bit version of Windows. + +To cross-compile, you must download the Python source code and cross-compile +Python itself for the platform you are targetting - it is not possible from a +binary installtion of Python (as the .lib etc file for other platforms are +not included.) In practice, this means the user of a 32 bit operating +system will need to use Visual Studio 2008 to open the +:file:`PCBuild/PCbuild.sln` solution in the Python source tree and build the +"x64" configuration of the 'pythoncore' project before cross-compiling +extensions is possible. + +Note that by default, Visual Studio 2008 does not install 64bit compilers or +tools. You may need to reexecute the Visual Studio setup process and select +these tools (using Control Panel->[Add/Remove] Programs is a convenient way to +check or modify your existing install.) .. _postinstallation-script: Modified: python/trunk/Lib/distutils/command/bdist.py ============================================================================== --- python/trunk/Lib/distutils/command/bdist.py (original) +++ python/trunk/Lib/distutils/command/bdist.py Mon Apr 7 03:53:39 2008 @@ -97,7 +97,10 @@ def finalize_options (self): # have to finalize 'plat_name' before 'bdist_base' if self.plat_name is None: - self.plat_name = get_platform() + if self.skip_build: + self.plat_name = get_platform() + else: + self.plat_name = self.get_finalized_command('build').plat_name # 'bdist_base' -- parent of per-built-distribution-format # temporary directories (eg. we'll probably have @@ -121,7 +124,6 @@ # finalize_options() - def run (self): # Figure out which sub-commands we need to run. Modified: python/trunk/Lib/distutils/command/bdist_msi.py ============================================================================== --- python/trunk/Lib/distutils/command/bdist_msi.py (original) +++ python/trunk/Lib/distutils/command/bdist_msi.py Mon Apr 7 03:53:39 2008 @@ -9,11 +9,11 @@ import sys, os from distutils.core import Command -from distutils.util import get_platform from distutils.dir_util import remove_tree from distutils.sysconfig import get_python_version from distutils.version import StrictVersion from distutils.errors import DistutilsOptionError +from distutils.util import get_platform from distutils import log import msilib from msilib import schema, sequence, text @@ -87,6 +87,9 @@ user_options = [('bdist-dir=', None, "temporary directory for creating the distribution"), + ('plat-name=', 'p', + "platform name to embed in generated filenames " + "(default: %s)" % get_platform()), ('keep-temp', 'k', "keep the pseudo-installation tree around after " + "creating the distribution archive"), @@ -116,6 +119,7 @@ def initialize_options (self): self.bdist_dir = None + self.plat_name = None self.keep_temp = 0 self.no_target_compile = 0 self.no_target_optimize = 0 @@ -139,7 +143,10 @@ else: self.target_version = short_version - self.set_undefined_options('bdist', ('dist_dir', 'dist_dir')) + self.set_undefined_options('bdist', + ('dist_dir', 'dist_dir'), + ('plat_name', 'plat_name'), + ) if self.pre_install_script: raise DistutilsOptionError, "the pre-install-script feature is not yet implemented" @@ -181,7 +188,7 @@ if not target_version: assert self.skip_build, "Should have already checked this" target_version = sys.version[0:3] - plat_specifier = ".%s-%s" % (get_platform(), target_version) + plat_specifier = ".%s-%s" % (self.plat_name, target_version) build = self.get_finalized_command('build') build.build_lib = os.path.join(build.build_base, 'lib' + plat_specifier) @@ -633,8 +640,7 @@ def get_installer_filename(self, fullname): # Factored out to allow overriding in subclasses - plat = get_platform() - installer_name = os.path.join(self.dist_dir, - "%s.%s-py%s.msi" % - (fullname, plat, self.target_version)) + base_name = "%s.%s-py%s.msi" % (fullname, self.plat_name, + self.target_version) + installer_name = os.path.join(self.dist_dir, base_name) return installer_name Modified: python/trunk/Lib/distutils/command/bdist_wininst.py ============================================================================== --- python/trunk/Lib/distutils/command/bdist_wininst.py (original) +++ python/trunk/Lib/distutils/command/bdist_wininst.py Mon Apr 7 03:53:39 2008 @@ -21,6 +21,9 @@ user_options = [('bdist-dir=', None, "temporary directory for creating the distribution"), + ('plat-name=', 'p', + "platform name to embed in generated filenames " + "(default: %s)" % get_platform()), ('keep-temp', 'k', "keep the pseudo-installation tree around after " + "creating the distribution archive"), @@ -54,6 +57,7 @@ def initialize_options (self): self.bdist_dir = None + self.plat_name = None self.keep_temp = 0 self.no_target_compile = 0 self.no_target_optimize = 0 @@ -82,7 +86,10 @@ " option must be specified" % (short_version,) self.target_version = short_version - self.set_undefined_options('bdist', ('dist_dir', 'dist_dir')) + self.set_undefined_options('bdist', + ('dist_dir', 'dist_dir'), + ('plat_name', 'plat_name'), + ) if self.install_script: for script in self.distribution.scripts: @@ -110,6 +117,7 @@ install.root = self.bdist_dir install.skip_build = self.skip_build install.warn_dir = 0 + install.plat_name = self.plat_name install_lib = self.reinitialize_command('install_lib') # we do not want to include pyc or pyo files @@ -127,7 +135,7 @@ if not target_version: assert self.skip_build, "Should have already checked this" target_version = sys.version[0:3] - plat_specifier = ".%s-%s" % (get_platform(), target_version) + plat_specifier = ".%s-%s" % (self.plat_name, target_version) build = self.get_finalized_command('build') build.build_lib = os.path.join(build.build_base, 'lib' + plat_specifier) @@ -285,11 +293,11 @@ # if we create an installer for a specific python version, # it's better to include this in the name installer_name = os.path.join(self.dist_dir, - "%s.win32-py%s.exe" % - (fullname, self.target_version)) + "%s.%s-py%s.exe" % + (fullname, self.plat_name, self.target_version)) else: installer_name = os.path.join(self.dist_dir, - "%s.win32.exe" % fullname) + "%s.%s.exe" % (fullname, self.plat_name)) return installer_name # get_installer_filename() @@ -312,9 +320,9 @@ bv = get_build_version() else: if self.target_version < "2.4": - bv = "6" + bv = 6.0 else: - bv = "7.1" + bv = 7.1 else: # for current version - use authoritative check. bv = get_build_version() @@ -323,6 +331,10 @@ directory = os.path.dirname(__file__) # we must use a wininst-x.y.exe built with the same C compiler # used for python. XXX What about mingw, borland, and so on? - filename = os.path.join(directory, "wininst-%.1f.exe" % bv) + if self.plat_name == 'win32': + sfix = '' + else: + sfix = self.plat_name[3:] # strip 'win' - leaves eg '-amd64' + filename = os.path.join(directory, "wininst-%.1f%s.exe" % (bv, sfix)) return open(filename, "rb").read() # class bdist_wininst Modified: python/trunk/Lib/distutils/command/build.py ============================================================================== --- python/trunk/Lib/distutils/command/build.py (original) +++ python/trunk/Lib/distutils/command/build.py Mon Apr 7 03:53:39 2008 @@ -8,6 +8,7 @@ import sys, os from distutils.core import Command +from distutils.errors import DistutilsOptionError from distutils.util import get_platform @@ -34,6 +35,9 @@ "build directory for scripts"), ('build-temp=', 't', "temporary build directory"), + ('plat-name=', 'p', + "platform name to build for, if supported " + "(default: %s)" % get_platform()), ('compiler=', 'c', "specify the compiler type"), ('debug', 'g', @@ -61,13 +65,25 @@ self.build_temp = None self.build_scripts = None self.compiler = None + self.plat_name = None self.debug = None self.force = 0 self.executable = None def finalize_options (self): - plat_specifier = ".%s-%s" % (get_platform(), sys.version[0:3]) + if self.plat_name is None: + self.plat_name = get_platform() + else: + # plat-name only supported for windows (other platforms are + # supported via ./configure flags, if at all). Avoid misleading + # other platforms. + if os.name != 'nt': + raise DistutilsOptionError( + "--plat-name only supported on Windows (try " + "using './configure --help' on your platform)") + + plat_specifier = ".%s-%s" % (self.plat_name, sys.version[0:3]) # Make it so Python 2.x and Python 2.x with --with-pydebug don't # share the same build directories. Doing so confuses the build Modified: python/trunk/Lib/distutils/command/build_ext.py ============================================================================== --- python/trunk/Lib/distutils/command/build_ext.py (original) +++ python/trunk/Lib/distutils/command/build_ext.py Mon Apr 7 03:53:39 2008 @@ -15,6 +15,7 @@ from distutils.sysconfig import customize_compiler, get_python_version from distutils.dep_util import newer_group from distutils.extension import Extension +from distutils.util import get_platform from distutils import log if os.name == 'nt': @@ -60,6 +61,9 @@ "directory for compiled extension modules"), ('build-temp=', 't', "directory for temporary files (build by-products)"), + ('plat-name=', 'p', + "platform name to cross-compile for, if supported " + "(default: %s)" % get_platform()), ('inplace', 'i', "ignore build-lib and put compiled extensions into the source " + "directory alongside your pure Python modules"), @@ -101,6 +105,7 @@ def initialize_options (self): self.extensions = None self.build_lib = None + self.plat_name = None self.build_temp = None self.inplace = 0 self.package = None @@ -127,7 +132,9 @@ ('build_temp', 'build_temp'), ('compiler', 'compiler'), ('debug', 'debug'), - ('force', 'force')) + ('force', 'force'), + ('plat_name', 'plat_name'), + ) if self.package is None: self.package = self.distribution.ext_package @@ -171,6 +178,9 @@ # for Release and Debug builds. # also Python's library directory must be appended to library_dirs if os.name == 'nt': + # the 'libs' directory is for binary installs - we assume that + # must be the *native* platform. But we don't really support + # cross-compiling via a binary install anyway, so we let it go. self.library_dirs.append(os.path.join(sys.exec_prefix, 'libs')) if self.debug: self.build_temp = os.path.join(self.build_temp, "Debug") @@ -181,8 +191,17 @@ # this allows distutils on windows to work in the source tree self.include_dirs.append(os.path.join(sys.exec_prefix, 'PC')) if MSVC_VERSION == 9: - self.library_dirs.append(os.path.join(sys.exec_prefix, - 'PCbuild')) + # Use the .lib files for the correct architecture + if self.plat_name == 'win32': + suffix = '' + else: + # win-amd64 or win-ia64 + suffix = self.plat_name[4:] + new_lib = os.path.join(sys.exec_prefix, 'PCbuild') + if suffix: + new_lib = os.path.join(new_lib, suffix) + self.library_dirs.append(new_lib) + elif MSVC_VERSION == 8: self.library_dirs.append(os.path.join(sys.exec_prefix, 'PC', 'VS8.0', 'win32release')) @@ -275,6 +294,11 @@ dry_run=self.dry_run, force=self.force) customize_compiler(self.compiler) + # If we are cross-compiling, init the compiler now (if we are not + # cross-compiling, init would not hurt, but people may rely on + # late initialization of compiler even if they shouldn't...) + if os.name == 'nt' and self.plat_name != get_platform(): + self.compiler.initialize(self.plat_name) # And make sure that any compile/link-related options (which might # come from the command-line or from the setup script) are set in Modified: python/trunk/Lib/distutils/command/install.py ============================================================================== --- python/trunk/Lib/distutils/command/install.py (original) +++ python/trunk/Lib/distutils/command/install.py Mon Apr 7 03:53:39 2008 @@ -16,6 +16,7 @@ from distutils.errors import DistutilsPlatformError from distutils.file_util import write_file from distutils.util import convert_path, subst_vars, change_root +from distutils.util import get_platform from distutils.errors import DistutilsOptionError if sys.version < "2.2": @@ -503,6 +504,14 @@ # Obviously have to build before we can install if not self.skip_build: self.run_command('build') + # If we built for any other platform, we can't install. + build_plat = self.distribution.get_command_obj('build').plat_name + # check warn_dir - it is a clue that the 'install' is happening + # internally, and not to sys.path, so we don't check the platform + # matches what we are running. + if self.warn_dir and build_plat != get_platform(): + raise DistutilsPlatformError("Can't install when " + "cross-compiling") # Run all sub-commands (at least those that need to be run) for cmd_name in self.get_sub_commands(): Added: python/trunk/Lib/distutils/command/wininst-9.0-amd64.exe ============================================================================== Binary file. No diff available. Modified: python/trunk/Lib/distutils/msvc9compiler.py ============================================================================== --- python/trunk/Lib/distutils/msvc9compiler.py (original) +++ python/trunk/Lib/distutils/msvc9compiler.py Mon Apr 7 03:53:39 2008 @@ -22,6 +22,7 @@ from distutils.ccompiler import (CCompiler, gen_preprocess_options, gen_lib_options) from distutils import log +from distutils.util import get_platform import _winreg @@ -38,13 +39,15 @@ VS_BASE = r"Software\Microsoft\VisualStudio\%0.1f" WINSDK_BASE = r"Software\Microsoft\Microsoft SDKs\Windows" NET_BASE = r"Software\Microsoft\.NETFramework" -ARCHS = {'DEFAULT' : 'x86', - 'intel' : 'x86', 'x86' : 'x86', - 'amd64' : 'x64', 'x64' : 'x64', - 'itanium' : 'ia64', 'ia64' : 'ia64', - } -# The globals VERSION, ARCH, MACROS and VC_ENV are defined later +# A map keyed by get_platform() return values to values accepted by +# 'vcvarsall.bat'. Note a cross-compile may combine these (eg, 'x86_amd64' is +# the param to cross-compile on x86 targetting amd64.) +PLAT_TO_VCVARS = { + 'win32' : 'x86', + 'win-amd64' : 'amd64', + 'win-ia64' : 'ia64', +} class Reg: """Helper class to read values from the registry @@ -176,23 +179,6 @@ # else we don't know what version of the compiler this is return None -def get_build_architecture(): - """Return the processor architecture. - - Possible results are "x86" or "amd64". - """ - prefix = " bit (" - i = sys.version.find(prefix) - if i == -1: - return "x86" - j = sys.version.find(")", i) - sysarch = sys.version[i+len(prefix):j].lower() - arch = ARCHS.get(sysarch, None) - if arch is None: - return ARCHS['DEFAULT'] - else: - return arch - def normalize_and_reduce_paths(paths): """Return a list of normalized paths with duplicates removed. @@ -251,6 +237,7 @@ if vcvarsall is None: raise IOError("Unable to find vcvarsall.bat") + log.debug("Calling 'vcvarsall.bat %s' (version=%s)", arch, version) popen = subprocess.Popen('"%s" %s & set' % (vcvarsall, arch), stdout=subprocess.PIPE, stderr=subprocess.PIPE) @@ -281,9 +268,7 @@ VERSION = get_build_version() if VERSION < 8.0: raise DistutilsPlatformError("VC %0.1f is not supported by this module" % VERSION) -ARCH = get_build_architecture() # MACROS = MacroExpander(VERSION) -VC_ENV = query_vcvarsall(VERSION, ARCH) class MSVCCompiler(CCompiler) : """Concrete class that implements an interface to Microsoft Visual C++, @@ -318,13 +303,25 @@ def __init__(self, verbose=0, dry_run=0, force=0): CCompiler.__init__ (self, verbose, dry_run, force) self.__version = VERSION - self.__arch = ARCH self.__root = r"Software\Microsoft\VisualStudio" # self.__macros = MACROS self.__path = [] + # target platform (.plat_name is consistent with 'bdist') + self.plat_name = None + self.__arch = None # deprecated name self.initialized = False - def initialize(self): + def initialize(self, plat_name=None): + # multi-init means we would need to check platform same each time... + assert not self.initialized, "don't init multiple times" + if plat_name is None: + plat_name = get_platform() + # sanity check for platforms to prevent obscure errors later. + ok_plats = 'win32', 'win-amd64', 'win-ia64' + if plat_name not in ok_plats: + raise DistutilsPlatformError("--plat-name must be one of %s" % + (ok_plats,)) + if "DISTUTILS_USE_SDK" in os.environ and "MSSdk" in os.environ and self.find_exe("cl.exe"): # Assume that the SDK set up everything alright; don't try to be # smarter @@ -334,9 +331,24 @@ self.rc = "rc.exe" self.mc = "mc.exe" else: - self.__paths = VC_ENV['path'].split(os.pathsep) - os.environ['lib'] = VC_ENV['lib'] - os.environ['include'] = VC_ENV['include'] + # On x86, 'vcvars32.bat amd64' creates an env that doesn't work; + # to cross compile, you use 'x86_amd64'. + # On AMD64, 'vcvars32.bat amd64' is a native build env; to cross + # compile use 'x86' (ie, it runs the x86 compiler directly) + # No idea how itanium handles this, if at all. + if plat_name == get_platform() or plat_name == 'win32': + # native build or cross-compile to win32 + plat_spec = PLAT_TO_VCVARS[plat_name] + else: + # cross compile from win32 -> some 64bit + plat_spec = PLAT_TO_VCVARS[get_platform()] + '_' + \ + PLAT_TO_VCVARS[plat_name] + + vc_env = query_vcvarsall(VERSION, plat_spec) + + self.__paths = vc_env['path'].split(os.pathsep) + os.environ['lib'] = vc_env['lib'] + os.environ['include'] = vc_env['include'] if len(self.__paths) == 0: raise DistutilsPlatformError("Python was built with %s, " Modified: python/trunk/Lib/distutils/msvccompiler.py ============================================================================== --- python/trunk/Lib/distutils/msvccompiler.py (original) +++ python/trunk/Lib/distutils/msvccompiler.py Mon Apr 7 03:53:39 2008 @@ -656,5 +656,5 @@ log.debug("Importing new compiler from distutils.msvc9compiler") OldMSVCCompiler = MSVCCompiler from distutils.msvc9compiler import MSVCCompiler - from distutils.msvc9compiler import get_build_architecture + # get_build_architecture not really relevant now we support cross-compile from distutils.msvc9compiler import MacroExpander Modified: python/trunk/Lib/distutils/util.py ============================================================================== --- python/trunk/Lib/distutils/util.py (original) +++ python/trunk/Lib/distutils/util.py Mon Apr 7 03:53:39 2008 @@ -30,7 +30,7 @@ irix64-6.2 Windows will return one of: - win-x86_64 (64bit Windows on x86_64 (AMD64)) + win-amd64 (64bit Windows on AMD64 (aka x86_64, Intel64, EM64T, etc) win-ia64 (64bit Windows on Itanium) win32 (all others - specifically, sys.platform is returned) @@ -45,7 +45,7 @@ j = string.find(sys.version, ")", i) look = sys.version[i+len(prefix):j].lower() if look=='amd64': - return 'win-x86_64' + return 'win-amd64' if look=='itanium': return 'win-ia64' return sys.platform Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Apr 7 03:53:39 2008 @@ -18,6 +18,10 @@ Library ------- +- Issue #2513: distutils on Windows is now capable of cross-compiling + extension modules between 32 and 64 bit platforms. See the distutls + build documentation for more information. + - Issue #815646: Individual file objects may now be used from multiple threads at once without fear of crashing the Python interpreter. If file.close() is called while an object is in use by another thread Modified: python/trunk/PC/example_nt/readme.txt ============================================================================== --- python/trunk/PC/example_nt/readme.txt (original) +++ python/trunk/PC/example_nt/readme.txt Mon Apr 7 03:53:39 2008 @@ -2,12 +2,34 @@ ======================================= This directory contains everything needed (except for the Python -distribution!) to build a Python extension module using Microsoft VC++ -("Developer Studio") version 7.1. It has been tested with VC++ 7.1 on -Python 2.4. You can also use earlier versions of VC to build Python -extensions, but the sample VC project file (example.dsw in this directory) -is in VC 7.1 format. Notice that you need to use the same compiler version -that was used to build Python itself. +distribution!) to build a Python extension module using Microsoft VC++. +Notice that you need to use the same compiler version that was used to build +Python itself. + +The simplest way to build this example is to use the distutils script +'setup.py'. To do this, simply execute: + + % python setup.py install + +after everything builds and installs, you can test it: + + % python -c "import example; example.foo()" + Hello, world + +See setup.py for more details. alternatively, see below for instructions on +how to build inside the Visual Studio environment. + +Visual Studio Build Instructions +================================ + +These are instructions how to build an extension using Visual C++. The +instructions and project files have not been updated to the latest VC +version. In general, it is recommended you use the 'setup.py' instructions +above. + +It has been tested with VC++ 7.1 on Python 2.4. You can also use earlier +versions of VC to build Python extensions, but the sample VC project file +(example.dsw in this directory) is in VC 7.1 format. COPY THIS DIRECTORY! -------------------- Added: python/trunk/PC/example_nt/setup.py ============================================================================== --- (empty file) +++ python/trunk/PC/example_nt/setup.py Mon Apr 7 03:53:39 2008 @@ -0,0 +1,22 @@ +# This is an example of a distutils 'setup' script for the example_nt +# sample. This provides a simpler way of building your extension +# and means you can avoid keeping MSVC solution files etc in source-control. +# It also means it should magically build with all compilers supported by +# python. + +# USAGE: you probably want 'setup.py install' - but execute 'setup.py --help' +# for all the details. + +# NOTE: This is *not* a sample for distutils - it is just the smallest +# script that can build this. See distutils docs for more info. + +from distutils.core import setup, Extension + +example_mod = Extension('example', sources = ['example.c']) + + +setup(name = "example", + version = "1.0", + description = "A sample extension module", + ext_modules = [example_mod], +) Modified: python/trunk/PCbuild/bdist_wininst.vcproj ============================================================================== --- python/trunk/PCbuild/bdist_wininst.vcproj (original) +++ python/trunk/PCbuild/bdist_wininst.vcproj Mon Apr 7 03:53:39 2008 @@ -1,7 +1,7 @@ + @@ -104,6 +107,96 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + Modified: python/trunk/PCbuild/pcbuild.sln ============================================================================== --- python/trunk/PCbuild/pcbuild.sln (original) +++ python/trunk/PCbuild/pcbuild.sln Mon Apr 7 03:53:39 2008 @@ -482,13 +482,13 @@ {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|x64.ActiveCfg = Release|x64 {D06B6426-4762-44CC-8BAD-D79052507F2F}.Release|x64.Build.0 = Release|x64 {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Debug|Win32.ActiveCfg = Release|Win32 - {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Debug|x64.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Debug|x64.ActiveCfg = Release|x64 {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGInstrument|Win32.ActiveCfg = Release|Win32 - {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGInstrument|x64.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGInstrument|x64.ActiveCfg = Release|x64 {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGUpdate|Win32.ActiveCfg = Release|Win32 - {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGUpdate|x64.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.PGUpdate|x64.ActiveCfg = Release|x64 {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|Win32.ActiveCfg = Release|Win32 - {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|x64.ActiveCfg = Release|Win32 + {EB1C19C1-1F18-421E-9735-CAEE69DC6A3C}.Release|x64.ActiveCfg = Release|x64 {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|Win32.ActiveCfg = Debug|Win32 {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|Win32.Build.0 = Debug|Win32 {447F05A8-F581-4CAC-A466-5AC7936E207E}.Debug|x64.ActiveCfg = Debug|x64 From python-checkins at python.org Mon Apr 7 03:59:41 2008 From: python-checkins at python.org (mark.hammond) Date: Mon, 7 Apr 2008 03:59:41 +0200 (CEST) Subject: [Python-checkins] r62198 - python/trunk/Doc/distutils/builtdist.rst Message-ID: <20080407015941.636FF1E400C@bag.python.org> Author: mark.hammond Date: Mon Apr 7 03:59:40 2008 New Revision: 62198 Modified: python/trunk/Doc/distutils/builtdist.rst Log: correct heading underline for new "Cross-compiling on Windows" section Modified: python/trunk/Doc/distutils/builtdist.rst ============================================================================== --- python/trunk/Doc/distutils/builtdist.rst (original) +++ python/trunk/Doc/distutils/builtdist.rst Mon Apr 7 03:59:40 2008 @@ -332,7 +332,7 @@ .. _cross-compile-windows: Cross-compiling on Windows -===================== +========================== Starting with Python 2.6, distutils is capable of cross-compiling between Windows platforms. In practice, this means that with the correct tools From buildbot at python.org Mon Apr 7 04:19:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 02:19:17 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080407021917.67FD61E400C@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/203 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: thomas.wouters BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 05:08:29 2008 From: python-checkins at python.org (martin.v.loewis) Date: Mon, 7 Apr 2008 05:08:29 +0200 (CEST) Subject: [Python-checkins] r62199 - in python/trunk/Objects: stringlib/formatter.h stringlib/string_format.h unicodeobject.c Message-ID: <20080407030829.9675B1E400C@bag.python.org> Author: martin.v.loewis Date: Mon Apr 7 05:08:28 2008 New Revision: 62199 Modified: python/trunk/Objects/stringlib/formatter.h python/trunk/Objects/stringlib/string_format.h python/trunk/Objects/unicodeobject.c Log: Bug #2388: Fix gcc warnings when compiling with --enable-unicode=ucs4. Modified: python/trunk/Objects/stringlib/formatter.h ============================================================================== --- python/trunk/Objects/stringlib/formatter.h (original) +++ python/trunk/Objects/stringlib/formatter.h Mon Apr 7 05:08:28 2008 @@ -785,8 +785,19 @@ break; default: /* unknown */ - PyErr_Format(PyExc_ValueError, "Unknown conversion type %c", - format.type); + #if STRINGLIB_IS_UNICODE + /* If STRINGLIB_CHAR is Py_UNICODE, %c might be out-of-range, + hence the two cases. If it is char, gcc complains that the + condition below is always true, hence the ifdef. */ + if (format.type > 32 && format.type <128) + #endif + PyErr_Format(PyExc_ValueError, "Unknown conversion type %c", + (char)format.type); + #if STRINGLIB_IS_UNICODE + else + PyErr_Format(PyExc_ValueError, "Unknown conversion type '\\x%x'", + (unsigned int)format.type); + #endif goto done; } Modified: python/trunk/Objects/stringlib/string_format.h ============================================================================== --- python/trunk/Objects/stringlib/string_format.h (original) +++ python/trunk/Objects/stringlib/string_format.h Mon Apr 7 05:08:28 2008 @@ -740,9 +740,17 @@ case 's': return STRINGLIB_TOSTR(obj); default: - PyErr_Format(PyExc_ValueError, - "Unknown converion specifier %c", - conversion); + if (conversion > 32 && conversion < 127) { + /* It's the ASCII subrange; casting to char is safe + (assuming the execution character set is an ASCII + superset). */ + PyErr_Format(PyExc_ValueError, + "Unknown conversion specifier %c", + (char)conversion); + } else + PyErr_Format(PyExc_ValueError, + "Unknown conversion specifier \\x%x", + (unsigned int)conversion); return NULL; } } Modified: python/trunk/Objects/unicodeobject.c ============================================================================== --- python/trunk/Objects/unicodeobject.c (original) +++ python/trunk/Objects/unicodeobject.c Mon Apr 7 05:08:28 2008 @@ -8644,7 +8644,7 @@ if (!isnumok) { PyErr_Format(PyExc_TypeError, "%%%c format: a number is required, " - "not %.200s", c, Py_TYPE(v)->tp_name); + "not %.200s", (char)c, Py_TYPE(v)->tp_name); goto onError; } if (flags & F_ZERO) From buildbot at python.org Mon Apr 7 05:38:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 03:38:14 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080407033814.CE4EB1E400C@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1249 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jeffrey.yasskin BUILD FAILED: failed test Excerpt from the test logfile: 18 tests failed: test_bsddb test_bufio test_bz2 test_deque test_distutils test_file test_fileinput test_gzip test_io test_iter test_mailbox test_mmap test_plistlib test_set test_univnewlines test_urllib test_urllib2 test_zipfile ====================================================================== ERROR: test_primepat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 56, in test_primepat self.drive_one("1234567890\00\01\02\03\04\05\06") File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 51, in drive_one self.try_one(teststring[:-1]) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBug1191043 (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 264, in testBug1191043 f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIterator (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 109, in testIterator self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testModeU (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 253, in testModeU self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testOpenDel (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 242, in testOpenDel self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testRead (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 62, in testRead self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testRead100 (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 83, in testRead100 self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testReadChunk10 (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 70, in testReadChunk10 self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testReadLine (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 90, in testReadLine self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testReadLines (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 100, in testReadLines self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekBackwards (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 197, in testSeekBackwards self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekBackwardsFromEnd (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 206, in testSeekBackwardsFromEnd self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekForward (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 188, in testSeekForward self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekPostEnd (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 214, in testSeekPostEnd self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekPostEndTwice (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 223, in testSeekPostEndTwice self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testSeekPreStart (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 233, in testSeekPreStart self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testUniversalNewlinesCRLF (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 133, in testUniversalNewlinesCRLF self.createTempFile(crlf=1) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testUniversalNewlinesLF (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 125, in testUniversalNewlinesLF self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWrite (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 141, in testWrite bz2f = BZ2File(self.filename, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWriteChunks10 (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 151, in testWriteChunks10 bz2f = BZ2File(self.filename, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWriteLines (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 166, in testWriteLines bz2f = BZ2File(self.filename, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testWriteMethodsOnReadOnlyFile (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 178, in testWriteMethodsOnReadOnlyFile bz2f = BZ2File(self.filename, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testXReadLines (test.test_bz2.BZ2FileTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 117, in testXReadLines self.createTempFile() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bz2.py", line 52, in createTempFile f = open(self.filename, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 78, in test_maxlen fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 284, in test_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 48, in test_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 85, in test_readline self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 98, in test_readlines self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 112, in test_seek_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 132, in test_seek_whence self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 144, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 38, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: Test seek/tell using the StatefulIncrementalDecoder. ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 944, in testSeekAndTell testSeekAndTellWithData(input) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 924, in testSeekAndTellWithData decoded = f.read() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1472, in read decoder = self._decoder or self._get_decoder() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1269, in _get_decoder decoder = make_decoder(self._errors) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 523, in __init__ codecs.IncrementalDecoder.__init__(self, errors) AttributeError: 'NoneType' object has no attribute 'IncrementalDecoder' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_labels (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_basic (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 24, in test_basic f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_double_close (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 298, in test_double_close f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_entire_file (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 312, in test_entire_file f = open(TESTFN, "w+") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_find_end (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 262, in test_find_end f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_move (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 326, in test_move f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_offset (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 390, in test_offset f = open (TESTFN, 'w+b') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_rfind (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 280, in test_rfind f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tougher_find (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mmap.py", line 244, in test_tougher_find f = open(TESTFN, 'w+') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_copy (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = file(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = file(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_0_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = file(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_5_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = file(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_8193_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = file(test_support.TESTFN, 'wb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib2.py", line 612, in test_file f = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 31, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 31, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 31, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 31, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 31, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 716, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 716, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 06:56:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 04:56:52 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080407045652.975D91E400C@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/707 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 07:19:27 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 7 Apr 2008 07:19:27 +0200 (CEST) Subject: [Python-checkins] r62202 - in doctools/trunk: CHANGES doc/markup/desc.rst sphinx/directives.py sphinx/roles.py Message-ID: <20080407051927.9667C1E400C@bag.python.org> Author: georg.brandl Date: Mon Apr 7 07:19:26 2008 New Revision: 62202 Modified: doctools/trunk/CHANGES doctools/trunk/doc/markup/desc.rst doctools/trunk/sphinx/directives.py doctools/trunk/sphinx/roles.py Log: Fix :term:`title `, and make giving multiple cmdoptions possible. Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Mon Apr 7 07:19:26 2008 @@ -10,6 +10,11 @@ * sphinx.directives: Allow giving a different title to documents in the toctree. +* sphinx.directives: Allow giving multiple options in a ``cmdoption`` + directive. + +* sphinx.roles: Fix referencing glossary terms with explicit targets. + * sphinx.builder, sphinx.environment: Gracefully handle some exception cases. Modified: doctools/trunk/doc/markup/desc.rst ============================================================================== --- doctools/trunk/doc/markup/desc.rst (original) +++ doctools/trunk/doc/markup/desc.rst Mon Apr 7 07:19:26 2008 @@ -175,15 +175,19 @@ Describes a Python bytecode instruction (this is not very useful for projects other than Python itself). -.. directive:: .. cmdoption:: name args +.. directive:: .. cmdoption:: name args, name args, ... Describes a command line option or switch. Option argument names should be enclosed in angle brackets. Example:: - .. cmdoption:: -m + .. cmdoption:: -m , --module Run a module as a script. + The directive will create a cross-reference target named after the *first* + option, referencable by :role:`option` (in the example case, you'd use + something like ``:option:`-m```). + .. directive:: .. envvar:: name Describes an environment variable that the documented code uses or defines. Modified: doctools/trunk/sphinx/directives.py ============================================================================== --- doctools/trunk/sphinx/directives.py (original) +++ doctools/trunk/sphinx/directives.py Mon Apr 7 07:19:26 2008 @@ -272,16 +272,24 @@ return opname.strip() -option_desc_re = re.compile(r'([-/])([-_a-zA-Z0-9]+)(\s*.*)') +option_desc_re = re.compile(r'(/|-|--)([-_a-zA-Z0-9]+)(\s*.*?)(?=,|$)') def parse_option_desc(signode, sig): """Transform an option description into RST nodes.""" - m = option_desc_re.match(sig) - if m is None: raise ValueError - prefix, optname, args = m.groups() - signode += addnodes.desc_name(prefix+optname, prefix+optname) - signode += addnodes.desc_classname(args, args) - return optname + count = 0 + firstname = '' + for m in option_desc_re.finditer(sig): + prefix, optname, args = m.groups() + if count: + signode += addnodes.desc_classname(', ', ', ') + signode += addnodes.desc_name(prefix+optname, prefix+optname) + signode += addnodes.desc_classname(args, args) + if not count: + firstname = optname + count += 1 + if not firstname: + raise ValueError + return firstname def desc_directive(desctype, arguments, options, content, lineno, Modified: doctools/trunk/sphinx/roles.py ============================================================================== --- doctools/trunk/sphinx/roles.py (original) +++ doctools/trunk/sphinx/roles.py Mon Apr 7 07:19:26 2008 @@ -150,18 +150,19 @@ target = text[brace+1:] innertext = text[:brace] # else, generate target from title - elif typ == 'term': + else: + target = text + # some special cases + if typ == 'option' and text[0] in '-/': + # strip option marker from target + target = target[1:] + if typ == 'term': # normalize whitespace in definition terms (if the term reference is # broken over a line, a newline will be in text) - target = ws_re.sub(' ', text).lower() - elif typ == 'option': - # strip option marker from target - if text[0] in '-/': - target = text[1:] - else: - target = text + target = ws_re.sub(' ', target).lower() else: - target = ws_re.sub('', text) + # remove all whitespace to avoid referencing problems + target = ws_re.sub('', target) pnode['reftarget'] = target pnode += innernodetypes.get(typ, nodes.literal)(rawtext, innertext, classes=['xref']) return [pnode], [] From buildbot at python.org Mon Apr 7 08:24:44 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 06:24:44 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080407062444.E8FF01E400C@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/159 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 4 tests failed: test_asynchat test_gc test_getargs2 test_profilehooks ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== FAIL: test_saveall (test.test_gc.GCTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_gc.py", line 193, in test_saveall self.assertEqual(gc.garbage, []) AssertionError: [] != [] ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 08:25:20 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 06:25:20 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080407062520.4C83A1E4018@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/176 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 08:33:21 2008 From: python-checkins at python.org (gregory.p.smith) Date: Mon, 7 Apr 2008 08:33:21 +0200 (CEST) Subject: [Python-checkins] r62204 - python/trunk/Modules/bz2module.c python/trunk/Modules/cPickle.c Message-ID: <20080407063321.C04F11E400C@bag.python.org> Author: gregory.p.smith Date: Mon Apr 7 08:33:21 2008 New Revision: 62204 Modified: python/trunk/Modules/bz2module.c python/trunk/Modules/cPickle.c Log: Use the new PyFile_IncUseCount & PyFile_DecUseCount calls appropriatly within the standard library. These modules use PyFile_AsFile and later release the GIL while operating on the previously returned FILE*. Modified: python/trunk/Modules/bz2module.c ============================================================================== --- python/trunk/Modules/bz2module.c (original) +++ python/trunk/Modules/bz2module.c Mon Apr 7 08:33:21 2008 @@ -1063,6 +1063,10 @@ } else { /* we cannot move back, so rewind the stream */ BZ2_bzReadClose(&bzerror, self->fp); + if (self->fp) { + PyFile_DecUseCount(self->file); + self->fp = NULL; + } if (bzerror != BZ_OK) { Util_CatchBZ2Error(bzerror); goto cleanup; @@ -1075,6 +1079,8 @@ self->pos = 0; self->fp = BZ2_bzReadOpen(&bzerror, PyFile_AsFile(self->file), 0, 0, NULL, 0); + if (self->fp) + PyFile_IncUseCount(self->file); if (bzerror != BZ_OK) { Util_CatchBZ2Error(bzerror); goto cleanup; @@ -1174,6 +1180,10 @@ 0, NULL, NULL); break; } + if (self->fp) { + PyFile_DecUseCount(self->file); + self->fp = NULL; + } self->mode = MODE_CLOSED; ret = PyObject_CallMethod(self->file, "close", NULL); if (bzerror != BZ_OK) { @@ -1376,6 +1386,7 @@ Util_CatchBZ2Error(bzerror); goto error; } + PyFile_IncUseCount(self->file); self->mode = (mode_char == 'r') ? MODE_READ : MODE_WRITE; @@ -1410,6 +1421,10 @@ 0, NULL, NULL); break; } + if (self->fp) { + PyFile_DecUseCount(self->file); + self->fp = NULL; + } Util_DropReadAhead(self); Py_XDECREF(self->file); Py_TYPE(self)->tp_free((PyObject *)self); Modified: python/trunk/Modules/cPickle.c ============================================================================== --- python/trunk/Modules/cPickle.c (original) +++ python/trunk/Modules/cPickle.c Mon Apr 7 08:33:21 2008 @@ -431,9 +431,11 @@ return -1; } + PyFile_IncUseCount((PyFileObject *)self->file); Py_BEGIN_ALLOW_THREADS nbyteswritten = fwrite(s, sizeof(char), n, self->fp); Py_END_ALLOW_THREADS + PyFile_DecUseCount((PyFileObject *)self->file); if (nbyteswritten != (size_t)n) { PyErr_SetFromErrno(PyExc_IOError); return -1; @@ -542,9 +544,11 @@ self->buf_size = n; } + PyFile_IncUseCount((PyFileObject *)self->file); Py_BEGIN_ALLOW_THREADS nbytesread = fread(self->buf, sizeof(char), n, self->fp); Py_END_ALLOW_THREADS + PyFile_DecUseCount((PyFileObject *)self->file); if (nbytesread != (size_t)n) { if (feof(self->fp)) { PyErr_SetNone(PyExc_EOFError); From python-checkins at python.org Mon Apr 7 09:39:23 2008 From: python-checkins at python.org (mark.summerfield) Date: Mon, 7 Apr 2008 09:39:23 +0200 (CEST) Subject: [Python-checkins] r62205 - python/trunk/Doc/library/index.rst Message-ID: <20080407073923.716EF1E400C@bag.python.org> Author: mark.summerfield Date: Mon Apr 7 09:39:23 2008 New Revision: 62205 Modified: python/trunk/Doc/library/index.rst Log: changed "2500 components" to "several thousand" since the number keeps growning:-) Modified: python/trunk/Doc/library/index.rst ============================================================================== --- python/trunk/Doc/library/index.rst (original) +++ python/trunk/Doc/library/index.rst Mon Apr 7 09:39:23 2008 @@ -31,8 +31,9 @@ optional components. In addition to the standard library, there is a growing collection of -over 2500 additional components available from the `Python Package Index -`_. +several thousand components (from individual programs and modules to +packages and entire application development frameworks), available from +the `Python Package Index `_. .. toctree:: From buildbot at python.org Mon Apr 7 11:55:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 09:55:09 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080407095509.DF2F81E400C@bag.python.org> The Buildbot has detected a new failure of sparc Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%203.0/builds/181 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_tarfile make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 12:48:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 10:48:16 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu trunk Message-ID: <20080407104817.0705B1E4014@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%20trunk/builds/464 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: gregory.p.smith BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_tarfile make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 16:53:34 2008 From: python-checkins at python.org (martin.v.loewis) Date: Mon, 7 Apr 2008 16:53:34 +0200 (CEST) Subject: [Python-checkins] r62207 - python/trunk/Tools/msi/merge.py Message-ID: <20080407145334.EFB0C1E4014@bag.python.org> Author: martin.v.loewis Date: Mon Apr 7 16:53:34 2008 New Revision: 62207 Modified: python/trunk/Tools/msi/merge.py Log: Delete ALLUSERS property merged from CRT merge module, so that per-user installations become possible again. Modified: python/trunk/Tools/msi/merge.py ============================================================================== --- python/trunk/Tools/msi/merge.py (original) +++ python/trunk/Tools/msi/merge.py Mon Apr 7 16:53:34 2008 @@ -65,6 +65,11 @@ msilib.add_stream(db, stream, cabname) os.unlink(cabname) maxmedia += count + # The merge module sets ALLUSERS to 1 in the property table. + # This is undesired; delete that + v = db.OpenView("DELETE FROM Property WHERE Property='ALLUSERS'") + v.Execute(None) + v.Close() db.Commit() merge(msi, "SharedCRT", "TARGETDIR", modules) From python-checkins at python.org Mon Apr 7 16:54:17 2008 From: python-checkins at python.org (martin.v.loewis) Date: Mon, 7 Apr 2008 16:54:17 +0200 (CEST) Subject: [Python-checkins] r62208 - python/trunk/Tools/msi/msi.py Message-ID: <20080407145417.34FC11E4014@bag.python.org> Author: martin.v.loewis Date: Mon Apr 7 16:54:16 2008 New Revision: 62208 Modified: python/trunk/Tools/msi/msi.py Log: Make private_crt feature object a global variable. Modified: python/trunk/Tools/msi/msi.py ============================================================================== --- python/trunk/Tools/msi/msi.py (original) +++ python/trunk/Tools/msi/msi.py Mon Apr 7 16:54:16 2008 @@ -794,7 +794,7 @@ # (i.e. additional Python libraries) need to follow the parent feature. # Features that have no advertisement trigger (e.g. the test suite) # must not support advertisement - global default_feature, tcltk, htmlfiles, tools, testsuite, ext_feature + global default_feature, tcltk, htmlfiles, tools, testsuite, ext_feature, private_crt default_feature = Feature(db, "DefaultFeature", "Python", "Python Interpreter and Libraries", 1, directory = "TARGETDIR") From python-checkins at python.org Mon Apr 7 16:55:53 2008 From: python-checkins at python.org (martin.v.loewis) Date: Mon, 7 Apr 2008 16:55:53 +0200 (CEST) Subject: [Python-checkins] r62209 - python/trunk/Tools/msi/msi.py Message-ID: <20080407145553.613411E401A@bag.python.org> Author: martin.v.loewis Date: Mon Apr 7 16:55:53 2008 New Revision: 62209 Modified: python/trunk/Tools/msi/msi.py Log: Drop support for 7.1 CRT. Modified: python/trunk/Tools/msi/msi.py ============================================================================== --- python/trunk/Tools/msi/msi.py (original) +++ python/trunk/Tools/msi/msi.py Mon Apr 7 16:55:53 2008 @@ -29,7 +29,6 @@ # path to PCbuild directory PCBUILD="PCbuild" # msvcrt version -#MSVCR = "71" MSVCR = "90" try: @@ -106,7 +105,6 @@ # Using the same UUID is fine since these files are versioned, # so Installer will always keep the newest version. # NOTE: All uuids are self generated. -msvcr71_uuid = "{8666C8DD-D0B4-4B42-928E-A69E32FA5D4D}" msvcr90_uuid = "{9C28CD84-397C-4045-855C-28B02291A272}" pythondll_uuid = { "24":"{9B81E618-2301-4035-AC77-75D9ABEB7301}", @@ -820,27 +818,6 @@ "Python test suite (Lib/test/)", 11, parent = default_feature, attributes=2|8) -def extract_msvcr71(): - import _winreg - # Find the location of the merge modules - k = _winreg.OpenKey( - _winreg.HKEY_LOCAL_MACHINE, - r"Software\Microsoft\VisualStudio\7.1\Setup\VS") - dir = _winreg.QueryValueEx(k, "MSMDir")[0] - _winreg.CloseKey(k) - files = glob.glob1(dir, "*CRT71*") - assert len(files) == 1, (dir, files) - file = os.path.join(dir, files[0]) - # Extract msvcr71.dll - m = msilib.MakeMerge2() - m.OpenModule(file, 0) - m.ExtractFiles(".") - m.CloseModule() - # Find the version/language of msvcr71.dll - installer = msilib.MakeInstaller() - return installer.FileVersion("msvcr71.dll", 0), \ - installer.FileVersion("msvcr71.dll", 1) - def extract_msvcr90(): # Find the redistributable files dir = os.path.join(os.environ['VS90COMNTOOLS'], r"..\..\VC\redist\x86\Microsoft.VC90.CRT") @@ -902,21 +879,11 @@ version=pyversion, language=installer.FileVersion(pydllsrc, 1)) DLLs = PyDirectory(db, cab, root, srcdir + "/" + PCBUILD, "DLLs", "DLLS|DLLs") - # XXX determine dependencies - if MSVCR == "90": - root.start_component("msvcr90", feature=private_crt) - for file, kw in extract_msvcr90(): - root.add_file(file, **kw) - if file.endswith("manifest"): - DLLs.add_file(file, **kw) - else: - version, lang = extract_msvcr71() - dlldir.start_component("msvcr71", flags=8, keyfile="msvcr71.dll", - uuid=msvcr71_uuid) - dlldir.add_file("msvcr71.dll", src=os.path.abspath("msvcr71.dll"), - version=version, language=lang) - tmpfiles.append("msvcr71.dll") - + root.start_component("msvcr90", feature=private_crt) + for file, kw in extract_msvcr90(): + root.add_file(file, **kw) + if file.endswith("manifest"): + DLLs.add_file(file, **kw) # Check if _ctypes.pyd exists have_ctypes = os.path.exists(srcdir+"/%s/_ctypes.pyd" % PCBUILD) From buildbot at python.org Mon Apr 7 17:12:55 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 15:12:55 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080407151255.ED0A01E4014@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/314 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.summerfield,martin.v.loewis BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 17:28:58 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 15:28:58 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080407152858.54FE81E4018@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/268 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.summerfield,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl sincerely, -The Buildbot From lists at cheimes.de Mon Apr 7 17:42:17 2008 From: lists at cheimes.de (Christian Heimes) Date: Mon, 07 Apr 2008 17:42:17 +0200 Subject: [Python-checkins] r62195 - in python/trunk: Doc/c-api/file.rst Include/fileobject.h Lib/test/test_file.py Misc/NEWS Objects/fileobject.c In-Reply-To: <20080406231118.1A1961E400C@bag.python.org> References: <20080406231118.1A1961E400C@bag.python.org> Message-ID: <47FA40D9.5090806@cheimes.de> gregory.p.smith schrieb: > Author: gregory.p.smith > Date: Mon Apr 7 01:11:17 2008 > New Revision: 62195 > > Modified: > python/trunk/Doc/c-api/file.rst > python/trunk/Include/fileobject.h > python/trunk/Lib/test/test_file.py > python/trunk/Misc/NEWS > python/trunk/Objects/fileobject.c > Log: > Make file objects as thread safe as the underlying libc FILE* implementation. > close() will now raise an IOError if any operations on the file object > are currently in progress in other threads. > > Most code was written by Antoine Pitrou (pitrou). Additional testing, > documentation and test suite cleanup done by me (gregory.p.smith). > > Fixes issue 815646 and 595601 (as well as many other bugs and > references to this problem dating back to the dawn of Python). How much of the code needs to go into Python 3000? Python 3000 exposes only file descriptors and not wrapepd FILE*. It should be safe without the patch, shouldn't it? Christian From buildbot at python.org Mon Apr 7 18:11:22 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 16:11:22 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080407161122.B32D81E4018@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1134 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.summerfield,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\test\test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\test\test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\test\test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\test\test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 500, in __bootstrap_inner self.run() File "C:\buildbot\trunk.heller-windows-amd64\build\lib\threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\test\test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "C:\buildbot\trunk.heller-windows-amd64\build\lib\bsddb\dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 1 test failed: test_urllibnet sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 18:21:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 16:21:26 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080407162126.C756A1E4014@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1253 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: The web-page 'rebuild' button was pressed by '': Build Source Stamp: [branch trunk] HEAD Blamelist: mark.summerfield,martin.v.loewis BUILD FAILED: failed svn sincerely, -The Buildbot From python-checkins at python.org Mon Apr 7 18:34:04 2008 From: python-checkins at python.org (martin.v.loewis) Date: Mon, 7 Apr 2008 18:34:04 +0200 (CEST) Subject: [Python-checkins] r62210 - python/trunk/Tools/msi/msi.py Message-ID: <20080407163404.DED631E4014@bag.python.org> Author: martin.v.loewis Date: Mon Apr 7 18:34:04 2008 New Revision: 62210 Modified: python/trunk/Tools/msi/msi.py Log: Make the "private CRT" case work, by editing the manifest in DLLs to refer to the root copy of the CRT. Modified: python/trunk/Tools/msi/msi.py ============================================================================== --- python/trunk/Tools/msi/msi.py (original) +++ python/trunk/Tools/msi/msi.py Mon Apr 7 18:34:04 2008 @@ -105,7 +105,6 @@ # Using the same UUID is fine since these files are versioned, # so Installer will always keep the newest version. # NOTE: All uuids are self generated. -msvcr90_uuid = "{9C28CD84-397C-4045-855C-28B02291A272}" pythondll_uuid = { "24":"{9B81E618-2301-4035-AC77-75D9ABEB7301}", "25":"{2e41b118-38bd-4c1b-a840-6977efd1b911}", @@ -879,11 +878,24 @@ version=pyversion, language=installer.FileVersion(pydllsrc, 1)) DLLs = PyDirectory(db, cab, root, srcdir + "/" + PCBUILD, "DLLs", "DLLS|DLLs") + + # msvcr90.dll: Need to place the DLL and the manifest into the root directory, + # plus another copy of the manifest in the DLLs directory, with the manifest + # pointing to the root directory root.start_component("msvcr90", feature=private_crt) - for file, kw in extract_msvcr90(): - root.add_file(file, **kw) - if file.endswith("manifest"): - DLLs.add_file(file, **kw) + # Results are ID,keyword pairs + manifest, crtdll = extract_msvcr90() + root.add_file(manifest[0], **manifest[1]) + root.add_file(crtdll[0], **crtdll[1]) + # Copy the manifest + manifest_dlls = manifest[0]+".root" + open(manifest_dlls, "w").write(open(manifest[1]['src']).read().replace("msvcr","../msvcr")) + DLLs.start_component("msvcr90_dlls", feature=private_crt) + DLLs.add_file(manifest[0], src=os.path.abspath(manifest_dlls)) + + # Now start the main component for the DLLs directory; + # no regular files have been added to the directory yet. + DLLs.start_component() # Check if _ctypes.pyd exists have_ctypes = os.path.exists(srcdir+"/%s/_ctypes.pyd" % PCBUILD) From buildbot at python.org Mon Apr 7 18:42:24 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 16:42:24 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080407164224.B67A61E4024@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/947 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.summerfield,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_urllibnet sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 18:54:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 16:54:09 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo trunk Message-ID: <20080407165409.678CA1E4017@bag.python.org> The Buildbot has detected a new failure of x86 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%20trunk/builds/3391 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') make: *** [buildbottest] Killed sincerely, -The Buildbot From guido at python.org Mon Apr 7 19:21:43 2008 From: guido at python.org (Guido van Rossum) Date: Mon, 7 Apr 2008 10:21:43 -0700 Subject: [Python-checkins] [Python-3000] r62195 - in python/trunk: Doc/c-api/file.rst Include/fileobject.h Lib/test/test_file.py Misc/NEWS Objects/fileobject.c In-Reply-To: <47FA40D9.5090806@cheimes.de> References: <20080406231118.1A1961E400C@bag.python.org> <47FA40D9.5090806@cheimes.de> Message-ID: Right, this doesn't apply to py3k files at all. (Not that py3k files are all that thead-safe. :-) On Mon, Apr 7, 2008 at 8:42 AM, Christian Heimes wrote: > gregory.p.smith schrieb: > > > Author: gregory.p.smith > > Date: Mon Apr 7 01:11:17 2008 > > New Revision: 62195 > > > > Modified: > > python/trunk/Doc/c-api/file.rst > > python/trunk/Include/fileobject.h > > python/trunk/Lib/test/test_file.py > > python/trunk/Misc/NEWS > > python/trunk/Objects/fileobject.c > > Log: > > Make file objects as thread safe as the underlying libc FILE* implementation. > > close() will now raise an IOError if any operations on the file object > > are currently in progress in other threads. > > > > Most code was written by Antoine Pitrou (pitrou). Additional testing, > > documentation and test suite cleanup done by me (gregory.p.smith). > > > > Fixes issue 815646 and 595601 (as well as many other bugs and > > references to this problem dating back to the dawn of Python). > > How much of the code needs to go into Python 3000? Python 3000 exposes > only file descriptors and not wrapepd FILE*. It should be safe without > the patch, shouldn't it? > > Christian > _______________________________________________ > Python-3000 mailing list > Python-3000 at python.org > http://mail.python.org/mailman/listinfo/python-3000 > Unsubscribe: http://mail.python.org/mailman/options/python-3000/guido%40python.org > -- --Guido van Rossum (home page: http://www.python.org/~guido/) From python-checkins at python.org Mon Apr 7 20:10:35 2008 From: python-checkins at python.org (barry.warsaw) Date: Mon, 7 Apr 2008 20:10:35 +0200 (CEST) Subject: [Python-checkins] r62212 - sandbox/trunk/release/release.py Message-ID: <20080407181035.DF6101E4013@bag.python.org> Author: barry.warsaw Date: Mon Apr 7 20:10:22 2008 New Revision: 62212 Modified: sandbox/trunk/release/release.py Log: Lots of changes based on first use for 3.0a4 and 2.6a2. Modified: sandbox/trunk/release/release.py ============================================================================== --- sandbox/trunk/release/release.py (original) +++ sandbox/trunk/release/release.py Mon Apr 7 20:10:22 2008 @@ -10,6 +10,13 @@ import shutil import tempfile +from hashlib import md5 +from string import Template +from urlparse import urlsplit, urlunsplit + +SPACE = ' ' + + # Ideas stolen from Mailman's release script, Lib/tokens.py and welease def error(*msgs): @@ -18,8 +25,9 @@ print >> sys.stderr, msg sys.exit(1) + def run_cmd(args, silent=False): - cmd = " ".join(args) + cmd = SPACE.join(args) if not silent: print "Executing %s" % cmd try: @@ -30,13 +38,15 @@ except OSError: error("%s failed" % cmd) + def check_env(): if "EDITOR" not in os.environ: error("editor not detected.", - "Please set your EDITOR enviroment variable") + "Please set your EDITOR enviroment variable") if not os.path.exists(".svn"): error("CWD is not a Subversion checkout") + def get_arg_parser(): usage = "%prog [options] tagname" p = optparse.OptionParser(usage=usage) @@ -54,20 +64,33 @@ help="Tag the release in Subversion") return p -def constant_replace(fn, updated_constants, comment_start="/*", comment_end="*/"): + +def constant_replace(fn, updated_constants, + comment_start="/*", comment_end="*/"): "Inserts in between --start constant-- and --end constant-- in a file" start_tag = comment_start + "--start constants--" + comment_end end_tag = comment_start + "--end constants--" + comment_end - with open(fn) as fp: - lines = fp.read().splitlines() - try: - start = lines.index(start_tag) + 1 - end = lines.index(end_tag) - except ValueError: - error("%s doesn't have constant tags" % fn) - lines[start:end] = [updated_constants] - with open(fn, "w") as fp: - fp.write("\n".join(lines)) + with open(fn) as infile: + with open(fn + '.new', 'w') as outfile: + found_constants = False + waiting_for_end = False + for line in infile: + if line[:-1] == start_tag: + print >> outfile, start_tag + print >> outfile, updated_constants + print >> outfile, end_tag + waiting_for_end = True + found_constants = True + elif line[:-1] == end_tag: + waiting_for_end = False + elif waiting_for_end: + pass + else: + outfile.write(line) + if not found_constants: + error('Constant section delimiters not found: %s' % fn) + os.rename(fn + '.new', fn) + def bump(tag): print "Bumping version to %s" % tag @@ -90,20 +113,26 @@ print "done" print "Updating Include/patchlevel.h...", - template = """#define PY_MAJOR_VERSION [major] -#define PY_MINOR_VERSION [minor] -#define PY_MICRO_VERSION [patch] -#define PY_RELEASE_LEVEL [level] -#define PY_RELEASE_SERIAL [serial] -#define PY_VERSION \"[text]\"""" - for what in ("major", "minor", "patch", "serial", "text"): - template = template.replace("[" + what + "]", str(getattr(tag, what))) - level_defines = {"a" : "PY_RELEASE_LEVEL_ALPHA", - "b" : "PY_RELEASE_LEVEL_BETA", - "c" : "PY_RELEASE_LEVEL_GAMMA", - "f" : "PY_RELEASE_LEVEL_FINAL"} - template = template.replace("[level]", level_defines[tag.level]) - constant_replace("Include/patchlevel.h", template) + template = Template("""\ +#define PY_MAJOR_VERSION\t$major +#define PY_MINOR_VERSION\t$minor +#define PY_MICRO_VERSION\t$patch +#define PY_RELEASE_LEVEL\t$level +#define PY_RELEASE_SERIAL\t$serial + +/* Version as a string */ +#define PY_VERSION \t\"$text\"""") + substitutions = {} + for what in ('major', 'minor', 'patch', 'serial', 'text'): + substitutions[what] = getattr(tag, what) + substitutions['level'] = dict( + a = 'PY_RELEASE_LEVEL_ALPHA', + b = 'PY_RELEASE_LEVEL_BETA', + c = 'PY_RELEASE_LEVEL_GAMMA', + f = 'PY_RELEASE_LEVEL_FINAL', + )[tag.level] + new_constants = template.substitute(substitutions) + constant_replace("Include/patchlevel.h", new_constants) print "done" print "Updating Lib/idlelib/idlever.py...", @@ -129,42 +158,58 @@ print "Bumped revision" print "Please commit and use --tag" + def manual_edit(fn): run_cmd([os.environ["EDITOR"], fn]) + def export(tag): - temp_dir = tempfile.mkdtemp("pyrelease") - if not os.path.exists("dist") and not os.path.isdir("dist"): + if not os.path.exists('dist'): print "creating dist directory" - os.mkdir("dist") + os.mkdir('dist') + if not os.path.isdir('dist'): + error('dist/ is not a directory') tgz = "dist/Python-%s.tgz" % tag.text bz = "dist/Python-%s.tar.bz2" % tag.text old_cur = os.getcwd() - os.chdir(temp_dir) try: + print "chdir'ing to dist" + os.chdir('dist') try: - print "Exporting tag" + print 'Exporting tag:', tag.text + python = 'Python-%s' % tag.text run_cmd(["svn", "export", - "http://svn.python.org/projects/python/tags/r%s" - % tag.text.replace(".", ""), "release"]) + "http://svn.python.org/projects/python/tags/r%s" + % tag.nickname, python]) print "Making .tgz" - run_cmd(["tar cf - release | gzip -9 > release.tgz"]) + run_cmd(["tar cf - %s | gzip -9 > %s.tgz" % (python, python)]) print "Making .tar.bz2" - run_cmd(["tar cf - release " - "| bzip2 -9 > release.tar.bz2"]) + run_cmd(["tar cf - %s | bzip2 -9 > %s.tar.bz2" % + (python, python)]) finally: os.chdir(old_cur) print "Moving files to dist" - os.rename(os.path.join(temp_dir, "release.tgz"), tgz) - os.rename(os.path.join(temp_dir, "release.tar.bz2"), bz) finally: print "Cleaning up" - shutil.rmtree(temp_dir) - print "Calculating md5sums" - run_cmd(["md5sum", tgz, ">", tgz + ".md5"]) - run_cmd(["md5sum", bz, ">", bz + ".md5"]) + print 'Calculating md5 sums' + md5sum_tgz = md5() + with open(tgz) as source: + md5sum_tgz.update(source.read()) + md5sum_bz2 = md5() + with open(bz) as source: + md5sum_bz2.update(source.read()) + print md5sum_tgz.hexdigest(), ' ', tgz + print md5sum_bz2.hexdigest(), ' ', bz + with open(tgz + '.md5', 'w') as md5file: + print >> md5file, md5sum_tgz.hexdigest() + with open(bz + '.md5', 'w') as md5file: + print >> md5file, md5sum_bz2.hexdigest() + print 'Signing tarballs' + os.system('gpg -bas ' + tgz) + os.system('gpg -bas ' + bz) print "**Now extract the archives and run the tests**" + class Tag: def __init__(self, text, major, minor, patch, level, serial): self.text = text @@ -174,11 +219,16 @@ self.patch = patch self.level = level self.serial = serial - self.basic_version = major + "." + minor + self.basic_version = major + '.' + minor def __str__(self): return self.text + @property + def nickname(self): + return self.text.replace('.', '') + + def break_up_tag(tag): exp = re.compile(r"(\d+)(?:\.(\d+)(?:\.(\d+))?)?(?:([abc])(\d+))?") result = exp.search(tag) @@ -194,6 +244,7 @@ data[i] = 0 return Tag(tag, *data) + def branch(tag): if tag.minor > 0 or tag.patch > 0 or tag.level != "f": print "It doesn't look like your making a final release." @@ -203,17 +254,22 @@ "svn+ssh://svn.python.org/projects/python/branches/" "release%s-maint" % (tag.major + tag.minor)]) + def get_current_location(): - data = subprocess.Popen("svn info", shell=True, - stdout=subprocess.PIPE).stdout.read().splitlines() + proc = subprocess.Popen('svn info', shell=True, stdout=subprocess.PIPE) + data = proc.stdout.read().splitlines() for line in data: - if line.startswith("URL: "): - return line.lstrip("URL: ") + if line.startswith('URL: '): + return line.lstrip('URL: ') + def make_tag(tag): - run_cmd(["svn", "copy", get_current_location(), - "svn+ssh://svn.python.org/projects/python/tags/r" - + tag.text.replace(".", "")]) + url = urlsplit(get_current_location()) + new_path = 'python/tags/r' + tag.nickname + tag_url = urlunsplit((url.scheme, url.netloc, new_path, + url.query, url.fragment)) + run_cmd(['svn', 'copy', get_current_location(), tag_url]) + def main(argv): parser = get_arg_parser() @@ -233,5 +289,6 @@ elif options.export: export(tag) + if __name__ == "__main__": main(sys.argv) From python-checkins at python.org Mon Apr 7 20:51:59 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 7 Apr 2008 20:51:59 +0200 (CEST) Subject: [Python-checkins] r62214 - python/trunk/Doc/includes/tzinfo-examples.py Message-ID: <20080407185159.827B61E4013@bag.python.org> Author: georg.brandl Date: Mon Apr 7 20:51:59 2008 New Revision: 62214 Modified: python/trunk/Doc/includes/tzinfo-examples.py Log: #2525: update timezone info examples in the docs. Modified: python/trunk/Doc/includes/tzinfo-examples.py ============================================================================== --- python/trunk/Doc/includes/tzinfo-examples.py (original) +++ python/trunk/Doc/includes/tzinfo-examples.py Mon Apr 7 20:51:59 2008 @@ -87,11 +87,31 @@ dt += timedelta(days_to_go) return dt -# In the US, DST starts at 2am (standard time) on the first Sunday in April. -DSTSTART = datetime(1, 4, 1, 2) -# and ends at 2am (DST time; 1am standard time) on the last Sunday of Oct. -# which is the first Sunday on or after Oct 25. -DSTEND = datetime(1, 10, 25, 1) + +# US DST Rules +# +# This is a simplified (i.e., wrong for a few cases) set of rules for US +# DST start and end times. For a complete and up-to-date set of DST rules +# and timezone definitions, visit the Olson Database (or try pytz): +# http://www.twinsun.com/tz/tz-link.htm +# http://sourceforge.net/projects/pytz/ (might not be up-to-date) +# +# In the US, since 2007, DST starts at 2am (standard time) on the second +# Sunday in March, which is the first Sunday on or after Mar 8. +DSTSTART_2007 = datetime(1, 3, 8, 2) +# and ends at 2am (DST time; 1am standard time) on the first Sunday of Nov. +DSTEND_2007 = datetime(1, 11, 1, 1) +# From 1987 to 2006, DST used to start at 2am (standard time) on the first +# Sunday in April and to end at 2am (DST time; 1am standard time) on the last +# Sunday of October, which is the first Sunday on or after Oct 25. +DSTSTART_1987_2006 = datetime(1, 4, 1, 2) +DSTEND_1987_2006 = datetime(1, 10, 25, 1) +# From 1967 to 1986, DST used to start at 2am (standard time) on the last +# Sunday in April (the one on or after April 24) and to end at 2am (DST time; +# 1am standard time) on the last Sunday of October, which is the first Sunday +# on or after Oct 25. +DSTSTART_1967_1986 = datetime(1, 4, 24, 2) +DSTEND_1967_1986 = DSTEND_1987_2006 class USTimeZone(tzinfo): @@ -122,9 +142,19 @@ return ZERO assert dt.tzinfo is self - # Find first Sunday in April & the last in October. - start = first_sunday_on_or_after(DSTSTART.replace(year=dt.year)) - end = first_sunday_on_or_after(DSTEND.replace(year=dt.year)) + # Find start and end times for US DST. For years before 1967, return + # ZERO for no DST. + if 2006 < dt.year: + dststart, dstend = DSTSTART_2007, DSTEND_2007 + elif 1986 < dt.year < 2007: + dststart, dstend = DSTSTART_1987_2006, DSTEND_1987_2006 + elif 1966 < dt.year < 1987: + dststart, dstend = DSTSTART_1967_1986, DSTEND_1967_1986 + else: + return ZERO + + start = first_sunday_on_or_after(dststart.replace(year=dt.year)) + end = first_sunday_on_or_after(dstend.replace(year=dt.year)) # Can't compare naive to aware objects, so strip the timezone from # dt first. From python-checkins at python.org Mon Apr 7 20:53:33 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 7 Apr 2008 20:53:33 +0200 (CEST) Subject: [Python-checkins] r62215 - python/branches/release25-maint/Doc/lib/tzinfo-examples.py Message-ID: <20080407185333.6CD581E4013@bag.python.org> Author: georg.brandl Date: Mon Apr 7 20:53:33 2008 New Revision: 62215 Modified: python/branches/release25-maint/Doc/lib/tzinfo-examples.py Log: #2525: update tzinfo example. Modified: python/branches/release25-maint/Doc/lib/tzinfo-examples.py ============================================================================== --- python/branches/release25-maint/Doc/lib/tzinfo-examples.py (original) +++ python/branches/release25-maint/Doc/lib/tzinfo-examples.py Mon Apr 7 20:53:33 2008 @@ -87,11 +87,31 @@ dt += timedelta(days_to_go) return dt -# In the US, DST starts at 2am (standard time) on the first Sunday in April. -DSTSTART = datetime(1, 4, 1, 2) -# and ends at 2am (DST time; 1am standard time) on the last Sunday of Oct. -# which is the first Sunday on or after Oct 25. -DSTEND = datetime(1, 10, 25, 1) + +# US DST Rules +# +# This is a simplified (i.e., wrong for a few cases) set of rules for US +# DST start and end times. For a complete and up-to-date set of DST rules +# and timezone definitions, visit the Olson Database (or try pytz): +# http://www.twinsun.com/tz/tz-link.htm +# http://sourceforge.net/projects/pytz/ (might not be up-to-date) +# +# In the US, since 2007, DST starts at 2am (standard time) on the second +# Sunday in March, which is the first Sunday on or after Mar 8. +DSTSTART_2007 = datetime(1, 3, 8, 2) +# and ends at 2am (DST time; 1am standard time) on the first Sunday of Nov. +DSTEND_2007 = datetime(1, 11, 1, 1) +# From 1987 to 2006, DST used to start at 2am (standard time) on the first +# Sunday in April and to end at 2am (DST time; 1am standard time) on the last +# Sunday of October, which is the first Sunday on or after Oct 25. +DSTSTART_1987_2006 = datetime(1, 4, 1, 2) +DSTEND_1987_2006 = datetime(1, 10, 25, 1) +# From 1967 to 1986, DST used to start at 2am (standard time) on the last +# Sunday in April (the one on or after April 24) and to end at 2am (DST time; +# 1am standard time) on the last Sunday of October, which is the first Sunday +# on or after Oct 25. +DSTSTART_1967_1986 = datetime(1, 4, 24, 2) +DSTEND_1967_1986 = DSTEND_1987_2006 class USTimeZone(tzinfo): @@ -122,9 +142,19 @@ return ZERO assert dt.tzinfo is self - # Find first Sunday in April & the last in October. - start = first_sunday_on_or_after(DSTSTART.replace(year=dt.year)) - end = first_sunday_on_or_after(DSTEND.replace(year=dt.year)) + # Find start and end times for US DST. For years before 1967, return + # ZERO for no DST. + if 2006 < dt.year: + dststart, dstend = DSTSTART_2007, DSTEND_2007 + elif 1986 < dt.year < 2007: + dststart, dstend = DSTSTART_1987_2006, DSTEND_1987_2006 + elif 1966 < dt.year < 1987: + dststart, dstend = DSTSTART_1967_1986, DSTEND_1967_1986 + else: + return ZERO + + start = first_sunday_on_or_after(dststart.replace(year=dt.year)) + end = first_sunday_on_or_after(dstend.replace(year=dt.year)) # Can't compare naive to aware objects, so strip the timezone from # dt first. From buildbot at python.org Mon Apr 7 21:02:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 19:02:54 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080407190254.4D94E1E4013@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/161 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_getargs2 ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 21:12:44 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 19:12:44 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080407191244.787C41E4018@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/764 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 21:37:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 19:37:35 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080407193735.BE2991E4013@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/207 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'0002-0002-0002-0002-0002' Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'1000-1000-1000-1000-1000' Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'2000-2000-2000-2000-2000' 1 test failed: test_signal ====================================================================== FAIL: test_main (test.test_signal.InterProcessSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_signal.py", line 169, in test_main self.fail(tb) AssertionError: Traceback (most recent call last): make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 22:40:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 20:40:06 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD 3.0 Message-ID: <20080407204006.C5DAB1E400A@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%203.0/builds/642 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-freebsd Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: guido.van.rossum BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 22:51:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 20:51:01 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080407205101.EEF481E400A@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/312 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_urllib2 test_urllib2net ====================================================================== ERROR: test_trivial (test.test_urllib2.TrivialTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2.py", line 35, in test_trivial f = urllib2.urlopen(file_url) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 124, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 380, in open response = self._open(req, data) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 398, in _open '_open', req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 358, in _call_chain result = func(*args) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1210, in file_open return self.open_local_file(req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1229, in open_local_file localfile = url2pathname(file) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 55, in url2pathname return unquote(pathname) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2.py", line 619, in test_file r = h.file_open(Request(url)) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1210, in file_open return self.open_local_file(req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1229, in open_local_file localfile = url2pathname(file) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 55, in url2pathname return unquote(pathname) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_http (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2.py", line 725, in test_http r.read; r.readline # wrapped MockFile methods AttributeError: addinfourl instance has no attribute 'read' ====================================================================== ERROR: test_build_opener (test.test_urllib2.MiscTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2.py", line 1044, in test_build_opener o = build_opener(FooHandler, BarHandler) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 461, in build_opener opener.add_handler(klass()) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 673, in __init__ proxies = getproxies() File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 1294, in getproxies_environment for name, value in os.environ.items(): AttributeError: 'NoneType' object has no attribute 'environ' ====================================================================== ERROR: test_file (test.test_urllib2net.OtherNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 118, in test_file self._test_urls(urls, self._extra_handlers(), urllib2.urlopen) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 156, in _test_urls urllib2.install_opener(urllib2.build_opener(*handlers)) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 461, in build_opener opener.add_handler(klass()) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 673, in __init__ proxies = getproxies() File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 1294, in getproxies_environment for name, value in os.environ.items(): AttributeError: 'NoneType' object has no attribute 'environ' ====================================================================== ERROR: test_ftp (test.test_urllib2net.OtherNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 106, in test_ftp self._test_urls(urls, self._extra_handlers()) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 156, in _test_urls urllib2.install_opener(urllib2.build_opener(*handlers)) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 461, in build_opener opener.add_handler(klass()) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 673, in __init__ proxies = getproxies() File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 1294, in getproxies_environment for name, value in os.environ.items(): AttributeError: 'NoneType' object has no attribute 'environ' ====================================================================== ERROR: test_close (test.test_urllib2net.CloseSocketTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 77, in test_close abused_fileobject = response.fp AttributeError: addinfourl instance has no attribute 'fp' ====================================================================== ERROR: test_ftp_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 228, in test_ftp_NoneNodefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 124, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 380, in open response = self._open(req, data) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 398, in _open '_open', req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 358, in _call_chain result = func(*args) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1290, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 892, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_NoneWithdefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 222, in test_ftp_NoneWithdefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 124, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 380, in open response = self._open(req, data) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 398, in _open '_open', req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 358, in _call_chain result = func(*args) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1290, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 892, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_Value (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 232, in test_ftp_Value u = _urlopen_with_retry(self.FTP_HOST, timeout=60) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 124, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 380, in open response = self._open(req, data) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 398, in _open '_open', req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 358, in _call_chain result = func(*args) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1290, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 892, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_basic (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 215, in test_ftp_basic u = _urlopen_with_retry(self.FTP_HOST) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 124, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 380, in open response = self._open(req, data) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 398, in _open '_open', req) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 358, in _call_chain result = func(*args) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib2.py", line 1290, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/urllib.py", line 892, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_http_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 210, in test_http_NoneNodefault self.assertTrue(u.fp._sock.fp._sock.gettimeout() is None) AttributeError: addinfourl instance has no attribute 'fp' ====================================================================== ERROR: test_http_NoneWithdefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 200, in test_http_NoneWithdefault self.assertEqual(u.fp._sock.fp._sock.gettimeout(), 60) AttributeError: addinfourl instance has no attribute 'fp' ====================================================================== ERROR: test_http_Value (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 206, in test_http_Value self.assertEqual(u.fp._sock.fp._sock.gettimeout(), 120) AttributeError: addinfourl instance has no attribute 'fp' ====================================================================== ERROR: test_http_basic (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_urllib2net.py", line 193, in test_http_basic self.assertTrue(u.fp._sock.fp._sock.gettimeout() is None) AttributeError: addinfourl instance has no attribute 'fp' make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 23:38:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 21:38:09 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080407213809.B0A501E400A@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/179 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: georg.brandl,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From buildbot at python.org Mon Apr 7 23:58:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 21:58:43 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 3.0 Message-ID: <20080407215843.6D6D71E400A@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%203.0/builds/816 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: georg.brandl,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Tue Apr 8 00:24:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 07 Apr 2008 22:24:28 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080407222428.6E64B1E4013@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/770 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 16 tests failed: test_bool test_bufio test_builtin test_cmd_line_script test_cookielib test_deque test_gzip test_iter test_mailbox test_marshal test_multibytecodec test_pep277 test_set test_urllib test_zipfile test_zipimport ====================================================================== ERROR: test_open (test.test_builtin.BuiltinTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_builtin.py", line 1427, in test_open self.write_testfile() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_builtin.py", line 1414, in write_testfile fp = open(TESTFN, 'w') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_zipfile (test.test_cmd_line_script.CmdLineTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_cmd_line_script.py", line 160, in test_zipfile self._check_script(zip_name, None, zip_name, '') File "C:\buildbot\work\3.0.heller-windows\build\lib\contextlib.py", line 33, in __exit__ self.gen.throw(type, value, traceback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_cmd_line_script.py", line 36, in temp_dir shutil.rmtree(dirname) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 184, in rmtree onerror(os.remove, fullname, sys.exc_info()) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 182, in rmtree os.remove(fullname) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpdi45z0\\test_zip.zip' ====================================================================== ERROR: test_zipfile_compiled (test.test_cmd_line_script.CmdLineTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_cmd_line_script.py", line 167, in test_zipfile_compiled self._check_script(zip_name, None, zip_name, '') File "C:\buildbot\work\3.0.heller-windows\build\lib\contextlib.py", line 33, in __exit__ self.gen.throw(type, value, traceback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_cmd_line_script.py", line 36, in temp_dir shutil.rmtree(dirname) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 184, in rmtree onerror(os.remove, fullname, sys.exc_info()) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 182, in rmtree os.remove(fullname) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpxjjrkc\\test_zip.zip' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 292, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_list (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 254, in test_builtin_list f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_map (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 397, in test_builtin_map f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_max_min (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 364, in test_builtin_max_min f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_tuple (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 287, in test_builtin_tuple f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_builtin_zip (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 444, in test_builtin_zip f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_countOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 593, in test_countOf f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_in_and_not_in (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 556, in test_in_and_not_in f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_indexOf (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 627, in test_indexOf f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter_file (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 225, in test_iter_file f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode_join_endcase (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 512, in test_unicode_join_endcase f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unpack_iter (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 736, in test_unpack_iter f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_writelines (test.test_iter.TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_iter.py", line 653, in test_writelines f = open(TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_labels (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_initialize_with_file (test.test_mailbox.TestMessage) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 990, in test_initialize_with_file f = open(self._path, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bug1728403 (test.test_multibytecodec.Test_StreamReader) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_multibytecodec.py", line 143, in test_bug1728403 f = open(TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_directory (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_failures (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_listdir (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_open (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_rename (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_cyclical_print (test.test_set.TestSet) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 297, in test_cyclical_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_fileno (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_getcode (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_geturl (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_info (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_interface (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_basic (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_copy (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_0_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_5_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_8193_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 233, in testAbsoluteArcnames zipfp.write(TESTFN, "/absolute") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 259, in testAppendToNonZipFile zipfp.write(TESTFN, TESTFN) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 243, in testAppendToZipFile zipfp.write(TESTFN, TESTFN) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 196, in testDeflated self.zipTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 43, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 300, in testExtract zipfp.writestr(fpath, fdata) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 329, in testExtractAll zipfp.writestr(fpath, fdata) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 216, in testIterlinesDeflated self.zipIterlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 172, in zipIterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 191, in testIterlinesStored self.zipIterlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 172, in zipIterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 200, in testOpenDeflated self.zipOpenTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 100, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 126, in testOpenStored self.zipOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 100, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testRandomOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 204, in testRandomOpenDeflated self.zipRandomOpenTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 129, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testRandomOpenDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 146, in testRandomOpenStored self.zipRandomOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 129, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 208, in testReadlineDeflated self.zipReadlineTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 149, in zipReadlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testReadlineStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 183, in testReadlineStored self.zipReadlineTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 149, in zipReadlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 212, in testReadlinesDeflated self.zipReadlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 161, in zipReadlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 187, in testReadlinesStored self.zipReadlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 161, in zipReadlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 97, in testStored self.zipTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 43, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 37, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: test_PerFileCompression (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 279, in test_PerFileCompression zipfp.write(TESTFN, 'storeme', zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_PerFileCompression (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: test_WriteDefaultName (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 272, in test_WriteDefaultName zipfp.write(TESTFN) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_WriteDefaultName (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 351, in tearDown os.remove(TESTFN2) WindowsError: [Error 32] The process cannot access the file because it is being used by another process: '@test2' ====================================================================== ERROR: testClosedZipRaisesRuntimeError (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 615, in testClosedZipRaisesRuntimeError zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testCreateNonExistentFileForAppend (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 553, in testCreateNonExistentFileForAppend zf.writestr(filename, content) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIsZipValidFile (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 592, in testIsZipValidFile zipf.writestr("foo.txt", b"O, for a Muse of Fire!") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_BadOpenMode (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 636, in test_BadOpenMode zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_NullByteInFilename (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 670, in test_NullByteInFilename zipf.writestr("foo.txt\x00qqq", b"O, for a Muse of Fire!") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: test_Read0 (test.test_zipfile.OtherTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 648, in test_Read0 zipf.writestr("foo.txt", "O, for a Muse of Fire!") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePyfile (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 478, in testWritePyfile zipfp.writepy(fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1177, in writepy self.write(fname, arcname) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePythonDirectory (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 526, in testWritePythonDirectory zipfp.writepy(TESTFN2) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1169, in writepy self.write(fname, arcname) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testWritePythonPackage (test.test_zipfile.PyZipFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 503, in testWritePythonPackage zipfp.writepy(packagedir) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1140, in writepy self.write(fname, arcname) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 707, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 622, in __init__ self._GetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 642, in _GetContents self._RealGetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 679, in _RealGetContents raise BadZipfile("Bad magic number for central directory") zipfile.BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 707, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 622, in __init__ self._GetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 642, in _GetContents self._RealGetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 679, in _RealGetContents raise BadZipfile("Bad magic number for central directory") zipfile.BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 707, in setUp self.zip = zipfile.ZipFile(TESTFN, "r") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 622, in __init__ self._GetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 642, in _GetContents self._RealGetContents() File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 679, in _RealGetContents raise BadZipfile("Bad magic number for central directory") zipfile.BadZipfile: Bad magic number for central directory ====================================================================== ERROR: testDifferentFile (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 835, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testInterleaved (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 835, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testSameFile (test.test_zipfile.TestsWithMultipleOpens) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 835, in setUp zipfp.writestr('ones', '1'*FIXEDTEST_SIZE) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 985, in testIterlinesDeflated self.iterlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 944, in iterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 968, in testIterlinesStored self.iterlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 944, in iterlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 973, in testReadDeflated self.readTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 908, in readTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 956, in testReadStored self.readTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 908, in readTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 977, in testReadlineDeflated self.readlineTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 919, in readlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlineStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 960, in testReadlineStored self.readlineTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 919, in readlineTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesDeflated (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 981, in testReadlinesDeflated self.readlinesTest(f, zipfile.ZIP_DEFLATED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 932, in readlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testReadlinesStored (test.test_zipfile.UniversalNewlineTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 964, in testReadlinesStored self.readlinesTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 932, in readlinesTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 904, in makeTestArchive zipfp.write(fn, fn) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testOpenStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 807, in testOpenStored self.zipOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 776, in zipOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 756, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testRandomOpenStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 829, in testRandomOpenStored self.zipRandomOpenTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 810, in zipRandomOpenTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 756, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testStored (test.test_zipfile.TestsWithRandomBinaryFiles) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 773, in testStored self.zipTest(f, zipfile.ZIP_STORED) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 761, in zipTest self.makeTestArchive(f, compression) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 756, in makeTestArchive zipfp.write(TESTFN, "another.name") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 938, in write self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMTime (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 180, in testBadMTime self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 160, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic2 (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 168, in testBadMagic2 self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBoth (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 148, in testBoth self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDeepPackage (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 194, in testDeepPackage self.doTest(pyc_ext, files, TESTPACK, TESTPACK2, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestFile (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 296, in testDoctestFile self.runDoctest(self.doDoctestFile) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 281, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestSuite (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 307, in testDoctestSuite self.runDoctest(self.doDoctestSuite) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 281, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testEmptyPy (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 152, in testEmptyPy self.doTest(None, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 91, in doTest ["__dummy__"]) ImportError: No module named ziptestmodule ====================================================================== ERROR: testGetCompiledSource (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 276, in testGetCompiledSource self.doTest(pyc_ext, files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 68, in doTest z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 609, in __init__ self.fp = io.open(file, modeDict[mode]) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetData (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 233, in testGetData z = ZipFile(TEMP_ZIP, "w") File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 609, in __init__ self.fp = io.open(file, modeDict[mode]) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\junk95142.zip' ====================================================================== ERROR: testGetSource (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 270, in testGetSource self.doTest(".py", files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testImport_WithStuff (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 263, in testImport_WithStuff stuff=b"Some Stuff"*31) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testImporterAttr (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 256, in testImporterAttr self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPackage (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 186, in testPackage self.doTest(pyc_ext, files, TESTPACK, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPy (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 139, in testPy self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPyc (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 143, in testPyc self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testTraceback (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 330, in testTraceback self.doTest(None, files, TESTMOD, call=self.doTraceback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testZipImporterMethods (test.test_zipimport.UncompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 208, in testZipImporterMethods z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMTime (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 180, in testBadMTime self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 160, in testBadMagic self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBadMagic2 (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 168, in testBadMagic2 self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testBoth (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 148, in testBoth self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDeepPackage (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 194, in testDeepPackage self.doTest(pyc_ext, files, TESTPACK, TESTPACK2, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestFile (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 296, in testDoctestFile self.runDoctest(self.doDoctestFile) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 281, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testDoctestSuite (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 307, in testDoctestSuite self.runDoctest(self.doDoctestSuite) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 281, in runDoctest self.doTest(".py", files, TESTMOD, call=callback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testEmptyPy (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 152, in testEmptyPy self.doTest(None, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 91, in doTest ["__dummy__"]) ImportError: No module named ziptestmodule ====================================================================== ERROR: testGetCompiledSource (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 276, in testGetCompiledSource self.doTest(pyc_ext, files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testGetData (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 238, in testGetData z.writestr(name, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testGetSource (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 270, in testGetSource self.doTest(".py", files, TESTMOD, call=self.assertModuleSource) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testImport_WithStuff (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 263, in testImport_WithStuff stuff=b"Some Stuff"*31) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testImporterAttr (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 256, in testImporterAttr self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPackage (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 186, in testPackage self.doTest(pyc_ext, files, TESTPACK, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPy (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 139, in testPy self.doTest(".py", files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testPyc (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 143, in testPyc self.doTest(pyc_ext, files, TESTMOD) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testTraceback (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 330, in testTraceback self.doTest(None, files, TESTMOD, call=self.doTraceback) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 73, in doTest z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions ====================================================================== ERROR: testZipImporterMethods (test.test_zipimport.CompressedZipImportTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipimport.py", line 208, in testZipImporterMethods z.writestr(zinfo, data) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 1001, in writestr self._writecheck(zinfo) File "C:\buildbot\work\3.0.heller-windows\build\lib\zipfile.py", line 905, in _writecheck raise LargeZipFile("Filesize would require ZIP64 extensions") zipfile.LargeZipFile: Filesize would require ZIP64 extensions sincerely, -The Buildbot From python-checkins at python.org Tue Apr 8 01:57:08 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 8 Apr 2008 01:57:08 +0200 (CEST) Subject: [Python-checkins] r62219 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080407235708.091171E4013@bag.python.org> Author: andrew.kuchling Date: Tue Apr 8 01:57:07 2008 New Revision: 62219 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Write PEP 3127 section; add items Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Tue Apr 8 01:57:07 2008 @@ -728,6 +728,12 @@ Python 2.6 adds :class:`bytes` as a synonym for the :class:`str` type, and it also supports the ``b''`` notation. +There's also a ``__future__`` import that causes all string literals +to become Unicode strings. This means that ``\u`` escape sequences +can be used to include Unicode characters. + +XXX give example + .. seealso:: :pep:`3112` - Bytes literals in Python 3000 @@ -952,22 +958,48 @@ PEP 3127: Integer Literal Support and Syntax ===================================================== -XXX write this -- this section is currently just brief notes. - -Python 3.0 changes the syntax for octal integer literals, and -adds supports for binary integers: 0o instad of 0, -and 0b for binary. Python 2.6 doesn't support this, but a bin() -builtin was added. - -XXX changes to the hex/oct builtins +Python 3.0 changes the syntax for octal (base-8) integer literals, +which are now prefixed by "0o" or "0O" instead of a leading zero, and +adds support for binary (base-2) integer literals, signalled by a "0b" +or "0B" prefix. + +Python 2.6 doesn't drop support for a leading 0 signalling +an octal number, but it does add support for "0o" and "0b":: + + >>> 0o21, 2*8 + 1 + (17, 17) + >>> 0b101111 + 47 + +The :func:`oct` built-in still returns numbers +prefixed with a leading zero, and a new :func:`bin` +built-in returns the binary representation for a number:: + + >>> oct(42) + '052' + >>> bin(173) + '0b10101101' + +The :func:`int` and :func:`long` built-ins will now accept the "0o" +and "0b" prefixes when base-8 or base-2 are requested, or when the +**base** argument is zero (meaning the base used is determined from +the string): + + >>> int ('0o52', 0) + 42 + >>> int('1101', 2) + 13 + >>> int('0b1101', 2) + 13 + >>> int('0b1101', 0) + 13 -New bin() built-in returns the binary form of a number. - .. seealso:: :pep:`3127` - Integer Literal Support and Syntax - PEP written by Patrick Maupin. + PEP written by Patrick Maupin; backported to 2.6 by + Eric Smith. .. ====================================================================== @@ -1124,6 +1156,13 @@ .. Patch 1686487 +* Tuples now have an :meth:`index` method matching the list type's + :meth:`index` method:: + + >>> t = (0,1,2,3,4) + >>> t.index(3) + 3 + * The built-in types now have improved support for extended slicing syntax, where various combinations of ``(start, stop, step)`` are supplied. Previously, the support was partial and certain corner cases wouldn't work. @@ -1642,6 +1681,12 @@ .. Patch #1393667 + The :func:`post_mortem` function, used to enter debugging of a + traceback, will now use the traceback returned by :func:`sys.exc_info` + if no traceback is supplied. (Contributed by Facundo Batista.) + + .. Patch #1106316 + * The :mod:`pickletools` module now has an :func:`optimize` function that takes a string containing a pickle and removes some unused opcodes, returning a shorter pickle that contains the same data structure. @@ -1720,6 +1765,8 @@ .. Patch 1657 + .. XXX + * The :mod:`sets` module has been deprecated; it's better to use the built-in :class:`set` and :class:`frozenset` types. @@ -2069,6 +2116,19 @@ .. Patch 1551895 +* Python's use of the C stdio library is now thread-safe, or at least + as thread-safe as the underlying library is. A long-standing potential + bug occurred if one thread closed a file object while another thread + was reading from or writing to the object. In 2.6 file objects + have a reference count, manipulated by the + :cfunc:`PyFile_IncUseCount` and :cfunc:`PyFile_DecUseCount` + functions. File objects can't be closed unless the reference count + is zero. :cfunc:`PyFile_IncUseCount` should be called while the GIL + is still held, before carrying out an I/O operation using the + ``FILE *`` pointer, and :cfunc:`PyFile_DecUseCount` should be called + immediately after the GIL is re-acquired. + (Contributed by Antoine Pitrou and Gregory P. Smith.) + * Several functions return information about the platform's floating-point support. :cfunc:`PyFloat_GetMax` returns the maximum representable floating point value, @@ -2089,6 +2149,13 @@ .. Issue 1635 +* Many C extensions define their own little macro for adding + integers and strings to the module's dictionary in the + ``init*`` function. Python 2.6 finally defines standard macros + for adding values to a module, :cmacro:`PyModule_AddStringMacro` + and :cmacro:`PyModule_AddIntMacro()`. (Contributed by + Christian Heimes.) + * Some macros were renamed in both 3.0 and 2.6 to make it clearer that they are macros, not functions. :cmacro:`Py_Size()` became :cmacro:`Py_SIZE()`, @@ -2140,6 +2207,13 @@ module now support the context protocol, so they can be used in :keyword:`with` statements. (Contributed by Christian Heimes.) + :mod:`_winreg` also has better support for x64 systems, + exposing the :func:`DisableReflectionKey`, :func:`EnableReflectionKey`, + and :func:`QueryReflectionKey` functions, which enable and disable + registry reflection for 32-bit processes running on 64-bit systems. + + .. Patch 1753245 + * The new default compiler on Windows is Visual Studio 2008 (VS 9.0). The build directories for Visual Studio 2003 (VS7.1) and 2005 (VS8.0) were moved into the PC/ directory. The new PCbuild directory supports From python-checkins at python.org Tue Apr 8 01:57:21 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 8 Apr 2008 01:57:21 +0200 (CEST) Subject: [Python-checkins] r62220 - python/trunk/Doc/library/select.rst Message-ID: <20080407235721.AF8D21E4013@bag.python.org> Author: andrew.kuchling Date: Tue Apr 8 01:57:21 2008 New Revision: 62220 Modified: python/trunk/Doc/library/select.rst Log: Typo fix Modified: python/trunk/Doc/library/select.rst ============================================================================== --- python/trunk/Doc/library/select.rst (original) +++ python/trunk/Doc/library/select.rst Tue Apr 8 01:57:21 2008 @@ -113,9 +113,9 @@ +-----------------------+-----------------------------------------------+ | :const:`EPOLLPRI` | Urgent data for read | +-----------------------+-----------------------------------------------+ - | :const:`EPOLLERR` | Error condition happend on the assoc. fd | + | :const:`EPOLLERR` | Error condition happened on the assoc. fd | +-----------------------+-----------------------------------------------+ - | :const:`EPOLLHUP` | Hang up happend on the assoc. fd | + | :const:`EPOLLHUP` | Hang up happened on the assoc. fd | +-----------------------+-----------------------------------------------+ | :const:`EPOLLET` | Set Edge Trigger behavior, the default is | | | Level Trigger behavior | From buildbot at python.org Tue Apr 8 03:24:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 01:24:14 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080408012414.793881E4013@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/772 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 18 tests failed: test_array test_bool test_bufio test_deque test_distutils test_filecmp test_fileinput test_fileio test_gzip test_io test_iter test_mailbox test_marshal test_set test_urllib test_userlist test_uu test_zipfile ====================================================================== ERROR: test_tofromfile (test.test_array.ByteTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tofromfile (test.test_array.LongTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 292, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_array_writes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 262, in test_array_writes f = io.open(test_support.TESTFN, "wb", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_buffered_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 166, in test_buffered_file_io f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_close_flushes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 252, in test_close_flushes f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_destructor (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 246, in test_destructor f = MyFileIO(test_support.TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_large_file_ops (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 212, in test_large_file_ops f = io.open(test_support.TESTFN, "w+b", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_raw_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 152, in test_raw_file_io f = io.open(test_support.TESTFN, "wb", buffering=0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 180, in test_readline f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_with_open (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 222, in test_with_open with open(test_support.TESTFN, "wb", bufsize) as f: File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBasicIO (test.test_io.TextIOWrapperTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 819, in testBasicIO f = io.open(test_support.TESTFN, "w+", encoding=enc) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 819, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 813, in __init__ os.mkdir(self._path, 0o700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_labels (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_initialize_with_file (test.test_mailbox.TestMessage) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 990, in test_initialize_with_file f = open(self._path, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testExtract (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From python-checkins at python.org Tue Apr 8 03:33:10 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 8 Apr 2008 03:33:10 +0200 (CEST) Subject: [Python-checkins] r62221 - python/trunk/PC/_winreg.c Message-ID: <20080408013310.9118A1E4013@bag.python.org> Author: andrew.kuchling Date: Tue Apr 8 03:33:10 2008 New Revision: 62221 Modified: python/trunk/PC/_winreg.c Log: Typographical fix: 32bit -> 32-bit, 64bit -> 64-bit Modified: python/trunk/PC/_winreg.c ============================================================================== --- python/trunk/PC/_winreg.c (original) +++ python/trunk/PC/_winreg.c Tue Apr 8 03:33:10 2008 @@ -291,20 +291,20 @@ "the configuration registry. This helps the registry perform efficiently."); PyDoc_STRVAR(DisableReflectionKey_doc, -"Disables registry reflection for 32bit processes running on a 64bit\n" +"Disables registry reflection for 32-bit processes running on a 64-bit\n" "Operating System. Will generally raise NotImplemented if executed on\n" -"a 32bit Operating System.\n" +"a 32-bit Operating System.\n" "If the key is not on the reflection list, the function succeeds but has no effect.\n" "Disabling reflection for a key does not affect reflection of any subkeys."); PyDoc_STRVAR(EnableReflectionKey_doc, "Restores registry reflection for the specified disabled key.\n" -"Will generally raise NotImplemented if executed on a 32bit Operating System.\n" +"Will generally raise NotImplemented if executed on a 32-bit Operating System.\n" "Restoring reflection for a key does not affect reflection of any subkeys."); PyDoc_STRVAR(QueryReflectionKey_doc, "bool = QueryReflectionKey(hkey) - Determines the reflection state for the specified key.\n" -"Will generally raise NotImplemented if executed on a 32bit Operating System.\n"); +"Will generally raise NotImplemented if executed on a 32-bit Operating System.\n"); /* PyHKEY docstrings */ PyDoc_STRVAR(PyHKEY_doc, From tnelson at onresolve.com Tue Apr 8 09:06:47 2008 From: tnelson at onresolve.com (Trent Nelson) Date: Tue, 8 Apr 2008 00:06:47 -0700 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 In-Reply-To: <20080407213809.B0A501E400A@bag.python.org> References: <20080407213809.B0A501E400A@bag.python.org> Message-ID: <87D3F9C72FBF214DB39FA4E3FE618CDC6E226D9666@EXMBX04.exchhosting.com> > The Buildbot has detected a new failure of x86 W2k8 3.0. > Full details are available at: > http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/179 > Excerpt from the test logfile: > 1 test failed: > test_asynchat > v = self._sslobj.read(len or 1024) > socket.error: [Errno 10053] An established connection was aborted by > the software in your host machine FWIW, the changes I'm making as part of issue 2550 may end up fixing this from periodically occurring. (The again, they may not.) Trent. From buildbot at python.org Tue Apr 8 12:09:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 10:09:35 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080408100935.5A9401E4013@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/164 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_getargs2 ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 210, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 198, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 126, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 131, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 136, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 114, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 165, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 156, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 145, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 177, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 187, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 528, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Tue Apr 8 12:14:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 10:14:43 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080408101443.5ED151E4013@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/181 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Tue Apr 8 12:39:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 10:39:17 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080408103917.996C31E4013@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/769 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_getargs2 ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\3.0.heller-windows-amd64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Tue Apr 8 12:44:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 10:44:57 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080408104457.E5F671E4013@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/210 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_signal make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Tue Apr 8 13:06:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 11:06:38 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080408110638.7A2B91E4013@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/686 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Tue Apr 8 18:48:35 2008 From: python-checkins at python.org (martin.v.loewis) Date: Tue, 8 Apr 2008 18:48:35 +0200 (CEST) Subject: [Python-checkins] r62223 - python/trunk/Tools/msi/msi.py Message-ID: <20080408164835.D9E971E4025@bag.python.org> Author: martin.v.loewis Date: Tue Apr 8 18:48:35 2008 New Revision: 62223 Modified: python/trunk/Tools/msi/msi.py Log: Suppress compilation of py3_ files upon installation. Modified: python/trunk/Tools/msi/msi.py ============================================================================== --- python/trunk/Tools/msi/msi.py (original) +++ python/trunk/Tools/msi/msi.py Tue Apr 8 18:48:35 2008 @@ -375,7 +375,7 @@ ("VerdanaRed9", "Verdana", 9, 255, 0), ]) - compileargs = r'-Wi "[TARGETDIR]Lib\compileall.py" -f -x bad_coding|badsyntax|site-packages "[TARGETDIR]Lib"' + compileargs = r'-Wi "[TARGETDIR]Lib\compileall.py" -f -x bad_coding|badsyntax|site-packages|py3_ "[TARGETDIR]Lib"' # See "CustomAction Table" add_data(db, "CustomAction", [ # msidbCustomActionTypeFirstSequence + msidbCustomActionTypeTextData + msidbCustomActionTypeProperty From buildbot at python.org Tue Apr 8 20:01:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 18:01:27 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080408180138.294AD1E401B@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2837 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_signal test_smtplib ====================================================================== FAIL: test_wakeup_fd_during (test.test_signal.WakeupSignalTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_signal.py", line 232, in test_wakeup_fd_during [self.read], [], [], self.TIMEOUT_FULL) AssertionError: error not raised sincerely, -The Buildbot From python-checkins at python.org Tue Apr 8 21:07:56 2008 From: python-checkins at python.org (collin.winter) Date: Tue, 8 Apr 2008 21:07:56 +0200 (CEST) Subject: [Python-checkins] r62226 - in sandbox/trunk/2to3: example.py lib2to3/fixes/fix_dict.py lib2to3/tests/test_fixers.py Message-ID: <20080408190756.748EA1E4009@bag.python.org> Author: collin.winter Date: Tue Apr 8 21:07:56 2008 New Revision: 62226 Modified: sandbox/trunk/2to3/example.py sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py sandbox/trunk/2to3/lib2to3/tests/test_fixers.py Log: Add min() and max() to the list of special contexts that don't require adding list() calls around dict methods. Modified: sandbox/trunk/2to3/example.py ============================================================================== --- sandbox/trunk/2to3/example.py (original) +++ sandbox/trunk/2to3/example.py Tue Apr 8 21:07:56 2008 @@ -363,4 +363,11 @@ x = buffer(y) +class X: + def maximum(self): + return max(self.data.values()) + def total(self): + return sum(self.data.values()) + + # This is the last line. Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py (original) +++ sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py Tue Apr 8 21:07:56 2008 @@ -31,7 +31,8 @@ from .util import Name, Call, LParen, RParen, ArgList, Dot, set -exempt = set(["sorted", "list", "set", "any", "all", "tuple", "sum"]) +exempt = set(["sorted", "list", "set", "any", "all", "tuple", "sum", + "min", "max"]) iter_exempt = exempt | set(["iter"]) Modified: sandbox/trunk/2to3/lib2to3/tests/test_fixers.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/test_fixers.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/test_fixers.py Tue Apr 8 21:07:56 2008 @@ -1103,7 +1103,8 @@ self.check(b, a) def test_unchanged(self): - wrappers = ["set", "sorted", "any", "all", "tuple", "sum"] + wrappers = ["set", "sorted", "any", "all", "tuple", "sum", + "min", "max"] for wrapper in wrappers: s = "s = %s(d.keys())" % wrapper self.unchanged(s) From python at rcn.com Tue Apr 8 21:17:48 2008 From: python at rcn.com (Raymond Hettinger) Date: Tue, 8 Apr 2008 12:17:48 -0700 Subject: [Python-checkins] r62226 - in sandbox/trunk/2to3: example.pylib2to3/fixes/fix_dict.py lib2to3/tests/test_fixers.py References: <20080408190756.748EA1E4009@bag.python.org> Message-ID: <00ca01c899ad$3bdadc10$6800a8c0@RaymondLaptop1> > Log: > Add min() and max() to the list of special contexts that don't require adding list() calls around dict methods. Would it be worth having 2-to-3 emit a "grep -n" style log of all the places where it adds a list() call? In many cases the list() isn't necessary but there is no way that 2-to-3 could know for sure. Raymond From nnorwitz at gmail.com Tue Apr 8 23:12:03 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 8 Apr 2008 17:12:03 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080408211203.GA22844@python.psfb.org> More important issues: ---------------------- test_file leaked [2, -7, -75] references, sum=-80 Less important issues: ---------------------- test_smtplib leaked [-8, 8, 0] references, sum=0 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From python-checkins at python.org Tue Apr 8 23:22:53 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 8 Apr 2008 23:22:53 +0200 (CEST) Subject: [Python-checkins] r62227 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080408212253.7D06E1E4009@bag.python.org> Author: andrew.kuchling Date: Tue Apr 8 23:22:53 2008 New Revision: 62227 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Add items Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Tue Apr 8 23:22:53 2008 @@ -746,7 +746,70 @@ PEP 3116: New I/O Library ===================================================== -XXX write this. +Python's built-in file objects support a number of methods, but +file-like objects don't necessarily support all of them. Objects that +imitate files usually support :meth:`read` and :meth:`write`, but they +may not support :meth:`readline`. Python 3.0 introduces a layered I/O +library in the :mod:`io` module that separates buffering and +text-handling features from the fundamental read and write operations. + +There are three levels of abstract base classes provided by +the :mod:`io` module: + +* :class:`RawIOBase`: defines raw I/O operations: :meth:`read`, + :meth:`readinto`, + :meth:`write`, :meth:`seek`, :meth:`tell`, :meth:`truncate`, + and :meth:`close`. + Most of the methods of this class will often map to a single system call. + There are also :meth:`readable`, :meth:`writable`, and :meth:`seekable` + methods for determining what operations a given object will allow. + + Python 3.0 has concrete implementations of this class for files and + sockets, but Python 2.6 hasn't restructured its file and socket objects + in this way. + + .. XXX should 2.6 register them in io.py? + +* :class:`BufferedIOBase`: is an abstract base class that + buffers data in memory to reduce the number of + system calls used, making I/O processing more efficient. + It supports all of the methods of :class:`RawIOBase`, + and adds a :attr:`raw` attribute holding the underlying raw object. + + There are four concrete classes implementing this ABC: + :class:`BufferedWriter` and + :class:`BufferedReader` for objects that only support + writing or reading and don't support random access, + :class:`BufferedRandom` for objects that support the :meth:`seek` method + for random access, + and :class:`BufferedRWPair` for objects such as TTYs that have + both read and write operations that act upon unconnected streams of data. + +* :class:`TextIOBase`: Provides functions for reading and writing + strings (remember, strings will be Unicode in Python 3.0), + and supporting universal newlines. :class:`TextIOBase` defines + the :meth:`readline` method and supports iteration upon + objects. + + There are two concrete implementations. :class:`TextIOWrapper` + wraps a buffered I/O object, supporting all of the methods for + text I/O and adding a :attr:`buffer` attribute for access + to the underlying object. :class:`StringIO` simply buffers + everything in memory without ever writing anything to disk. + + (In current 2.6 alpha releases, :class:`io.StringIO` is implemented in + pure Python, so it's pretty slow. You should therefore stick with the + existing :mod:`StringIO` module or :mod:`cStringIO` for now. At some + point Python 3.0's :mod:`io` module will be rewritten into C for speed, + and perhaps the C implementation will be backported to the 2.x releases.) + + .. XXX check before final release: is io.py still written in Python? + +In Python 2.6, the underlying implementations haven't been +restructured to build on top of the :mod:`io` module's classes. The +module is being provided to make it easier to write code that's +forward-compatible with 3.0, and to save developers the effort of writing +their own implementations of buffering and text I/O. .. seealso:: @@ -1571,7 +1634,7 @@ (3, 1), (3, 2), (3, 4), (4, 1), (4, 2), (4, 3)] - ``itertools.chain(*iterables)` is an existing function in + ``itertools.chain(*iterables)`` is an existing function in :mod:`itertools` that gained a new constructor in Python 2.6. ``itertools.chain.from_iterable(iterable)`` takes a single iterable that should return other iterables. :func:`chain` will From python-checkins at python.org Tue Apr 8 23:24:21 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 8 Apr 2008 23:24:21 +0200 (CEST) Subject: [Python-checkins] r62228 - peps/trunk/pep-3116.txt Message-ID: <20080408212421.278161E4009@bag.python.org> Author: andrew.kuchling Date: Tue Apr 8 23:24:20 2008 New Revision: 62228 Modified: peps/trunk/pep-3116.txt Log: Typo fix Modified: peps/trunk/pep-3116.txt ============================================================================== --- peps/trunk/pep-3116.txt (original) +++ peps/trunk/pep-3116.txt Tue Apr 8 23:24:20 2008 @@ -252,7 +252,7 @@ future reads are forced to go back to the disk). *Q: Do we want to mandate in the specification that switching between -reading to writing on a read-write object implies a .flush()? Or is +reading and writing on a read-write object implies a .flush()? Or is that an implementation convenience that users should not rely on?* For a read-only ``BufferedRandom`` object, ``.writable()`` returns From python-checkins at python.org Tue Apr 8 23:27:43 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Tue, 8 Apr 2008 23:27:43 +0200 (CEST) Subject: [Python-checkins] r62229 - in python/trunk/Lib: sre_compile.py test/test_capi.py Message-ID: <20080408212743.34CB91E4009@bag.python.org> Author: amaury.forgeotdarc Date: Tue Apr 8 23:27:42 2008 New Revision: 62229 Modified: python/trunk/Lib/sre_compile.py python/trunk/Lib/test/test_capi.py Log: Issue2564: Prevent a hang in "import test.autotest", which runs the entire test suite as a side-effect of importing the module. - in test_capi, a thread tried to import other modules - re.compile() imported sre_parse again on every call. Modified: python/trunk/Lib/sre_compile.py ============================================================================== --- python/trunk/Lib/sre_compile.py (original) +++ python/trunk/Lib/sre_compile.py Tue Apr 8 23:27:42 2008 @@ -11,7 +11,7 @@ """Internal support module for sre""" import _sre, sys - +import sre_parse from sre_constants import * assert _sre.MAGIC == MAGIC, "SRE module mismatch" @@ -502,7 +502,6 @@ # internal: convert pattern list to internal format if isstring(p): - import sre_parse pattern = p p = sre_parse.parse(p, flags) else: Modified: python/trunk/Lib/test/test_capi.py ============================================================================== --- python/trunk/Lib/test/test_capi.py (original) +++ python/trunk/Lib/test/test_capi.py Tue Apr 8 23:27:42 2008 @@ -19,9 +19,6 @@ # some extra thread-state tests driven via _testcapi def TestThreadState(): - import thread - import time - if test_support.verbose: print "auto-thread-state" @@ -45,6 +42,8 @@ have_thread_state = False if have_thread_state: + import thread + import time TestThreadState() import threading t=threading.Thread(target=TestThreadState) From python-checkins at python.org Tue Apr 8 23:51:57 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Tue, 8 Apr 2008 23:51:57 +0200 (CEST) Subject: [Python-checkins] r62230 - python/trunk/Lib/inspect.py Message-ID: <20080408215157.777CC1E4020@bag.python.org> Author: amaury.forgeotdarc Date: Tue Apr 8 23:51:57 2008 New Revision: 62230 Modified: python/trunk/Lib/inspect.py Log: Prevent an error when inspect.isabstract() is called with something else than a new-style class. Modified: python/trunk/Lib/inspect.py ============================================================================== --- python/trunk/Lib/inspect.py (original) +++ python/trunk/Lib/inspect.py Tue Apr 8 23:51:57 2008 @@ -247,7 +247,7 @@ def isabstract(object): """Return true if the object is an abstract base class (ABC).""" - return object.__flags__ & TPFLAGS_IS_ABSTRACT + return isinstance(object, type) and object.__flags__ & TPFLAGS_IS_ABSTRACT def getmembers(object, predicate=None): """Return all members of an object as (name, value) pairs sorted by name. From python-checkins at python.org Wed Apr 9 00:07:05 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 9 Apr 2008 00:07:05 +0200 (CEST) Subject: [Python-checkins] r62231 - in python/trunk: Doc/library/types.rst Lib/types.py Makefile.pre.in Modules/_typesmodule.c Modules/config.c.in PC/VC6/pythoncore.dsp PC/VS7.1/pythoncore.vcproj PC/VS8.0/pythoncore.vcproj PC/config.c PCbuild/pythoncore.vcproj Message-ID: <20080408220705.D32591E401E@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 9 00:07:05 2008 New Revision: 62231 Removed: python/trunk/Modules/_typesmodule.c Modified: python/trunk/Doc/library/types.rst python/trunk/Lib/types.py python/trunk/Makefile.pre.in python/trunk/Modules/config.c.in python/trunk/PC/VC6/pythoncore.dsp python/trunk/PC/VS7.1/pythoncore.vcproj python/trunk/PC/VS8.0/pythoncore.vcproj python/trunk/PC/config.c python/trunk/PCbuild/pythoncore.vcproj Log: Issue 2408: remove the _types module It was only used as a helper in types.py to access types (GetSetDescriptorType and MemberDescriptorType), when they can easily be obtained with python code. These expressions even work with Jython. I don't know what the future of the types module is; (cf. discussion in http://bugs.python.org/issue1605 ) at least this change makes it simpler. Modified: python/trunk/Doc/library/types.rst ============================================================================== --- python/trunk/Doc/library/types.rst (original) +++ python/trunk/Doc/library/types.rst Wed Apr 9 00:07:05 2008 @@ -233,20 +233,22 @@ .. data:: GetSetDescriptorType - The type of objects defined in extension modules with ``PyGetSetDef``, such as - ``FrameType.f_locals`` or ``array.array.typecode``. This constant is not - defined in implementations of Python that do not have such extension types, so - for portable code use ``hasattr(types, 'GetSetDescriptorType')``. + The type of objects defined in extension modules with ``PyGetSetDef``, such + as ``FrameType.f_locals`` or ``array.array.typecode``. This type is used as + descriptor for object attributes; it has the same purpose as the + :class:`property` type, but for classes defined in extension modules. .. versionadded:: 2.5 .. data:: MemberDescriptorType - The type of objects defined in extension modules with ``PyMemberDef``, such as - ``datetime.timedelta.days``. This constant is not defined in implementations of - Python that do not have such extension types, so for portable code use - ``hasattr(types, 'MemberDescriptorType')``. + The type of objects defined in extension modules with ``PyMemberDef``, such + as ``datetime.timedelta.days``. This type is used as descriptor for simple C + data members which use standard conversion functions; it has the same purpose + as the :class:`property` type, but for classes defined in extension modules. + In other implementations of Python, this type may be identical to + ``GetSetDescriptorType``. .. versionadded:: 2.5 Modified: python/trunk/Lib/types.py ============================================================================== --- python/trunk/Lib/types.py (original) +++ python/trunk/Lib/types.py Wed Apr 9 00:07:05 2008 @@ -86,16 +86,8 @@ DictProxyType = type(TypeType.__dict__) NotImplementedType = type(NotImplemented) -# Extension types defined in a C helper module. XXX There may be no -# equivalent in implementations other than CPython, so it seems better to -# leave them undefined then to set them to e.g. None. -try: - import _types -except ImportError: - pass -else: - GetSetDescriptorType = type(_types.Helper.getter) - MemberDescriptorType = type(_types.Helper.member) - del _types +# For Jython, the following two types are identical +GetSetDescriptorType = type(FunctionType.func_code) +MemberDescriptorType = type(FunctionType.func_globals) del sys, _f, _g, _C, _x # Not for export Modified: python/trunk/Makefile.pre.in ============================================================================== --- python/trunk/Makefile.pre.in (original) +++ python/trunk/Makefile.pre.in Wed Apr 9 00:07:05 2008 @@ -333,7 +333,6 @@ ########################################################################## # objects that get linked into the Python library LIBRARY_OBJS= \ - Modules/_typesmodule.o \ Modules/getbuildinfo.o \ $(PARSER_OBJS) \ $(OBJECT_OBJS) \ @@ -371,7 +370,6 @@ $(LIBRARY): $(LIBRARY_OBJS) -rm -f $@ $(AR) cr $@ Modules/getbuildinfo.o - $(AR) cr $@ Modules/_typesmodule.o $(AR) cr $@ $(PARSER_OBJS) $(AR) cr $@ $(OBJECT_OBJS) $(AR) cr $@ $(PYTHON_OBJS) Deleted: /python/trunk/Modules/_typesmodule.c ============================================================================== --- /python/trunk/Modules/_typesmodule.c Wed Apr 9 00:07:05 2008 +++ (empty file) @@ -1,93 +0,0 @@ -/* This extension module exposes some types that are only available at the - * C level. It should not be used directly, but instead through the Python - * level types modules, which imports this. - */ - -#include "Python.h" -#include "structmember.h" - -typedef struct -{ - PyObject_HEAD - int member; -} Helper; - -static PyMemberDef helper_members[] = { - { "member", T_INT, offsetof(Helper, member), READONLY, - PyDoc_STR("A member descriptor") - }, - { NULL } -}; - -static PyObject * -helper_getter(Helper *self, void *unused) -{ - Py_RETURN_NONE; -} - -static PyGetSetDef helper_getset[] = { - { "getter", (getter)helper_getter, NULL, - PyDoc_STR("A getset descriptor"), - }, - { NULL } -}; - -static PyTypeObject HelperType = { - PyVarObject_HEAD_INIT(NULL, 0) - "_types.Helper", /* tp_name */ - sizeof(Helper), /* tp_basicsize */ - 0, /* tp_itemsize */ - 0, /* tp_dealloc */ - 0, /* tp_print */ - 0, /* tp_getattr */ - 0, /* tp_setattr */ - 0, /* tp_compare */ - 0, /* tp_repr */ - 0, /* tp_as_number */ - 0, /* tp_as_sequence */ - 0, /* tp_as_mapping */ - 0, /* tp_hash */ - 0, /* tp_call */ - 0, /* tp_str */ - 0, /* tp_getattro */ - 0, /* tp_setattro */ - 0, /* tp_as_buffer */ - Py_TPFLAGS_DEFAULT, /* tp_flags */ - 0, /* tp_doc */ - 0, /* tp_traverse */ - 0, /* tp_clear */ - 0, /* tp_richcompare */ - 0, /* tp_weaklistoffset */ - 0, /* tp_iter */ - 0, /* tp_iternext */ - 0, /* tp_methods */ - helper_members, /* tp_members */ - helper_getset, /* tp_getset */ - 0, /* tp_base */ - 0, /* tp_dict */ - 0, /* tp_descr_get */ - 0, /* tp_descr_set */ - 0, /* tp_dictoffset */ - 0, /* tp_init */ - 0, /* tp_alloc */ - 0, /* tp_new */ - 0, /* tp_free */ -}; - -PyMODINIT_FUNC -init_types(void) -{ - PyObject *m; - - m = Py_InitModule3("_types", NULL, "A types module helper"); - if (!m) - return; - - if (PyType_Ready(&HelperType) < 0) - return; - - Py_INCREF(&HelperType); - PyModule_AddObject(m, "Helper", (PyObject *)&HelperType); -} - - Modified: python/trunk/Modules/config.c.in ============================================================================== --- python/trunk/Modules/config.c.in (original) +++ python/trunk/Modules/config.c.in Wed Apr 9 00:07:05 2008 @@ -28,7 +28,6 @@ extern void initimp(void); extern void initgc(void); extern void init_ast(void); -extern void init_types(void); struct _inittab _PyImport_Inittab[] = { @@ -43,9 +42,6 @@ /* This lives in Python/Python-ast.c */ {"_ast", init_ast}, - /* This lives in Modules/_typesmodule.c */ - {"_types", init_types}, - /* These entries are here for sys.builtin_module_names */ {"__main__", NULL}, {"__builtin__", NULL}, Modified: python/trunk/PC/VC6/pythoncore.dsp ============================================================================== --- python/trunk/PC/VC6/pythoncore.dsp (original) +++ python/trunk/PC/VC6/pythoncore.dsp Wed Apr 9 00:07:05 2008 @@ -173,10 +173,6 @@ # End Source File # Begin Source File -SOURCE=..\..\Modules\_typesmodule.c -# End Source File -# Begin Source File - SOURCE=..\..\Modules\_weakref.c # End Source File # Begin Source File Modified: python/trunk/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/trunk/PC/VS7.1/pythoncore.vcproj (original) +++ python/trunk/PC/VS7.1/pythoncore.vcproj Wed Apr 9 00:07:05 2008 @@ -398,9 +398,6 @@ RelativePath="..\..\Pc\_subprocess.c"> - - - - Modified: python/trunk/PC/config.c ============================================================================== --- python/trunk/PC/config.c (original) +++ python/trunk/PC/config.c Wed Apr 9 00:07:05 2008 @@ -66,7 +66,6 @@ extern void init_subprocess(void); extern void init_lsprof(void); extern void init_ast(void); -extern void init_types(void); /* tools/freeze/makeconfig.py marker for additional "extern" */ /* -- ADDMODULE MARKER 1 -- */ @@ -161,8 +160,6 @@ {"sys", NULL}, {"exceptions", NULL}, - {"_types", init_types}, - /* Sentinel */ {0, 0} }; Modified: python/trunk/PCbuild/pythoncore.vcproj ============================================================================== --- python/trunk/PCbuild/pythoncore.vcproj (original) +++ python/trunk/PCbuild/pythoncore.vcproj Wed Apr 9 00:07:05 2008 @@ -1023,10 +1023,6 @@ > - - From python-checkins at python.org Wed Apr 9 00:12:38 2008 From: python-checkins at python.org (collin.winter) Date: Wed, 9 Apr 2008 00:12:38 +0200 (CEST) Subject: [Python-checkins] r62232 - in sandbox/trunk/2to3/lib2to3: fixes/fix_dict.py fixes/fix_xrange.py fixes/util.py tests/test_fixers.py Message-ID: <20080408221238.BD1FF1E4009@bag.python.org> Author: collin.winter Date: Wed Apr 9 00:12:38 2008 New Revision: 62232 Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py sandbox/trunk/2to3/lib2to3/fixes/fix_xrange.py sandbox/trunk/2to3/lib2to3/fixes/util.py sandbox/trunk/2to3/lib2to3/tests/test_fixers.py Log: Fix for http://bugs.python.org/issue2596 This extends fix_xrange to know about the (mostly) same special contexts as fix_dict (where a special context is something that is guaranteed to fully consume the iterable), adding list() calls where appropriate. It also special-cases "x in range(y)". Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py (original) +++ sandbox/trunk/2to3/lib2to3/fixes/fix_dict.py Wed Apr 9 00:12:38 2008 @@ -29,11 +29,10 @@ from ..pgen2 import token from . import basefix from .util import Name, Call, LParen, RParen, ArgList, Dot, set +from . import util -exempt = set(["sorted", "list", "set", "any", "all", "tuple", "sum", - "min", "max"]) -iter_exempt = exempt | set(["iter"]) +iter_exempt = util.consuming_calls | set(["iter"]) class FixDict(basefix.BaseFix): @@ -93,7 +92,7 @@ return results["func"].value in iter_exempt else: # list(d.keys()) -> list(d.keys()), etc. - return results["func"].value in exempt + return results["func"].value in util.consuming_calls if not isiter: return False # for ... in d.iterkeys() -> for ... in d.keys(), etc. Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_xrange.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/fixes/fix_xrange.py (original) +++ sandbox/trunk/2to3/lib2to3/fixes/fix_xrange.py Wed Apr 9 00:12:38 2008 @@ -5,14 +5,55 @@ # Local imports from .import basefix -from .util import Name +from .util import Name, Call, consuming_calls +from .. import patcomp + class FixXrange(basefix.BaseFix): PATTERN = """ - power< name='xrange' trailer< '(' [any] ')' > > + power< (name='range'|name='xrange') trailer< '(' [any] ')' > any* > """ def transform(self, node, results): name = results["name"] + if name.value == "xrange": + return self.transform_xrange(node, results) + elif name.value == "range": + return self.transform_range(node, results) + else: + raise ValueError(repr(name)) + + def transform_xrange(self, node, results): + name = results["name"] name.replace(Name("range", prefix=name.get_prefix())) + + def transform_range(self, node, results): + if not self.in_special_context(node): + arg = node.clone() + arg.set_prefix("") + call = Call(Name("list"), [arg]) + call.set_prefix(node.get_prefix()) + return call + return node + + P1 = "power< func=NAME trailer< '(' node=any ')' > any* >" + p1 = patcomp.compile_pattern(P1) + + P2 = """for_stmt< 'for' any 'in' node=any ':' any* > + | comp_for< 'for' any 'in' node=any any* > + | comparison< any 'in' node=any any*> + """ + p2 = patcomp.compile_pattern(P2) + + def in_special_context(self, node): + if node.parent is None: + return False + results = {} + if (node.parent.parent is not None and + self.p1.match(node.parent.parent, results) and + results["node"] is node): + # list(d.keys()) -> list(d.keys()), etc. + return results["func"].value in consuming_calls + # for ... in d.iterkeys() -> for ... in d.keys(), etc. + return self.p2.match(node.parent, results) and results["node"] is node Modified: sandbox/trunk/2to3/lib2to3/fixes/util.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/fixes/util.py (original) +++ sandbox/trunk/2to3/lib2to3/fixes/util.py Wed Apr 9 00:12:38 2008 @@ -182,6 +182,10 @@ ### Misc ########################################################### + +consuming_calls = set(["sorted", "list", "set", "any", "all", "tuple", "sum", + "min", "max"]) + def attr_chain(obj, attr): """Follow an attribute chain. Modified: sandbox/trunk/2to3/lib2to3/tests/test_fixers.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/test_fixers.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/test_fixers.py Wed Apr 9 00:12:38 2008 @@ -16,6 +16,8 @@ from .. import pygram from .. import pytree from .. import refactor +from ..fixes import util + class Options: def __init__(self, **kwargs): @@ -1103,9 +1105,7 @@ self.check(b, a) def test_unchanged(self): - wrappers = ["set", "sorted", "any", "all", "tuple", "sum", - "min", "max"] - for wrapper in wrappers: + for wrapper in util.consuming_calls: s = "s = %s(d.keys())" % wrapper self.unchanged(s) @@ -1253,26 +1253,54 @@ a = """x = range( 0 , 10 , 2 )""" self.check(b, a) - def test_1(self): + def test_single_arg(self): b = """x = xrange(10)""" a = """x = range(10)""" self.check(b, a) - def test_2(self): + def test_two_args(self): b = """x = xrange(1, 10)""" a = """x = range(1, 10)""" self.check(b, a) - def test_3(self): + def test_three_args(self): b = """x = xrange(0, 10, 2)""" a = """x = range(0, 10, 2)""" self.check(b, a) - def test_4(self): + def test_wrap_in_list(self): + b = """x = range(10, 3, 9)""" + a = """x = list(range(10, 3, 9))""" + self.check(b, a) + + b = """x = foo(range(10, 3, 9))""" + a = """x = foo(list(range(10, 3, 9)))""" + self.check(b, a) + + b = """x = range(10, 3, 9) + [4]""" + a = """x = list(range(10, 3, 9)) + [4]""" + self.check(b, a) + + def test_xrange_in_for(self): b = """for i in xrange(10):\n j=i""" a = """for i in range(10):\n j=i""" self.check(b, a) + b = """[i for i in xrange(10)]""" + a = """[i for i in range(10)]""" + self.check(b, a) + + def test_range_in_for(self): + self.unchanged("for i in range(10): pass") + self.unchanged("[i for i in range(10)]") + + def test_in_contains_test(self): + self.unchanged("x in range(10, 3, 9)") + + def test_in_consuming_context(self): + for call in util.consuming_calls: + self.unchanged("a = %s(range(10))" % call) + class Test_raw_input(FixerTestCase): fixer = "raw_input" From buildbot at python.org Wed Apr 9 00:23:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 08 Apr 2008 22:23:54 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080408222355.1BDFC1E402B@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/586 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Wed Apr 9 01:10:07 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 9 Apr 2008 01:10:07 +0200 (CEST) Subject: [Python-checkins] r62233 - python/trunk/Misc/NEWS Message-ID: <20080408231007.6D8B71E4016@bag.python.org> Author: amaury.forgeotdarc Date: Wed Apr 9 01:10:07 2008 New Revision: 62233 Modified: python/trunk/Misc/NEWS Log: Add a NEWS entry for previous checkin Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Apr 9 01:10:07 2008 @@ -18,6 +18,10 @@ Library ------- +- Issue #2408: The ``_types`` module, which was used as in implementation + detail of the public ``types`` module, has been removed and replaced by pure + python code. + - Issue #2513: distutils on Windows is now capable of cross-compiling extension modules between 32 and 64 bit platforms. See the distutls build documentation for more information. From python-checkins at python.org Wed Apr 9 01:47:31 2008 From: python-checkins at python.org (trent.nelson) Date: Wed, 9 Apr 2008 01:47:31 +0200 (CEST) Subject: [Python-checkins] r62234 - in python/trunk: Lib/test/test_asynchat.py Lib/test/test_asyncore.py Lib/test/test_ftplib.py Lib/test/test_httplib.py Lib/test/test_poplib.py Lib/test/test_smtplib.py Lib/test/test_socket.py Lib/test/test_socket_ssl.py Lib/test/test_socketserver.py Lib/test/test_ssl.py Lib/test/test_support.py Lib/test/test_telnetlib.py Misc/NEWS Message-ID: <20080408234731.370121E4016@bag.python.org> Author: trent.nelson Date: Wed Apr 9 01:47:30 2008 New Revision: 62234 Modified: python/trunk/Lib/test/test_asynchat.py python/trunk/Lib/test/test_asyncore.py python/trunk/Lib/test/test_ftplib.py python/trunk/Lib/test/test_httplib.py python/trunk/Lib/test/test_poplib.py python/trunk/Lib/test/test_smtplib.py python/trunk/Lib/test/test_socket.py python/trunk/Lib/test/test_socket_ssl.py python/trunk/Lib/test/test_socketserver.py python/trunk/Lib/test/test_ssl.py python/trunk/Lib/test/test_support.py python/trunk/Lib/test/test_telnetlib.py python/trunk/Misc/NEWS Log: - Issue #2550: The approach used by client/server code for obtaining ports to listen on in network-oriented tests has been refined in an effort to facilitate running multiple instances of the entire regression test suite in parallel without issue. test_support.bind_port() has been fixed such that it will always return a unique port -- which wasn't always the case with the previous implementation, especially if socket options had been set that affected address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT). The new implementation of bind_port() will actually raise an exception if it is passed an AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or SO_REUSEPORT socket option set. Furthermore, if available, bind_port() will set the SO_EXCLUSIVEADDRUSE option on the socket it's been passed. This currently only applies to Windows. This option prevents any other sockets from binding to the host/port we've bound to, thus removing the possibility of the 'non-deterministic' behaviour, as Microsoft puts it, that occurs when a second SOCK_STREAM socket binds and accepts to a host/port that's already been bound by another socket. The optional preferred port parameter to bind_port() has been removed. Under no circumstances should tests be hard coding ports! test_support.find_unused_port() has also been introduced, which will pass a temporary socket object to bind_port() in order to obtain an unused port. The temporary socket object is then closed and deleted, and the port is returned. This method should only be used for obtaining an unused port in order to pass to an external program (i.e. the -accept [port] argument to openssl's s_server mode) or as a parameter to a server-oriented class that doesn't give you direct access to the underlying socket used. Finally, test_support.HOST has been introduced, which should be used for the host argument of any relevant socket calls (i.e. bind and connect). The following tests were updated to following the new conventions: test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib, test_poplib, test_ftplib, test_telnetlib, test_socketserver, test_asynchat and test_socket_ssl. It is now possible for multiple instances of the regression test suite to run in parallel without issue. Modified: python/trunk/Lib/test/test_asynchat.py ============================================================================== --- python/trunk/Lib/test/test_asynchat.py (original) +++ python/trunk/Lib/test/test_asynchat.py Wed Apr 9 01:47:30 2008 @@ -6,8 +6,7 @@ import sys from test import test_support -HOST = "127.0.0.1" -PORT = 54322 +HOST = test_support.HOST SERVER_QUIT = 'QUIT\n' class echo_server(threading.Thread): @@ -18,15 +17,13 @@ def __init__(self, event): threading.Thread.__init__(self) self.event = event + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.port = test_support.bind_port(self.sock) def run(self): - sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - global PORT - PORT = test_support.bind_port(sock, HOST, PORT) - sock.listen(1) + self.sock.listen(1) self.event.set() - conn, client = sock.accept() + conn, client = self.sock.accept() self.buffer = "" # collect data until quit message is seen while SERVER_QUIT not in self.buffer: @@ -50,15 +47,15 @@ pass conn.close() - sock.close() + self.sock.close() class echo_client(asynchat.async_chat): - def __init__(self, terminator): + def __init__(self, terminator, server_port): asynchat.async_chat.__init__(self) self.contents = [] self.create_socket(socket.AF_INET, socket.SOCK_STREAM) - self.connect((HOST, PORT)) + self.connect((HOST, server_port)) self.set_terminator(terminator) self.buffer = '' @@ -106,7 +103,7 @@ event.wait() event.clear() time.sleep(0.01) # Give server time to start accepting. - c = echo_client(term) + c = echo_client(term, s.port) c.push("hello ") c.push("world%s" % term) c.push("I'm not dead yet!%s" % term) @@ -138,7 +135,7 @@ def numeric_terminator_check(self, termlen): # Try reading a fixed number of bytes s, event = start_echo_server() - c = echo_client(termlen) + c = echo_client(termlen, s.port) data = "hello world, I'm not dead yet!\n" c.push(data) c.push(SERVER_QUIT) @@ -159,7 +156,7 @@ def test_none_terminator(self): # Try reading a fixed number of bytes s, event = start_echo_server() - c = echo_client(None) + c = echo_client(None, s.port) data = "hello world, I'm not dead yet!\n" c.push(data) c.push(SERVER_QUIT) @@ -171,7 +168,7 @@ def test_simple_producer(self): s, event = start_echo_server() - c = echo_client('\n') + c = echo_client('\n', s.port) data = "hello world\nI'm not dead yet!\n" p = asynchat.simple_producer(data+SERVER_QUIT, buffer_size=8) c.push_with_producer(p) @@ -182,7 +179,7 @@ def test_string_producer(self): s, event = start_echo_server() - c = echo_client('\n') + c = echo_client('\n', s.port) data = "hello world\nI'm not dead yet!\n" c.push_with_producer(data+SERVER_QUIT) asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) @@ -193,7 +190,7 @@ def test_empty_line(self): # checks that empty lines are handled correctly s, event = start_echo_server() - c = echo_client('\n') + c = echo_client('\n', s.port) c.push("hello world\n\nI'm not dead yet!\n") c.push(SERVER_QUIT) asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) @@ -203,7 +200,7 @@ def test_close_when_done(self): s, event = start_echo_server() - c = echo_client('\n') + c = echo_client('\n', s.port) c.push("hello world\nI'm not dead yet!\n") c.push(SERVER_QUIT) c.close_when_done() Modified: python/trunk/Lib/test/test_asyncore.py ============================================================================== --- python/trunk/Lib/test/test_asyncore.py (original) +++ python/trunk/Lib/test/test_asyncore.py Wed Apr 9 01:47:30 2008 @@ -1,421 +1,412 @@ -import asyncore -import unittest -import select -import os -import socket -import threading -import sys -import time - -from test import test_support -from test.test_support import TESTFN, run_unittest, unlink -from StringIO import StringIO - -HOST = "127.0.0.1" -PORT = None - -class dummysocket: - def __init__(self): - self.closed = False - - def close(self): - self.closed = True - - def fileno(self): - return 42 - -class dummychannel: - def __init__(self): - self.socket = dummysocket() - -class exitingdummy: - def __init__(self): - pass - - def handle_read_event(self): - raise asyncore.ExitNow() - - handle_write_event = handle_read_event - handle_expt_event = handle_read_event - -class crashingdummy: - def __init__(self): - self.error_handled = False - - def handle_read_event(self): - raise Exception() - - handle_write_event = handle_read_event - handle_expt_event = handle_read_event - - def handle_error(self): - self.error_handled = True - -# used when testing senders; just collects what it gets until newline is sent -def capture_server(evt, buf): - try: - serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - serv.settimeout(3) - serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - serv.bind(("", 0)) - global PORT - PORT = serv.getsockname()[1] - serv.listen(5) - conn, addr = serv.accept() - except socket.timeout: - pass - else: - n = 200 - while n > 0: - r, w, e = select.select([conn], [], []) - if r: - data = conn.recv(10) - # keep everything except for the newline terminator - buf.write(data.replace('\n', '')) - if '\n' in data: - break - n -= 1 - time.sleep(0.01) - - conn.close() - finally: - serv.close() - PORT = None - evt.set() - - -class HelperFunctionTests(unittest.TestCase): - def test_readwriteexc(self): - # Check exception handling behavior of read, write and _exception - - # check that ExitNow exceptions in the object handler method - # bubbles all the way up through asyncore read/write/_exception calls - tr1 = exitingdummy() - self.assertRaises(asyncore.ExitNow, asyncore.read, tr1) - self.assertRaises(asyncore.ExitNow, asyncore.write, tr1) - self.assertRaises(asyncore.ExitNow, asyncore._exception, tr1) - - # check that an exception other than ExitNow in the object handler - # method causes the handle_error method to get called - tr2 = crashingdummy() - asyncore.read(tr2) - self.assertEqual(tr2.error_handled, True) - - tr2 = crashingdummy() - asyncore.write(tr2) - self.assertEqual(tr2.error_handled, True) - - tr2 = crashingdummy() - asyncore._exception(tr2) - self.assertEqual(tr2.error_handled, True) - - # asyncore.readwrite uses constants in the select module that - # are not present in Windows systems (see this thread: - # http://mail.python.org/pipermail/python-list/2001-October/109973.html) - # These constants should be present as long as poll is available - - if hasattr(select, 'poll'): - def test_readwrite(self): - # Check that correct methods are called by readwrite() - - class testobj: - def __init__(self): - self.read = False - self.write = False - self.expt = False - - def handle_read_event(self): - self.read = True - - def handle_write_event(self): - self.write = True - - def handle_expt_event(self): - self.expt = True - - def handle_error(self): - self.error_handled = True - - for flag in (select.POLLIN, select.POLLPRI): - tobj = testobj() - self.assertEqual(tobj.read, False) - asyncore.readwrite(tobj, flag) - self.assertEqual(tobj.read, True) - - # check that ExitNow exceptions in the object handler method - # bubbles all the way up through asyncore readwrite call - tr1 = exitingdummy() - self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, flag) - - # check that an exception other than ExitNow in the object handler - # method causes the handle_error method to get called - tr2 = crashingdummy() - asyncore.readwrite(tr2, flag) - self.assertEqual(tr2.error_handled, True) - - tobj = testobj() - self.assertEqual(tobj.write, False) - asyncore.readwrite(tobj, select.POLLOUT) - self.assertEqual(tobj.write, True) - - # check that ExitNow exceptions in the object handler method - # bubbles all the way up through asyncore readwrite call - tr1 = exitingdummy() - self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, - select.POLLOUT) - - # check that an exception other than ExitNow in the object handler - # method causes the handle_error method to get called - tr2 = crashingdummy() - asyncore.readwrite(tr2, select.POLLOUT) - self.assertEqual(tr2.error_handled, True) - - for flag in (select.POLLERR, select.POLLHUP, select.POLLNVAL): - tobj = testobj() - self.assertEqual(tobj.expt, False) - asyncore.readwrite(tobj, flag) - self.assertEqual(tobj.expt, True) - - # check that ExitNow exceptions in the object handler method - # bubbles all the way up through asyncore readwrite calls - tr1 = exitingdummy() - self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, flag) - - # check that an exception other than ExitNow in the object handler - # method causes the handle_error method to get called - tr2 = crashingdummy() - asyncore.readwrite(tr2, flag) - self.assertEqual(tr2.error_handled, True) - - def test_closeall(self): - self.closeall_check(False) - - def test_closeall_default(self): - self.closeall_check(True) - - def closeall_check(self, usedefault): - # Check that close_all() closes everything in a given map - - l = [] - testmap = {} - for i in range(10): - c = dummychannel() - l.append(c) - self.assertEqual(c.socket.closed, False) - testmap[i] = c - - if usedefault: - socketmap = asyncore.socket_map - try: - asyncore.socket_map = testmap - asyncore.close_all() - finally: - testmap, asyncore.socket_map = asyncore.socket_map, socketmap - else: - asyncore.close_all(testmap) - - self.assertEqual(len(testmap), 0) - - for c in l: - self.assertEqual(c.socket.closed, True) - - def test_compact_traceback(self): - try: - raise Exception("I don't like spam!") - except: - real_t, real_v, real_tb = sys.exc_info() - r = asyncore.compact_traceback() - else: - self.fail("Expected exception") - - (f, function, line), t, v, info = r - self.assertEqual(os.path.split(f)[-1], 'test_asyncore.py') - self.assertEqual(function, 'test_compact_traceback') - self.assertEqual(t, real_t) - self.assertEqual(v, real_v) - self.assertEqual(info, '[%s|%s|%s]' % (f, function, line)) - - -class DispatcherTests(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - asyncore.close_all() - - def test_basic(self): - d = asyncore.dispatcher() - self.assertEqual(d.readable(), True) - self.assertEqual(d.writable(), True) - - def test_repr(self): - d = asyncore.dispatcher() - self.assertEqual(repr(d), '' % id(d)) - - def test_log(self): - d = asyncore.dispatcher() - - # capture output of dispatcher.log() (to stderr) - fp = StringIO() - stderr = sys.stderr - l1 = "Lovely spam! Wonderful spam!" - l2 = "I don't like spam!" - try: - sys.stderr = fp - d.log(l1) - d.log(l2) - finally: - sys.stderr = stderr - - lines = fp.getvalue().splitlines() - self.assertEquals(lines, ['log: %s' % l1, 'log: %s' % l2]) - - def test_log_info(self): - d = asyncore.dispatcher() - - # capture output of dispatcher.log_info() (to stdout via print) - fp = StringIO() - stdout = sys.stdout - l1 = "Have you got anything without spam?" - l2 = "Why can't she have egg bacon spam and sausage?" - l3 = "THAT'S got spam in it!" - try: - sys.stdout = fp - d.log_info(l1, 'EGGS') - d.log_info(l2) - d.log_info(l3, 'SPAM') - finally: - sys.stdout = stdout - - lines = fp.getvalue().splitlines() - if __debug__: - expected = ['EGGS: %s' % l1, 'info: %s' % l2, 'SPAM: %s' % l3] - else: - expected = ['EGGS: %s' % l1, 'SPAM: %s' % l3] - - self.assertEquals(lines, expected) - - def test_unhandled(self): - d = asyncore.dispatcher() - - # capture output of dispatcher.log_info() (to stdout via print) - fp = StringIO() - stdout = sys.stdout - try: - sys.stdout = fp - d.handle_expt() - d.handle_read() - d.handle_write() - d.handle_connect() - d.handle_accept() - finally: - sys.stdout = stdout - - lines = fp.getvalue().splitlines() - expected = ['warning: unhandled exception', - 'warning: unhandled read event', - 'warning: unhandled write event', - 'warning: unhandled connect event', - 'warning: unhandled accept event'] - self.assertEquals(lines, expected) - - - -class dispatcherwithsend_noread(asyncore.dispatcher_with_send): - def readable(self): - return False - - def handle_connect(self): - pass - -class DispatcherWithSendTests(unittest.TestCase): - usepoll = False - - def setUp(self): - pass - - def tearDown(self): - asyncore.close_all() - - def test_send(self): - self.evt = threading.Event() - cap = StringIO() - threading.Thread(target=capture_server, args=(self.evt,cap)).start() - - # wait until server thread has assigned a port number - n = 1000 - while PORT is None and n > 0: - time.sleep(0.01) - n -= 1 - - # wait a little longer for the server to initialize (it sometimes - # refuses connections on slow machines without this wait) - time.sleep(0.2) - - data = "Suppose there isn't a 16-ton weight?" - d = dispatcherwithsend_noread() - d.create_socket(socket.AF_INET, socket.SOCK_STREAM) - d.connect((HOST, PORT)) - - # give time for socket to connect - time.sleep(0.1) - - d.send(data) - d.send(data) - d.send('\n') - - n = 1000 - while d.out_buffer and n > 0: - asyncore.poll() - n -= 1 - - self.evt.wait() - - self.assertEqual(cap.getvalue(), data*2) - - -class DispatcherWithSendTests_UsePoll(DispatcherWithSendTests): - usepoll = True - -if hasattr(asyncore, 'file_wrapper'): - class FileWrapperTest(unittest.TestCase): - def setUp(self): - self.d = "It's not dead, it's sleeping!" - file(TESTFN, 'w').write(self.d) - - def tearDown(self): - unlink(TESTFN) - - def test_recv(self): - fd = os.open(TESTFN, os.O_RDONLY) - w = asyncore.file_wrapper(fd) - - self.assertEqual(w.fd, fd) - self.assertEqual(w.fileno(), fd) - self.assertEqual(w.recv(13), "It's not dead") - self.assertEqual(w.read(6), ", it's") - w.close() - self.assertRaises(OSError, w.read, 1) - - def test_send(self): - d1 = "Come again?" - d2 = "I want to buy some cheese." - fd = os.open(TESTFN, os.O_WRONLY | os.O_APPEND) - w = asyncore.file_wrapper(fd) - - w.write(d1) - w.send(d2) - w.close() - self.assertEqual(file(TESTFN).read(), self.d + d1 + d2) - - -def test_main(): - tests = [HelperFunctionTests, DispatcherTests, DispatcherWithSendTests, - DispatcherWithSendTests_UsePoll] - if hasattr(asyncore, 'file_wrapper'): - tests.append(FileWrapperTest) - - run_unittest(*tests) - -if __name__ == "__main__": - test_main() +import asyncore +import unittest +import select +import os +import socket +import threading +import sys +import time + +from test import test_support +from test.test_support import TESTFN, run_unittest, unlink +from StringIO import StringIO + +HOST = test_support.HOST + +class dummysocket: + def __init__(self): + self.closed = False + + def close(self): + self.closed = True + + def fileno(self): + return 42 + +class dummychannel: + def __init__(self): + self.socket = dummysocket() + +class exitingdummy: + def __init__(self): + pass + + def handle_read_event(self): + raise asyncore.ExitNow() + + handle_write_event = handle_read_event + handle_expt_event = handle_read_event + +class crashingdummy: + def __init__(self): + self.error_handled = False + + def handle_read_event(self): + raise Exception() + + handle_write_event = handle_read_event + handle_expt_event = handle_read_event + + def handle_error(self): + self.error_handled = True + +# used when testing senders; just collects what it gets until newline is sent +def capture_server(evt, buf, serv): + try: + serv.listen(5) + conn, addr = serv.accept() + except socket.timeout: + pass + else: + n = 200 + while n > 0: + r, w, e = select.select([conn], [], []) + if r: + data = conn.recv(10) + # keep everything except for the newline terminator + buf.write(data.replace('\n', '')) + if '\n' in data: + break + n -= 1 + time.sleep(0.01) + + conn.close() + finally: + serv.close() + evt.set() + + +class HelperFunctionTests(unittest.TestCase): + def test_readwriteexc(self): + # Check exception handling behavior of read, write and _exception + + # check that ExitNow exceptions in the object handler method + # bubbles all the way up through asyncore read/write/_exception calls + tr1 = exitingdummy() + self.assertRaises(asyncore.ExitNow, asyncore.read, tr1) + self.assertRaises(asyncore.ExitNow, asyncore.write, tr1) + self.assertRaises(asyncore.ExitNow, asyncore._exception, tr1) + + # check that an exception other than ExitNow in the object handler + # method causes the handle_error method to get called + tr2 = crashingdummy() + asyncore.read(tr2) + self.assertEqual(tr2.error_handled, True) + + tr2 = crashingdummy() + asyncore.write(tr2) + self.assertEqual(tr2.error_handled, True) + + tr2 = crashingdummy() + asyncore._exception(tr2) + self.assertEqual(tr2.error_handled, True) + + # asyncore.readwrite uses constants in the select module that + # are not present in Windows systems (see this thread: + # http://mail.python.org/pipermail/python-list/2001-October/109973.html) + # These constants should be present as long as poll is available + + if hasattr(select, 'poll'): + def test_readwrite(self): + # Check that correct methods are called by readwrite() + + class testobj: + def __init__(self): + self.read = False + self.write = False + self.expt = False + + def handle_read_event(self): + self.read = True + + def handle_write_event(self): + self.write = True + + def handle_expt_event(self): + self.expt = True + + def handle_error(self): + self.error_handled = True + + for flag in (select.POLLIN, select.POLLPRI): + tobj = testobj() + self.assertEqual(tobj.read, False) + asyncore.readwrite(tobj, flag) + self.assertEqual(tobj.read, True) + + # check that ExitNow exceptions in the object handler method + # bubbles all the way up through asyncore readwrite call + tr1 = exitingdummy() + self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, flag) + + # check that an exception other than ExitNow in the object handler + # method causes the handle_error method to get called + tr2 = crashingdummy() + asyncore.readwrite(tr2, flag) + self.assertEqual(tr2.error_handled, True) + + tobj = testobj() + self.assertEqual(tobj.write, False) + asyncore.readwrite(tobj, select.POLLOUT) + self.assertEqual(tobj.write, True) + + # check that ExitNow exceptions in the object handler method + # bubbles all the way up through asyncore readwrite call + tr1 = exitingdummy() + self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, + select.POLLOUT) + + # check that an exception other than ExitNow in the object handler + # method causes the handle_error method to get called + tr2 = crashingdummy() + asyncore.readwrite(tr2, select.POLLOUT) + self.assertEqual(tr2.error_handled, True) + + for flag in (select.POLLERR, select.POLLHUP, select.POLLNVAL): + tobj = testobj() + self.assertEqual(tobj.expt, False) + asyncore.readwrite(tobj, flag) + self.assertEqual(tobj.expt, True) + + # check that ExitNow exceptions in the object handler method + # bubbles all the way up through asyncore readwrite calls + tr1 = exitingdummy() + self.assertRaises(asyncore.ExitNow, asyncore.readwrite, tr1, flag) + + # check that an exception other than ExitNow in the object handler + # method causes the handle_error method to get called + tr2 = crashingdummy() + asyncore.readwrite(tr2, flag) + self.assertEqual(tr2.error_handled, True) + + def test_closeall(self): + self.closeall_check(False) + + def test_closeall_default(self): + self.closeall_check(True) + + def closeall_check(self, usedefault): + # Check that close_all() closes everything in a given map + + l = [] + testmap = {} + for i in range(10): + c = dummychannel() + l.append(c) + self.assertEqual(c.socket.closed, False) + testmap[i] = c + + if usedefault: + socketmap = asyncore.socket_map + try: + asyncore.socket_map = testmap + asyncore.close_all() + finally: + testmap, asyncore.socket_map = asyncore.socket_map, socketmap + else: + asyncore.close_all(testmap) + + self.assertEqual(len(testmap), 0) + + for c in l: + self.assertEqual(c.socket.closed, True) + + def test_compact_traceback(self): + try: + raise Exception("I don't like spam!") + except: + real_t, real_v, real_tb = sys.exc_info() + r = asyncore.compact_traceback() + else: + self.fail("Expected exception") + + (f, function, line), t, v, info = r + self.assertEqual(os.path.split(f)[-1], 'test_asyncore.py') + self.assertEqual(function, 'test_compact_traceback') + self.assertEqual(t, real_t) + self.assertEqual(v, real_v) + self.assertEqual(info, '[%s|%s|%s]' % (f, function, line)) + + +class DispatcherTests(unittest.TestCase): + def setUp(self): + pass + + def tearDown(self): + asyncore.close_all() + + def test_basic(self): + d = asyncore.dispatcher() + self.assertEqual(d.readable(), True) + self.assertEqual(d.writable(), True) + + def test_repr(self): + d = asyncore.dispatcher() + self.assertEqual(repr(d), '' % id(d)) + + def test_log(self): + d = asyncore.dispatcher() + + # capture output of dispatcher.log() (to stderr) + fp = StringIO() + stderr = sys.stderr + l1 = "Lovely spam! Wonderful spam!" + l2 = "I don't like spam!" + try: + sys.stderr = fp + d.log(l1) + d.log(l2) + finally: + sys.stderr = stderr + + lines = fp.getvalue().splitlines() + self.assertEquals(lines, ['log: %s' % l1, 'log: %s' % l2]) + + def test_log_info(self): + d = asyncore.dispatcher() + + # capture output of dispatcher.log_info() (to stdout via print) + fp = StringIO() + stdout = sys.stdout + l1 = "Have you got anything without spam?" + l2 = "Why can't she have egg bacon spam and sausage?" + l3 = "THAT'S got spam in it!" + try: + sys.stdout = fp + d.log_info(l1, 'EGGS') + d.log_info(l2) + d.log_info(l3, 'SPAM') + finally: + sys.stdout = stdout + + lines = fp.getvalue().splitlines() + if __debug__: + expected = ['EGGS: %s' % l1, 'info: %s' % l2, 'SPAM: %s' % l3] + else: + expected = ['EGGS: %s' % l1, 'SPAM: %s' % l3] + + self.assertEquals(lines, expected) + + def test_unhandled(self): + d = asyncore.dispatcher() + + # capture output of dispatcher.log_info() (to stdout via print) + fp = StringIO() + stdout = sys.stdout + try: + sys.stdout = fp + d.handle_expt() + d.handle_read() + d.handle_write() + d.handle_connect() + d.handle_accept() + finally: + sys.stdout = stdout + + lines = fp.getvalue().splitlines() + expected = ['warning: unhandled exception', + 'warning: unhandled read event', + 'warning: unhandled write event', + 'warning: unhandled connect event', + 'warning: unhandled accept event'] + self.assertEquals(lines, expected) + + + +class dispatcherwithsend_noread(asyncore.dispatcher_with_send): + def readable(self): + return False + + def handle_connect(self): + pass + +class DispatcherWithSendTests(unittest.TestCase): + usepoll = False + + def setUp(self): + pass + + def tearDown(self): + asyncore.close_all() + + def test_send(self): + self.evt = threading.Event() + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(3) + self.port = test_support.bind_port(self.sock) + + cap = StringIO() + args = (self.evt, cap, self.sock) + threading.Thread(target=capture_server, args=args).start() + + # wait a little longer for the server to initialize (it sometimes + # refuses connections on slow machines without this wait) + time.sleep(0.2) + + data = "Suppose there isn't a 16-ton weight?" + d = dispatcherwithsend_noread() + d.create_socket(socket.AF_INET, socket.SOCK_STREAM) + d.connect((HOST, self.port)) + + # give time for socket to connect + time.sleep(0.1) + + d.send(data) + d.send(data) + d.send('\n') + + n = 1000 + while d.out_buffer and n > 0: + asyncore.poll() + n -= 1 + + self.evt.wait() + + self.assertEqual(cap.getvalue(), data*2) + + +class DispatcherWithSendTests_UsePoll(DispatcherWithSendTests): + usepoll = True + +if hasattr(asyncore, 'file_wrapper'): + class FileWrapperTest(unittest.TestCase): + def setUp(self): + self.d = "It's not dead, it's sleeping!" + file(TESTFN, 'w').write(self.d) + + def tearDown(self): + unlink(TESTFN) + + def test_recv(self): + fd = os.open(TESTFN, os.O_RDONLY) + w = asyncore.file_wrapper(fd) + + self.assertEqual(w.fd, fd) + self.assertEqual(w.fileno(), fd) + self.assertEqual(w.recv(13), "It's not dead") + self.assertEqual(w.read(6), ", it's") + w.close() + self.assertRaises(OSError, w.read, 1) + + def test_send(self): + d1 = "Come again?" + d2 = "I want to buy some cheese." + fd = os.open(TESTFN, os.O_WRONLY | os.O_APPEND) + w = asyncore.file_wrapper(fd) + + w.write(d1) + w.send(d2) + w.close() + self.assertEqual(file(TESTFN).read(), self.d + d1 + d2) + + +def test_main(): + tests = [HelperFunctionTests, DispatcherTests, DispatcherWithSendTests, + DispatcherWithSendTests_UsePoll] + if hasattr(asyncore, 'file_wrapper'): + tests.append(FileWrapperTest) + + run_unittest(*tests) + +if __name__ == "__main__": + test_main() Modified: python/trunk/Lib/test/test_ftplib.py ============================================================================== --- python/trunk/Lib/test/test_ftplib.py (original) +++ python/trunk/Lib/test/test_ftplib.py Wed Apr 9 01:47:30 2008 @@ -6,18 +6,13 @@ from unittest import TestCase from test import test_support -server_port = None +HOST = test_support.HOST # This function sets the evt 3 times: # 1) when the connection is ready to be accepted. # 2) when it is safe for the caller to close the connection # 3) when we have closed the socket -def server(evt): - global server_port - serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - serv.settimeout(3) - serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - server_port = test_support.bind_port(serv, "", 9091) +def server(evt, serv): serv.listen(5) # (1) Signal the caller that we are ready to accept the connection. evt.set() @@ -39,14 +34,16 @@ def setUp(self): self.evt = threading.Event() - threading.Thread(target=server, args=(self.evt,)).start() + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(3) + self.port = test_support.bind_port(self.sock) + threading.Thread(target=server, args=(self.evt,self.sock)).start() # Wait for the server to be ready. self.evt.wait() self.evt.clear() - ftplib.FTP.port = server_port + ftplib.FTP.port = self.port def tearDown(self): - # Wait on the closing of the socket (this shouldn't be necessary). self.evt.wait() def testBasic(self): @@ -54,34 +51,34 @@ ftplib.FTP() # connects - ftp = ftplib.FTP("localhost") + ftp = ftplib.FTP(HOST) self.evt.wait() ftp.sock.close() def testTimeoutDefault(self): # default - ftp = ftplib.FTP("localhost") + ftp = ftplib.FTP(HOST) self.assertTrue(ftp.sock.gettimeout() is None) self.evt.wait() ftp.sock.close() def testTimeoutValue(self): # a value - ftp = ftplib.FTP("localhost", timeout=30) + ftp = ftplib.FTP(HOST, timeout=30) self.assertEqual(ftp.sock.gettimeout(), 30) self.evt.wait() ftp.sock.close() def testTimeoutConnect(self): ftp = ftplib.FTP() - ftp.connect("localhost", timeout=30) + ftp.connect(HOST, timeout=30) self.assertEqual(ftp.sock.gettimeout(), 30) self.evt.wait() ftp.sock.close() def testTimeoutDifferentOrder(self): ftp = ftplib.FTP(timeout=30) - ftp.connect("localhost") + ftp.connect(HOST) self.assertEqual(ftp.sock.gettimeout(), 30) self.evt.wait() ftp.sock.close() @@ -89,7 +86,7 @@ def testTimeoutDirectAccess(self): ftp = ftplib.FTP() ftp.timeout = 30 - ftp.connect("localhost") + ftp.connect(HOST) self.assertEqual(ftp.sock.gettimeout(), 30) self.evt.wait() ftp.sock.close() @@ -99,7 +96,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - ftp = ftplib.FTP("localhost", timeout=None) + ftp = ftplib.FTP(HOST, timeout=None) finally: socket.setdefaulttimeout(previous) self.assertEqual(ftp.sock.gettimeout(), 30) Modified: python/trunk/Lib/test/test_httplib.py ============================================================================== --- python/trunk/Lib/test/test_httplib.py (original) +++ python/trunk/Lib/test/test_httplib.py Wed Apr 9 01:47:30 2008 @@ -6,6 +6,8 @@ from test import test_support +HOST = test_support.HOST + class FakeSocket: def __init__(self, text, fileclass=StringIO.StringIO): self.text = text @@ -196,16 +198,12 @@ def test_responses(self): self.assertEquals(httplib.responses[httplib.NOT_FOUND], "Not Found") -PORT = 50003 -HOST = "localhost" - class TimeoutTest(TestCase): + PORT = None def setUp(self): self.serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - self.serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - global PORT - PORT = test_support.bind_port(self.serv, HOST, PORT) + self.PORT = test_support.bind_port(self.serv) self.serv.listen(5) def tearDown(self): @@ -217,13 +215,13 @@ HTTPConnection and into the socket. ''' # default - httpConn = httplib.HTTPConnection(HOST, PORT) + httpConn = httplib.HTTPConnection(HOST, self.PORT) httpConn.connect() self.assertTrue(httpConn.sock.gettimeout() is None) httpConn.close() # a value - httpConn = httplib.HTTPConnection(HOST, PORT, timeout=30) + httpConn = httplib.HTTPConnection(HOST, self.PORT, timeout=30) httpConn.connect() self.assertEqual(httpConn.sock.gettimeout(), 30) httpConn.close() @@ -232,7 +230,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - httpConn = httplib.HTTPConnection(HOST, PORT, timeout=None) + httpConn = httplib.HTTPConnection(HOST, self.PORT, timeout=None) httpConn.connect() finally: socket.setdefaulttimeout(previous) @@ -246,11 +244,12 @@ def test_attributes(self): # simple test to check it's storing it if hasattr(httplib, 'HTTPSConnection'): - h = httplib.HTTPSConnection(HOST, PORT, timeout=30) + h = httplib.HTTPSConnection(HOST, TimeoutTest.PORT, timeout=30) self.assertEqual(h.timeout, 30) def test_main(verbose=None): - test_support.run_unittest(HeaderTests, OfflineTest, BasicTest, TimeoutTest, HTTPSTimeoutTest) + test_support.run_unittest(HeaderTests, OfflineTest, BasicTest, TimeoutTest, + HTTPSTimeoutTest) if __name__ == '__main__': test_main() Modified: python/trunk/Lib/test/test_poplib.py ============================================================================== --- python/trunk/Lib/test/test_poplib.py (original) +++ python/trunk/Lib/test/test_poplib.py Wed Apr 9 01:47:30 2008 @@ -6,12 +6,9 @@ from unittest import TestCase from test import test_support +HOST = test_support.HOST -def server(evt): - serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - serv.settimeout(3) - serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - serv.bind(("", 9091)) +def server(evt, serv): serv.listen(5) try: conn, addr = serv.accept() @@ -28,7 +25,10 @@ def setUp(self): self.evt = threading.Event() - threading.Thread(target=server, args=(self.evt,)).start() + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(3) + self.port = test_support.bind_port(self.sock) + threading.Thread(target=server, args=(self.evt,self.sock)).start() time.sleep(.1) def tearDown(self): @@ -36,18 +36,18 @@ def testBasic(self): # connects - pop = poplib.POP3("localhost", 9091) + pop = poplib.POP3(HOST, self.port) pop.sock.close() def testTimeoutDefault(self): # default - pop = poplib.POP3("localhost", 9091) + pop = poplib.POP3(HOST, self.port) self.assertTrue(pop.sock.gettimeout() is None) pop.sock.close() def testTimeoutValue(self): # a value - pop = poplib.POP3("localhost", 9091, timeout=30) + pop = poplib.POP3(HOST, self.port, timeout=30) self.assertEqual(pop.sock.gettimeout(), 30) pop.sock.close() @@ -56,7 +56,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - pop = poplib.POP3("localhost", 9091, timeout=None) + pop = poplib.POP3(HOST, self.port, timeout=None) finally: socket.setdefaulttimeout(previous) self.assertEqual(pop.sock.gettimeout(), 30) Modified: python/trunk/Lib/test/test_smtplib.py ============================================================================== --- python/trunk/Lib/test/test_smtplib.py (original) +++ python/trunk/Lib/test/test_smtplib.py Wed Apr 9 01:47:30 2008 @@ -12,18 +12,9 @@ from unittest import TestCase from test import test_support -# PORT is used to communicate the port number assigned to the server -# to the test client -HOST = "localhost" -PORT = None - -def server(evt, buf): - serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - serv.settimeout(15) - serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - serv.bind(("", 0)) - global PORT - PORT = serv.getsockname()[1] +HOST = test_support.HOST + +def server(evt, buf, serv): serv.listen(5) evt.set() try: @@ -43,14 +34,16 @@ conn.close() finally: serv.close() - PORT = None evt.set() class GeneralTests(TestCase): def setUp(self): self.evt = threading.Event() - servargs = (self.evt, "220 Hola mundo\n") + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(15) + self.port = test_support.bind_port(self.sock) + servargs = (self.evt, "220 Hola mundo\n", self.sock) threading.Thread(target=server, args=servargs).start() self.evt.wait() self.evt.clear() @@ -60,29 +53,29 @@ def testBasic1(self): # connects - smtp = smtplib.SMTP(HOST, PORT) + smtp = smtplib.SMTP(HOST, self.port) smtp.sock.close() def testBasic2(self): # connects, include port in host name - smtp = smtplib.SMTP("%s:%s" % (HOST, PORT)) + smtp = smtplib.SMTP("%s:%s" % (HOST, self.port)) smtp.sock.close() def testLocalHostName(self): # check that supplied local_hostname is used - smtp = smtplib.SMTP(HOST, PORT, local_hostname="testhost") + smtp = smtplib.SMTP(HOST, self.port, local_hostname="testhost") self.assertEqual(smtp.local_hostname, "testhost") smtp.sock.close() def testTimeoutDefault(self): # default - smtp = smtplib.SMTP(HOST, PORT) + smtp = smtplib.SMTP(HOST, self.port) self.assertTrue(smtp.sock.gettimeout() is None) smtp.sock.close() def testTimeoutValue(self): # a value - smtp = smtplib.SMTP(HOST, PORT, timeout=30) + smtp = smtplib.SMTP(HOST, self.port, timeout=30) self.assertEqual(smtp.sock.gettimeout(), 30) smtp.sock.close() @@ -91,7 +84,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - smtp = smtplib.SMTP(HOST, PORT, timeout=None) + smtp = smtplib.SMTP(HOST, self.port, timeout=None) finally: socket.setdefaulttimeout(previous) self.assertEqual(smtp.sock.gettimeout(), 30) @@ -99,10 +92,7 @@ # Test server thread using the specified SMTP server class -def debugging_server(server_class, serv_evt, client_evt): - serv = server_class(("", 0), ('nowhere', -1)) - global PORT - PORT = serv.getsockname()[1] +def debugging_server(serv, serv_evt, client_evt): serv_evt.set() try: @@ -131,7 +121,6 @@ time.sleep(0.5) serv.close() asyncore.close_all() - PORT = None serv_evt.set() MSG_BEGIN = '---------- MESSAGE FOLLOWS ----------\n' @@ -153,7 +142,9 @@ self.serv_evt = threading.Event() self.client_evt = threading.Event() - serv_args = (smtpd.DebuggingServer, self.serv_evt, self.client_evt) + self.port = test_support.find_unused_port() + self.serv = smtpd.DebuggingServer((HOST, self.port), ('nowhere', -1)) + serv_args = (self.serv, self.serv_evt, self.client_evt) threading.Thread(target=debugging_server, args=serv_args).start() # wait until server thread has assigned a port number @@ -170,31 +161,31 @@ def testBasic(self): # connect - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) smtp.quit() def testNOOP(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) expected = (250, 'Ok') self.assertEqual(smtp.noop(), expected) smtp.quit() def testRSET(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) expected = (250, 'Ok') self.assertEqual(smtp.rset(), expected) smtp.quit() def testNotImplemented(self): # EHLO isn't implemented in DebuggingServer - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) expected = (502, 'Error: command "EHLO" not implemented') self.assertEqual(smtp.ehlo(), expected) smtp.quit() def testVRFY(self): # VRFY isn't implemented in DebuggingServer - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) expected = (502, 'Error: command "VRFY" not implemented') self.assertEqual(smtp.vrfy('nobody at nowhere.com'), expected) self.assertEqual(smtp.verify('nobody at nowhere.com'), expected) @@ -203,21 +194,21 @@ def testSecondHELO(self): # check that a second HELO returns a message that it's a duplicate # (this behavior is specific to smtpd.SMTPChannel) - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) smtp.helo() expected = (503, 'Duplicate HELO/EHLO') self.assertEqual(smtp.helo(), expected) smtp.quit() def testHELP(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) self.assertEqual(smtp.help(), 'Error: command "HELP" not implemented') smtp.quit() def testSend(self): # connect and send mail m = 'A test message' - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=3) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=3) smtp.sendmail('John', 'Sally', m) smtp.quit() @@ -257,7 +248,10 @@ sys.stdout = self.output self.evt = threading.Event() - servargs = (self.evt, "199 no hello for you!\n") + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(15) + self.port = test_support.bind_port(self.sock) + servargs = (self.evt, "199 no hello for you!\n", self.sock) threading.Thread(target=server, args=servargs).start() self.evt.wait() self.evt.clear() @@ -268,7 +262,7 @@ def testFailingHELO(self): self.assertRaises(smtplib.SMTPConnectError, smtplib.SMTP, - HOST, PORT, 'localhost', 3) + HOST, self.port, 'localhost', 3) sim_users = {'Mr.A at somewhere.com':'John A', @@ -333,7 +327,9 @@ def setUp(self): self.serv_evt = threading.Event() self.client_evt = threading.Event() - serv_args = (SimSMTPServer, self.serv_evt, self.client_evt) + self.port = test_support.find_unused_port() + self.serv = SimSMTPServer((HOST, self.port), ('nowhere', -1)) + serv_args = (self.serv, self.serv_evt, self.client_evt) threading.Thread(target=debugging_server, args=serv_args).start() # wait until server thread has assigned a port number @@ -348,11 +344,11 @@ def testBasic(self): # smoke test - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=15) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=15) smtp.quit() def testEHLO(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=15) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=15) # no features should be present before the EHLO self.assertEqual(smtp.esmtp_features, {}) @@ -373,7 +369,7 @@ smtp.quit() def testVRFY(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=15) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=15) for email, name in sim_users.items(): expected_known = (250, '%s %s' % (name, smtplib.quoteaddr(email))) @@ -385,7 +381,7 @@ smtp.quit() def testEXPN(self): - smtp = smtplib.SMTP(HOST, PORT, local_hostname='localhost', timeout=15) + smtp = smtplib.SMTP(HOST, self.port, local_hostname='localhost', timeout=15) for listname, members in sim_lists.items(): users = [] Modified: python/trunk/Lib/test/test_socket.py ============================================================================== --- python/trunk/Lib/test/test_socket.py (original) +++ python/trunk/Lib/test/test_socket.py Wed Apr 9 01:47:30 2008 @@ -3,6 +3,7 @@ import unittest from test import test_support +import errno import socket import select import thread, threading @@ -15,17 +16,14 @@ from weakref import proxy import signal -PORT = 50007 -HOST = 'localhost' +HOST = test_support.HOST MSG = 'Michael Gilfix was here\n' class SocketTCPTest(unittest.TestCase): def setUp(self): self.serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - self.serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - global PORT - PORT = test_support.bind_port(self.serv, HOST, PORT) + self.port = test_support.bind_port(self.serv) self.serv.listen(1) def tearDown(self): @@ -36,9 +34,7 @@ def setUp(self): self.serv = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - self.serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - global PORT - PORT = test_support.bind_port(self.serv, HOST, PORT) + self.port = test_support.bind_port(self.serv) def tearDown(self): self.serv.close() @@ -185,7 +181,7 @@ def clientSetUp(self): ThreadedTCPSocketTest.clientSetUp(self) - self.cli.connect((HOST, PORT)) + self.cli.connect((HOST, self.port)) self.serv_conn = self.cli def clientTearDown(self): @@ -461,16 +457,23 @@ # XXX The following don't test module-level functionality... def testSockName(self): - # Testing getsockname() + # Testing getsockname(). Use a temporary socket to elicit an unused + # ephemeral port that we can use later in the test. + tempsock = socket.socket() + tempsock.bind(("0.0.0.0", 0)) + (host, port) = tempsock.getsockname() + tempsock.close() + del tempsock + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - sock.bind(("0.0.0.0", PORT+1)) + sock.bind(("0.0.0.0", port)) name = sock.getsockname() # XXX(nnorwitz): http://tinyurl.com/os5jz seems to indicate # it reasonable to get the host's addr in addition to 0.0.0.0. # At least for eCos. This is required for the S/390 to pass. my_ip_addr = socket.gethostbyname(socket.gethostname()) self.assert_(name[0] in ("0.0.0.0", my_ip_addr), '%s invalid' % name[0]) - self.assertEqual(name[1], PORT+1) + self.assertEqual(name[1], port) def testGetSockOpt(self): # Testing getsockopt() @@ -597,7 +600,7 @@ self.assertEqual(msg, MSG) def _testSendtoAndRecv(self): - self.cli.sendto(MSG, 0, (HOST, PORT)) + self.cli.sendto(MSG, 0, (HOST, self.port)) def testRecvFrom(self): # Testing recvfrom() over UDP @@ -605,14 +608,14 @@ self.assertEqual(msg, MSG) def _testRecvFrom(self): - self.cli.sendto(MSG, 0, (HOST, PORT)) + self.cli.sendto(MSG, 0, (HOST, self.port)) def testRecvFromNegative(self): # Negative lengths passed to recvfrom should give ValueError. self.assertRaises(ValueError, self.serv.recvfrom, -1) def _testRecvFromNegative(self): - self.cli.sendto(MSG, 0, (HOST, PORT)) + self.cli.sendto(MSG, 0, (HOST, self.port)) class TCPCloserTest(ThreadedTCPSocketTest): @@ -626,7 +629,7 @@ self.assertEqual(sd.recv(1), '') def _testClose(self): - self.cli.connect((HOST, PORT)) + self.cli.connect((HOST, self.port)) time.sleep(1.0) class BasicSocketPairTest(SocketPairTest): @@ -684,7 +687,7 @@ def _testAccept(self): time.sleep(0.1) - self.cli.connect((HOST, PORT)) + self.cli.connect((HOST, self.port)) def testConnect(self): # Testing non-blocking connect @@ -692,7 +695,7 @@ def _testConnect(self): self.cli.settimeout(10) - self.cli.connect((HOST, PORT)) + self.cli.connect((HOST, self.port)) def testRecv(self): # Testing non-blocking recv @@ -712,7 +715,7 @@ self.fail("Error during select call to non-blocking socket.") def _testRecv(self): - self.cli.connect((HOST, PORT)) + self.cli.connect((HOST, self.port)) time.sleep(0.1) self.cli.send(MSG) @@ -830,7 +833,9 @@ class NetworkConnectionTest(object): """Prove network connection.""" def clientSetUp(self): - self.cli = socket.create_connection((HOST, PORT)) + # We're inherited below by BasicTCPTest2, which also inherits + # BasicTCPTest, which defines self.port referenced below. + self.cli = socket.create_connection((HOST, self.port)) self.serv_conn = self.cli class BasicTCPTest2(NetworkConnectionTest, BasicTCPTest): @@ -839,7 +844,11 @@ class NetworkConnectionNoServer(unittest.TestCase): def testWithoutServer(self): - self.failUnlessRaises(socket.error, lambda: socket.create_connection((HOST, PORT))) + port = test_support.find_unused_port() + self.failUnlessRaises( + socket.error, + lambda: socket.create_connection((HOST, port)) + ) class NetworkConnectionAttributesTest(SocketTCPTest, ThreadableTest): @@ -860,22 +869,22 @@ testFamily = _justAccept def _testFamily(self): - self.cli = socket.create_connection((HOST, PORT), timeout=30) + self.cli = socket.create_connection((HOST, self.port), timeout=30) self.assertEqual(self.cli.family, 2) testTimeoutDefault = _justAccept def _testTimeoutDefault(self): - self.cli = socket.create_connection((HOST, PORT)) + self.cli = socket.create_connection((HOST, self.port)) self.assertTrue(self.cli.gettimeout() is None) testTimeoutValueNamed = _justAccept def _testTimeoutValueNamed(self): - self.cli = socket.create_connection((HOST, PORT), timeout=30) + self.cli = socket.create_connection((HOST, self.port), timeout=30) self.assertEqual(self.cli.gettimeout(), 30) testTimeoutValueNonamed = _justAccept def _testTimeoutValueNonamed(self): - self.cli = socket.create_connection((HOST, PORT), 30) + self.cli = socket.create_connection((HOST, self.port), 30) self.assertEqual(self.cli.gettimeout(), 30) testTimeoutNone = _justAccept @@ -883,7 +892,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - self.cli = socket.create_connection((HOST, PORT), timeout=None) + self.cli = socket.create_connection((HOST, self.port), timeout=None) finally: socket.setdefaulttimeout(previous) self.assertEqual(self.cli.gettimeout(), 30) @@ -910,12 +919,12 @@ testOutsideTimeout = testInsideTimeout def _testInsideTimeout(self): - self.cli = sock = socket.create_connection((HOST, PORT)) + self.cli = sock = socket.create_connection((HOST, self.port)) data = sock.recv(5) self.assertEqual(data, "done!") def _testOutsideTimeout(self): - self.cli = sock = socket.create_connection((HOST, PORT), timeout=1) + self.cli = sock = socket.create_connection((HOST, self.port), timeout=1) self.failUnlessRaises(socket.timeout, lambda: sock.recv(5)) Modified: python/trunk/Lib/test/test_socket_ssl.py ============================================================================== --- python/trunk/Lib/test/test_socket_ssl.py (original) +++ python/trunk/Lib/test/test_socket_ssl.py Wed Apr 9 01:47:30 2008 @@ -20,6 +20,7 @@ # Optionally test SSL support, if we have it in the tested platform skip_expected = not hasattr(socket, "ssl") +HOST = test_support.HOST class ConnectedTests(unittest.TestCase): @@ -86,19 +87,16 @@ class BasicTests(unittest.TestCase): def testRudeShutdown(self): - # Some random port to connect to. - PORT = [9934] - listener_ready = threading.Event() listener_gone = threading.Event() + sock = socket.socket() + port = test_support.bind_port(sock) - # `listener` runs in a thread. It opens a socket listening on - # PORT, and sits in an accept() until the main thread connects. - # Then it rudely closes the socket, and sets Event `listener_gone` - # to let the main thread know the socket is gone. - def listener(): - s = socket.socket() - PORT[0] = test_support.bind_port(s, '', PORT[0]) + # `listener` runs in a thread. It opens a socket and sits in accept() + # until the main thread connects. Then it rudely closes the socket, + # and sets Event `listener_gone` to let the main thread know the socket + # is gone. + def listener(s): s.listen(5) listener_ready.set() s.accept() @@ -108,7 +106,7 @@ def connector(): listener_ready.wait() s = socket.socket() - s.connect(('localhost', PORT[0])) + s.connect((HOST, port)) listener_gone.wait() try: ssl_sock = socket.ssl(s) @@ -118,7 +116,7 @@ raise test_support.TestFailed( 'connecting to closed SSL socket should have failed') - t = threading.Thread(target=listener) + t = threading.Thread(target=listener, args=(sock,)) t.start() connector() t.join() @@ -169,7 +167,7 @@ def testBasic(self): s = socket.socket() - s.connect(("localhost", 4433)) + s.connect((HOST, OpenSSLServer.PORT)) ss = socket.ssl(s) ss.write("Foo\n") i = ss.read(4) @@ -183,7 +181,7 @@ info = "/C=PT/ST=Queensland/L=Lisboa/O=Neuronio, Lda./OU=Desenvolvimento/CN=brutus.neuronio.pt/emailAddress=sampo at iki.fi" s = socket.socket() - s.connect(("localhost", 4433)) + s.connect((HOST, OpenSSLServer.PORT)) ss = socket.ssl(s) cert = ss.server() self.assertEqual(cert, info) @@ -193,6 +191,7 @@ class OpenSSLServer(threading.Thread): + PORT = None def __init__(self): self.s = None self.keepServing = True @@ -211,7 +210,11 @@ raise ValueError("No key file found! (tried %r)" % key_file) try: - cmd = "openssl s_server -cert %s -key %s -quiet" % (cert_file, key_file) + # XXX TODO: on Windows, this should make more effort to use the + # openssl.exe that would have been built by the pcbuild.sln. + self.PORT = test_support.find_unused_port() + args = (self.PORT, cert_file, key_file) + cmd = "openssl s_server -accept %d -cert %s -key %s -quiet" % args self.s = subprocess.Popen(cmd.split(), stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) @@ -222,7 +225,7 @@ # let's try if it is actually up try: s = socket.socket() - s.connect(("localhost", 4433)) + s.connect((HOST, self.PORT)) s.close() if self.s.stdout.readline() != "ERROR\n": raise ValueError Modified: python/trunk/Lib/test/test_socketserver.py ============================================================================== --- python/trunk/Lib/test/test_socketserver.py (original) +++ python/trunk/Lib/test/test_socketserver.py Wed Apr 9 01:47:30 2008 @@ -22,7 +22,7 @@ test.test_support.requires("network") TEST_STR = "hello world\n" -HOST = "localhost" +HOST = test.test_support.HOST HAVE_UNIX_SOCKETS = hasattr(socket, "AF_UNIX") HAVE_FORKING = hasattr(os, "fork") and os.name != "os2" Modified: python/trunk/Lib/test/test_ssl.py ============================================================================== --- python/trunk/Lib/test/test_ssl.py (original) +++ python/trunk/Lib/test/test_ssl.py Wed Apr 9 01:47:30 2008 @@ -23,11 +23,10 @@ except ImportError: skip_expected = True +HOST = test_support.HOST CERTFILE = None SVN_PYTHON_ORG_ROOT_CERT = None -TESTPORT = 10025 - def handle_error(prefix): exc_format = ' '.join(traceback.format_exception(*sys.exc_info())) if test_support.verbose: @@ -269,7 +268,7 @@ except: handle_error('') - def __init__(self, port, certificate, ssl_version=None, + def __init__(self, certificate, ssl_version=None, certreqs=None, cacerts=None, expect_bad_connects=False, chatty=True, connectionchatty=False, starttls_server=False): if ssl_version is None: @@ -285,12 +284,8 @@ self.connectionchatty = connectionchatty self.starttls_server = starttls_server self.sock = socket.socket() + self.port = test_support.bind_port(self.sock) self.flag = None - if hasattr(socket, 'SO_REUSEADDR'): - self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - if hasattr(socket, 'SO_REUSEPORT'): - self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) - self.sock.bind(('127.0.0.1', port)) self.active = False threading.Thread.__init__(self) self.setDaemon(False) @@ -434,12 +429,13 @@ format%args)) - def __init__(self, port, certfile): + def __init__(self, certfile): self.flag = None self.active = False self.RootedHTTPRequestHandler.root = os.path.split(CERTFILE)[0] + self.port = test_support.find_unused_port() self.server = self.HTTPSServer( - ('', port), self.RootedHTTPRequestHandler, certfile) + (HOST, self.port), self.RootedHTTPRequestHandler, certfile) threading.Thread.__init__(self) self.setDaemon(True) @@ -465,7 +461,7 @@ def badCertTest (certfile): - server = ThreadedEchoServer(TESTPORT, CERTFILE, + server = ThreadedEchoServer(CERTFILE, certreqs=ssl.CERT_REQUIRED, cacerts=CERTFILE, chatty=False) flag = threading.Event() @@ -478,7 +474,7 @@ s = ssl.wrap_socket(socket.socket(), certfile=certfile, ssl_version=ssl.PROTOCOL_TLSv1) - s.connect(('127.0.0.1', TESTPORT)) + s.connect((HOST, server.port)) except ssl.SSLError, x: if test_support.verbose: sys.stdout.write("\nSSLError is %s\n" % x[1]) @@ -493,7 +489,7 @@ client_certfile, client_protocol=None, indata="FOO\n", chatty=True, connectionchatty=False): - server = ThreadedEchoServer(TESTPORT, certfile, + server = ThreadedEchoServer(certfile, certreqs=certreqs, ssl_version=protocol, cacerts=cacertsfile, @@ -513,7 +509,7 @@ ca_certs=cacertsfile, cert_reqs=certreqs, ssl_version=client_protocol) - s.connect(('127.0.0.1', TESTPORT)) + s.connect((HOST, server.port)) except ssl.SSLError, x: raise test_support.TestFailed("Unexpected SSL error: " + str(x)) except Exception, x: @@ -582,6 +578,7 @@ listener_ready = threading.Event() listener_gone = threading.Event() + port = test_support.find_unused_port() # `listener` runs in a thread. It opens a socket listening on # PORT, and sits in an accept() until the main thread connects. @@ -589,11 +586,7 @@ # to let the main thread know the socket is gone. def listener(): s = socket.socket() - if hasattr(socket, 'SO_REUSEADDR'): - s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - if hasattr(socket, 'SO_REUSEPORT'): - s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1) - s.bind(('127.0.0.1', TESTPORT)) + s.bind((HOST, port)) s.listen(5) listener_ready.set() s.accept() @@ -603,7 +596,7 @@ def connector(): listener_ready.wait() s = socket.socket() - s.connect(('127.0.0.1', TESTPORT)) + s.connect((HOST, port)) listener_gone.wait() try: ssl_sock = ssl.wrap_socket(s) @@ -631,7 +624,7 @@ if test_support.verbose: sys.stdout.write("\n") s2 = socket.socket() - server = ThreadedEchoServer(TESTPORT, CERTFILE, + server = ThreadedEchoServer(CERTFILE, certreqs=ssl.CERT_NONE, ssl_version=ssl.PROTOCOL_SSLv23, cacerts=CERTFILE, @@ -648,7 +641,7 @@ ca_certs=CERTFILE, cert_reqs=ssl.CERT_REQUIRED, ssl_version=ssl.PROTOCOL_SSLv23) - s.connect(('127.0.0.1', TESTPORT)) + s.connect((HOST, server.port)) except ssl.SSLError, x: raise test_support.TestFailed( "Unexpected SSL error: " + str(x)) @@ -748,7 +741,7 @@ msgs = ("msg 1", "MSG 2", "STARTTLS", "MSG 3", "msg 4") - server = ThreadedEchoServer(TESTPORT, CERTFILE, + server = ThreadedEchoServer(CERTFILE, ssl_version=ssl.PROTOCOL_TLSv1, starttls_server=True, chatty=True, @@ -763,7 +756,7 @@ try: s = socket.socket() s.setblocking(1) - s.connect(('127.0.0.1', TESTPORT)) + s.connect((HOST, server.port)) except Exception, x: raise test_support.TestFailed("Unexpected exception: " + str(x)) else: @@ -805,7 +798,7 @@ def testAsyncore(self): - server = AsyncoreHTTPSServer(TESTPORT, CERTFILE) + server = AsyncoreHTTPSServer(CERTFILE) flag = threading.Event() server.start(flag) # wait for it to start @@ -817,8 +810,8 @@ d1 = open(CERTFILE, 'rb').read() d2 = '' # now fetch the same data from the HTTPS server - url = 'https://127.0.0.1:%d/%s' % ( - TESTPORT, os.path.split(CERTFILE)[1]) + url = 'https://%s:%d/%s' % ( + HOST, server.port, os.path.split(CERTFILE)[1]) f = urllib.urlopen(url) dlen = f.info().getheader("content-length") if dlen and (int(dlen) > 0): @@ -842,29 +835,11 @@ server.join() -def findtestsocket(start, end): - def testbind(i): - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - try: - s.bind(("127.0.0.1", i)) - except: - return 0 - else: - return 1 - finally: - s.close() - - for i in range(start, end): - if testbind(i) and testbind(i+1): - return i - return 0 - - def test_main(verbose=False): if skip_expected: raise test_support.TestSkipped("No SSL support") - global CERTFILE, TESTPORT, SVN_PYTHON_ORG_ROOT_CERT + global CERTFILE, SVN_PYTHON_ORG_ROOT_CERT CERTFILE = os.path.join(os.path.dirname(__file__) or os.curdir, "keycert.pem") SVN_PYTHON_ORG_ROOT_CERT = os.path.join( @@ -874,9 +849,6 @@ if (not os.path.exists(CERTFILE) or not os.path.exists(SVN_PYTHON_ORG_ROOT_CERT)): raise test_support.TestFailed("Can't read certificate files!") - TESTPORT = findtestsocket(10025, 12000) - if not TESTPORT: - raise test_support.TestFailed("Can't find open port to test servers on!") tests = [BasicTests] Modified: python/trunk/Lib/test/test_support.py ============================================================================== --- python/trunk/Lib/test/test_support.py (original) +++ python/trunk/Lib/test/test_support.py Wed Apr 9 01:47:30 2008 @@ -103,31 +103,97 @@ msg = "Use of the `%s' resource not enabled" % resource raise ResourceDenied(msg) -def bind_port(sock, host='', preferred_port=54321): - """Try to bind the sock to a port. If we are running multiple - tests and we don't try multiple ports, the test can fail. This - makes the test more robust.""" - - # Find some random ports that hopefully no one is listening on. - # Ideally each test would clean up after itself and not continue listening - # on any ports. However, this isn't the case. The last port (0) is - # a stop-gap that asks the O/S to assign a port. Whenever the warning - # message below is printed, the test that is listening on the port should - # be fixed to close the socket at the end of the test. - # Another reason why we can't use a port is another process (possibly - # another instance of the test suite) is using the same port. - for port in [preferred_port, 9907, 10243, 32999, 0]: - try: - sock.bind((host, port)) - if port == 0: - port = sock.getsockname()[1] - return port - except socket.error, (err, msg): - if err != errno.EADDRINUSE: - raise - print >>sys.__stderr__, \ - ' WARNING: failed to listen on port %d, trying another' % port - raise TestFailed('unable to find port to listen on') +HOST = 'localhost' + +def find_unused_port(family=socket.AF_INET, socktype=socket.SOCK_STREAM): + """Returns an unused port that should be suitable for binding. This is + achieved by creating a temporary socket with the same family and type as + the 'sock' parameter (default is AF_INET, SOCK_STREAM), and binding it to + the specified host address (defaults to 0.0.0.0) with the port set to 0, + eliciting an unused ephemeral port from the OS. The temporary socket is + then closed and deleted, and the ephemeral port is returned. + + Either this method or bind_port() should be used for any tests where a + server socket needs to be bound to a particular port for the duration of + the test. Which one to use depends on whether the calling code is creating + a python socket, or if an unused port needs to be provided in a constructor + or passed to an external program (i.e. the -accept argument to openssl's + s_server mode). Always prefer bind_port() over find_unused_port() where + possible. Hard coded ports should *NEVER* be used. As soon as a server + socket is bound to a hard coded port, the ability to run multiple instances + of the test simultaneously on the same host is compromised, which makes the + test a ticking time bomb in a buildbot environment. On Unix buildbots, this + may simply manifest as a failed test, which can be recovered from without + intervention in most cases, but on Windows, the entire python process can + completely and utterly wedge, requiring someone to log in to the buildbot + and manually kill the affected process. + + (This is easy to reproduce on Windows, unfortunately, and can be traced to + the SO_REUSEADDR socket option having different semantics on Windows versus + Unix/Linux. On Unix, you can't have two AF_INET SOCK_STREAM sockets bind, + listen and then accept connections on identical host/ports. An EADDRINUSE + socket.error will be raised at some point (depending on the platform and + the order bind and listen were called on each socket). + + However, on Windows, if SO_REUSEADDR is set on the sockets, no EADDRINUSE + will ever be raised when attempting to bind two identical host/ports. When + accept() is called on each socket, the second caller's process will steal + the port from the first caller, leaving them both in an awkwardly wedged + state where they'll no longer respond to any signals or graceful kills, and + must be forcibly killed via OpenProcess()/TerminateProcess(). + + The solution on Windows is to use the SO_EXCLUSIVEADDRUSE socket option + instead of SO_REUSEADDR, which effectively affords the same semantics as + SO_REUSEADDR on Unix. Given the propensity of Unix developers in the Open + Source world compared to Windows ones, this is a common mistake. A quick + look over OpenSSL's 0.9.8g source shows that they use SO_REUSEADDR when + openssl.exe is called with the 's_server' option, for example. See + http://bugs.python.org/issue2550 for more info. The following site also + has a very thorough description about the implications of both REUSEADDR + and EXCLUSIVEADDRUSE on Windows: + http://msdn2.microsoft.com/en-us/library/ms740621(VS.85).aspx) + + XXX: although this approach is a vast improvement on previous attempts to + elicit unused ports, it rests heavily on the assumption that the ephemeral + port returned to us by the OS won't immediately be dished back out to some + other process when we close and delete our temporary socket but before our + calling code has a chance to bind the returned port. We can deal with this + issue if/when we come across it.""" + tempsock = socket.socket(family, socktype) + port = bind_port(tempsock) + tempsock.close() + del tempsock + return port + +def bind_port(sock, host=HOST): + """Bind the socket to a free port and return the port number. Relies on + ephemeral ports in order to ensure we are using an unbound port. This is + important as many tests may be running simultaneously, especially in a + buildbot environment. This method raises an exception if the sock.family + is AF_INET and sock.type is SOCK_STREAM, *and* the socket has SO_REUSEADDR + or SO_REUSEPORT set on it. Tests should *never* set these socket options + for TCP/IP sockets. The only case for setting these options is testing + multicasting via multiple UDP sockets. + + Additionally, if the SO_EXCLUSIVEADDRUSE socket option is available (i.e. + on Windows), it will be set on the socket. This will prevent anyone else + from bind()'ing to our host/port for the duration of the test. + """ + if sock.family == socket.AF_INET and sock.type == socket.SOCK_STREAM: + if hasattr(socket, 'SO_REUSEADDR'): + if sock.getsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR) == 1: + raise TestFailed("tests should never set the SO_REUSEADDR " \ + "socket option on TCP/IP sockets!") + if hasattr(socket, 'SO_REUSEPORT'): + if sock.getsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT) == 1: + raise TestFailed("tests should never set the SO_REUSEPORT " \ + "socket option on TCP/IP sockets!") + if hasattr(socket, 'SO_EXCLUSIVEADDRUSE'): + sock.setsockopt(socket.SOL_SOCKET, socket.SO_EXCLUSIVEADDRUSE, 1) + + sock.bind((host, 0)) + port = sock.getsockname()[1] + return port FUZZ = 1e-6 Modified: python/trunk/Lib/test/test_telnetlib.py ============================================================================== --- python/trunk/Lib/test/test_telnetlib.py (original) +++ python/trunk/Lib/test/test_telnetlib.py Wed Apr 9 01:47:30 2008 @@ -6,14 +6,9 @@ from unittest import TestCase from test import test_support -PORT = 9091 +HOST = test_support.HOST -def server(evt): - serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - serv.settimeout(3) - serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - global PORT - PORT = test_support.bind_port(serv, "", PORT) +def server(evt, serv): serv.listen(5) evt.set() try: @@ -28,7 +23,10 @@ def setUp(self): self.evt = threading.Event() - threading.Thread(target=server, args=(self.evt,)).start() + self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.sock.settimeout(3) + self.port = test_support.bind_port(self.sock) + threading.Thread(target=server, args=(self.evt,self.sock)).start() self.evt.wait() self.evt.clear() time.sleep(.1) @@ -38,24 +36,24 @@ def testBasic(self): # connects - telnet = telnetlib.Telnet("localhost", PORT) + telnet = telnetlib.Telnet(HOST, self.port) telnet.sock.close() def testTimeoutDefault(self): # default - telnet = telnetlib.Telnet("localhost", PORT) + telnet = telnetlib.Telnet(HOST, self.port) self.assertTrue(telnet.sock.gettimeout() is None) telnet.sock.close() def testTimeoutValue(self): # a value - telnet = telnetlib.Telnet("localhost", PORT, timeout=30) + telnet = telnetlib.Telnet(HOST, self.port, timeout=30) self.assertEqual(telnet.sock.gettimeout(), 30) telnet.sock.close() def testTimeoutDifferentOrder(self): telnet = telnetlib.Telnet(timeout=30) - telnet.open("localhost", PORT) + telnet.open(HOST, self.port) self.assertEqual(telnet.sock.gettimeout(), 30) telnet.sock.close() @@ -64,7 +62,7 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - telnet = telnetlib.Telnet("localhost", PORT, timeout=None) + telnet = telnetlib.Telnet(HOST, self.port, timeout=None) finally: socket.setdefaulttimeout(previous) self.assertEqual(telnet.sock.gettimeout(), 30) Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Apr 9 01:47:30 2008 @@ -41,6 +41,43 @@ Tests ----- +- Issue #2550: The approach used by client/server code for obtaining ports + to listen on in network-oriented tests has been refined in an effort to + facilitate running multiple instances of the entire regression test suite + in parallel without issue. test_support.bind_port() has been fixed such + that it will always return a unique port -- which wasn't always the case + with the previous implementation, especially if socket options had been + set that affected address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT). The + new implementation of bind_port() will actually raise an exception if it + is passed an AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or + SO_REUSEPORT socket option set. Furthermore, if available, bind_port() + will set the SO_EXCLUSIVEADDRUSE option on the socket it's been passed. + This currently only applies to Windows. This option prevents any other + sockets from binding to the host/port we've bound to, thus removing the + possibility of the 'non-deterministic' behaviour, as Microsoft puts it, + that occurs when a second SOCK_STREAM socket binds and accepts to a + host/port that's already been bound by another socket. The optional + preferred port parameter to bind_port() has been removed. Under no + circumstances should tests be hard coding ports! + + test_support.find_unused_port() has also been introduced, which will pass + a temporary socket object to bind_port() in order to obtain an unused port. + The temporary socket object is then closed and deleted, and the port is + returned. This method should only be used for obtaining an unused port + in order to pass to an external program (i.e. the -accept [port] argument + to openssl's s_server mode) or as a parameter to a server-oriented class + that doesn't give you direct access to the underlying socket used. + + Finally, test_support.HOST has been introduced, which should be used for + the host argument of any relevant socket calls (i.e. bind and connect). + + The following tests were updated to following the new conventions: + test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib, + test_poplib, test_ftplib, test_telnetlib, test_socketserver, + test_asynchat and test_socket_ssl. + + It is now possible for multiple instances of the regression test suite to + run in parallel without issue. Build ----- From buildbot at python.org Wed Apr 9 02:13:08 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 00:13:08 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo trunk Message-ID: <20080409001308.5E5FF1E401A@bag.python.org> The Buildbot has detected a new failure of x86 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%20trunk/builds/3397 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/test/test_socket_ssl.py", line 170, in testBasic s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required ====================================================================== ERROR: testMethods (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/test/test_socket_ssl.py", line 184, in testMethods s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 02:15:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 00:15:14 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080409001514.5D0241E401A@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/588 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/test/test_socket_ssl.py", line 170, in testBasic s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required ====================================================================== ERROR: testMethods (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/test/test_socket_ssl.py", line 184, in testMethods s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required make: *** [buildbottest] Error 1 sincerely, -The Buildbot From tnelson at onresolve.com Wed Apr 9 02:17:28 2008 From: tnelson at onresolve.com (Trent Nelson) Date: Tue, 8 Apr 2008 17:17:28 -0700 Subject: [Python-checkins] r62234 - in python/trunk: Lib/test/test_asynchat.py Lib/test/test_asyncore.py Lib/test/test_ftplib.py Lib/test/test_httplib.py Lib/test/test_poplib.py Lib/test/test_smtplib.py Lib/test/test_socket.py Lib/test/test_socket_ssl.py Lib/t In-Reply-To: <20080408234731.370121E4016@bag.python.org> References: <20080408234731.370121E4016@bag.python.org> Message-ID: <87D3F9C72FBF214DB39FA4E3FE618CDC6E22BEB584@EXMBX04.exchhosting.com> > Modified: python/trunk/Lib/test/test_asyncore.py > ============================================================== > --- python/trunk/Lib/test/test_asyncore.py (original) > +++ python/trunk/Lib/test/test_asyncore.py Wed Apr 9 > 01:47:30 2008 > @@ -1,421 +1,412 @@ Eek! For the record, that was reindent.py's doing, not mine. From python-checkins at python.org Wed Apr 9 02:25:17 2008 From: python-checkins at python.org (gregory.p.smith) Date: Wed, 9 Apr 2008 02:25:17 +0200 (CEST) Subject: [Python-checkins] r62235 - in python/trunk: Lib/test/test_zlib.py Modules/zlibmodule.c Message-ID: <20080409002517.B7F581E401A@bag.python.org> Author: gregory.p.smith Date: Wed Apr 9 02:25:17 2008 New Revision: 62235 Modified: python/trunk/Lib/test/test_zlib.py python/trunk/Modules/zlibmodule.c Log: Fix zlib crash from zlib.decompressobj().flush(val) when val was not positive. It tried to allocate negative or zero memory. That fails. Modified: python/trunk/Lib/test/test_zlib.py ============================================================================== --- python/trunk/Lib/test/test_zlib.py (original) +++ python/trunk/Lib/test/test_zlib.py Wed Apr 9 02:25:17 2008 @@ -83,6 +83,11 @@ # verify failure on building decompress object with bad params self.assertRaises(ValueError, zlib.decompressobj, 0) + def test_decompressobj_badflush(self): + # verify failure on calling decompressobj.flush with bad params + self.assertRaises(ValueError, zlib.decompressobj().flush, 0) + self.assertRaises(ValueError, zlib.decompressobj().flush, -1) + class CompressTestCase(unittest.TestCase): Modified: python/trunk/Modules/zlibmodule.c ============================================================================== --- python/trunk/Modules/zlibmodule.c (original) +++ python/trunk/Modules/zlibmodule.c Wed Apr 9 02:25:17 2008 @@ -774,6 +774,10 @@ if (!PyArg_ParseTuple(args, "|i:flush", &length)) return NULL; + if (length <= 0) { + PyErr_SetString(PyExc_ValueError, "length must be greater than zero"); + return NULL; + } if (!(retval = PyString_FromStringAndSize(NULL, length))) return NULL; From python-checkins at python.org Wed Apr 9 02:26:44 2008 From: python-checkins at python.org (gregory.p.smith) Date: Wed, 9 Apr 2008 02:26:44 +0200 (CEST) Subject: [Python-checkins] r62236 - in python/branches/release25-maint: Lib/test/test_zlib.py Modules/zlibmodule.c Message-ID: <20080409002644.DF42D1E401A@bag.python.org> Author: gregory.p.smith Date: Wed Apr 9 02:26:44 2008 New Revision: 62236 Modified: python/branches/release25-maint/Lib/test/test_zlib.py python/branches/release25-maint/Modules/zlibmodule.c Log: Merge r62235 from trunk. Fix zlib crash from zlib.decompressobj().flush(val) when val was not positive. It tried to allocate negative or zero memory. That fails. Modified: python/branches/release25-maint/Lib/test/test_zlib.py ============================================================================== --- python/branches/release25-maint/Lib/test/test_zlib.py (original) +++ python/branches/release25-maint/Lib/test/test_zlib.py Wed Apr 9 02:26:44 2008 @@ -71,6 +71,11 @@ # verify failure on building decompress object with bad params self.assertRaises(ValueError, zlib.decompressobj, 0) + def test_decompressobj_badflush(self): + # verify failure on calling decompressobj.flush with bad params + self.assertRaises(ValueError, zlib.decompressobj().flush, 0) + self.assertRaises(ValueError, zlib.decompressobj().flush, -1) + class CompressTestCase(unittest.TestCase): Modified: python/branches/release25-maint/Modules/zlibmodule.c ============================================================================== --- python/branches/release25-maint/Modules/zlibmodule.c (original) +++ python/branches/release25-maint/Modules/zlibmodule.c Wed Apr 9 02:26:44 2008 @@ -774,6 +774,10 @@ if (!PyArg_ParseTuple(args, "|i:flush", &length)) return NULL; + if (length <= 0) { + PyErr_SetString(PyExc_ValueError, "length must be greater than zero"); + return NULL; + } if (!(retval = PyString_FromStringAndSize(NULL, length))) return NULL; From buildbot at python.org Wed Apr 9 02:30:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 00:30:04 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080409003005.1090A1E401A@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%20trunk/builds/1180 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/test/test_socket_ssl.py", line 170, in testBasic s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required ====================================================================== ERROR: testMethods (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/test/test_socket_ssl.py", line 184, in testMethods s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 476, in __bootstrap self.__bootstrap_inner() [629758 refs] make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 02:33:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 00:33:51 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 2.5 Message-ID: <20080409003351.EBC5E1E401E@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%202.5/builds/3 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: georg.brandl,gregory.p.smith BUILD FAILED: failed svn sincerely, -The Buildbot From python-checkins at python.org Wed Apr 9 02:34:53 2008 From: python-checkins at python.org (trent.nelson) Date: Wed, 9 Apr 2008 02:34:53 +0200 (CEST) Subject: [Python-checkins] r62237 - python/trunk/Lib/test/test_httplib.py python/trunk/Lib/test/test_socket_ssl.py Message-ID: <20080409003453.65A951E401A@bag.python.org> Author: trent.nelson Date: Wed Apr 9 02:34:53 2008 New Revision: 62237 Modified: python/trunk/Lib/test/test_httplib.py python/trunk/Lib/test/test_socket_ssl.py Log: Fix typo with regards to self.PORT shadowing class variables with the same name. Modified: python/trunk/Lib/test/test_httplib.py ============================================================================== --- python/trunk/Lib/test/test_httplib.py (original) +++ python/trunk/Lib/test/test_httplib.py Wed Apr 9 02:34:53 2008 @@ -203,7 +203,7 @@ def setUp(self): self.serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - self.PORT = test_support.bind_port(self.serv) + TimeoutTest.PORT = test_support.bind_port(self.serv) self.serv.listen(5) def tearDown(self): @@ -215,13 +215,13 @@ HTTPConnection and into the socket. ''' # default - httpConn = httplib.HTTPConnection(HOST, self.PORT) + httpConn = httplib.HTTPConnection(HOST, TimeoutTest.PORT) httpConn.connect() self.assertTrue(httpConn.sock.gettimeout() is None) httpConn.close() # a value - httpConn = httplib.HTTPConnection(HOST, self.PORT, timeout=30) + httpConn = httplib.HTTPConnection(HOST, TimeoutTest.PORT, timeout=30) httpConn.connect() self.assertEqual(httpConn.sock.gettimeout(), 30) httpConn.close() @@ -230,7 +230,8 @@ previous = socket.getdefaulttimeout() socket.setdefaulttimeout(30) try: - httpConn = httplib.HTTPConnection(HOST, self.PORT, timeout=None) + httpConn = httplib.HTTPConnection(HOST, TimeoutTest.PORT, + timeout=None) httpConn.connect() finally: socket.setdefaulttimeout(previous) Modified: python/trunk/Lib/test/test_socket_ssl.py ============================================================================== --- python/trunk/Lib/test/test_socket_ssl.py (original) +++ python/trunk/Lib/test/test_socket_ssl.py Wed Apr 9 02:34:53 2008 @@ -212,8 +212,8 @@ try: # XXX TODO: on Windows, this should make more effort to use the # openssl.exe that would have been built by the pcbuild.sln. - self.PORT = test_support.find_unused_port() - args = (self.PORT, cert_file, key_file) + OpenSSLServer.PORT = test_support.find_unused_port() + args = (OpenSSLServer.PORT, cert_file, key_file) cmd = "openssl s_server -accept %d -cert %s -key %s -quiet" % args self.s = subprocess.Popen(cmd.split(), stdin=subprocess.PIPE, stdout=subprocess.PIPE, @@ -225,7 +225,7 @@ # let's try if it is actually up try: s = socket.socket() - s.connect((HOST, self.PORT)) + s.connect((HOST, OpenSSLServer.PORT)) s.close() if self.s.stdout.readline() != "ERROR\n": raise ValueError From buildbot at python.org Wed Apr 9 02:44:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 00:44:17 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080409004418.04A421E401A@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3177 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/test/test_socket_ssl.py", line 170, in testBasic s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required ====================================================================== ERROR: testMethods (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/trunk.psf-g4/build/Lib/test/test_socket_ssl.py", line 184, in testMethods s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Wed Apr 9 03:08:32 2008 From: python-checkins at python.org (andrew.kuchling) Date: Wed, 9 Apr 2008 03:08:32 +0200 (CEST) Subject: [Python-checkins] r62238 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080409010832.892BC1E401A@bag.python.org> Author: andrew.kuchling Date: Wed Apr 9 03:08:32 2008 New Revision: 62238 Modified: python/trunk/Doc/whatsnew/2.6.rst Log: Add items Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Wed Apr 9 03:08:32 2008 @@ -1901,9 +1901,12 @@ * The base classes in the :mod:`SocketServer` module now support calling a :meth:`handle_timeout` method after a span of inactivity specified by the server's :attr:`timeout` attribute. (Contributed - by Michael Pomraning.) + by Michael Pomraning.) The :meth:`serve_forever` method + now takes an optional poll interval measured in seconds, + controlling how often the server will check for a shutdown request. + (Contributed by Pedro Werneck and Jeffrey Yasskin.) - .. Patch #742598 + .. Patch #742598, #1193577 * The :mod:`struct` module now supports the C99 :ctype:`_Bool` type, using the format character ``'?'``. @@ -2242,6 +2245,13 @@ ``numfree``, and a macro :cmacro:`Py_MAXFREELIST` is always defined. +* A new Makefile target, "make check", prepares the Python source tree + for making a patch: it fixes trailing whitespace in all modified + ``.py`` files, checks whether the documentation has been changed, + and reports whether the :file:`Misc/ACKS` and :file:`Misc/NEWS` files + have been updated. + (Contributed by Brett Cannon.) + .. ====================================================================== @@ -2374,5 +2384,5 @@ ================ The author would like to thank the following people for offering suggestions, -corrections and assistance with various drafts of this article: . +corrections and assistance with various drafts of this article: Jim Jewett. From buildbot at python.org Wed Apr 9 04:30:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 02:30:01 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian trunk Message-ID: <20080409023001.8AF2B1E401A@bag.python.org> The Buildbot has detected a new failure of sparc Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%20trunk/builds/316 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,gregory.p.smith,trent.nelson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl ====================================================================== ERROR: testBasic (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_socket_ssl.py", line 170, in testBasic s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required ====================================================================== ERROR: testMethods (test.test_socket_ssl.OpenSSLTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/trunk.klose-debian-sparc/build/Lib/test/test_socket_ssl.py", line 184, in testMethods s.connect((HOST, OpenSSLServer.PORT)) File "", line 1, in connect TypeError: an integer is required make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 04:46:19 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 02:46:19 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 2.5 Message-ID: <20080409024619.A05FA1E401B@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%202.5/builds/480 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: georg.brandl,gregory.p.smith BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket sincerely, -The Buildbot From nnorwitz at gmail.com Wed Apr 9 05:02:12 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 8 Apr 2008 20:02:12 -0700 Subject: [Python-checkins] r62236 - in python/branches/release25-maint: Lib/test/test_zlib.py Modules/zlibmodule.c In-Reply-To: <20080409002644.DF42D1E401A@bag.python.org> References: <20080409002644.DF42D1E401A@bag.python.org> Message-ID: Thanks for fixing this problem. Can you add a Misc/NEWS entry for this? On Tue, Apr 8, 2008 at 5:26 PM, gregory.p.smith wrote: > Author: gregory.p.smith > Date: Wed Apr 9 02:26:44 2008 > New Revision: 62236 > > Modified: > python/branches/release25-maint/Lib/test/test_zlib.py > python/branches/release25-maint/Modules/zlibmodule.c > Log: > Merge r62235 from trunk. > > Fix zlib crash from zlib.decompressobj().flush(val) when val was not positive. > It tried to allocate negative or zero memory. That fails. > > > Modified: python/branches/release25-maint/Lib/test/test_zlib.py > ============================================================================== > --- python/branches/release25-maint/Lib/test/test_zlib.py (original) > +++ python/branches/release25-maint/Lib/test/test_zlib.py Wed Apr 9 02:26:44 2008 > @@ -71,6 +71,11 @@ > # verify failure on building decompress object with bad params > self.assertRaises(ValueError, zlib.decompressobj, 0) > > + def test_decompressobj_badflush(self): > + # verify failure on calling decompressobj.flush with bad params > + self.assertRaises(ValueError, zlib.decompressobj().flush, 0) > + self.assertRaises(ValueError, zlib.decompressobj().flush, -1) > + > > > class CompressTestCase(unittest.TestCase): > > Modified: python/branches/release25-maint/Modules/zlibmodule.c > ============================================================================== > --- python/branches/release25-maint/Modules/zlibmodule.c (original) > +++ python/branches/release25-maint/Modules/zlibmodule.c Wed Apr 9 02:26:44 2008 > @@ -774,6 +774,10 @@ > > if (!PyArg_ParseTuple(args, "|i:flush", &length)) > return NULL; > + if (length <= 0) { > + PyErr_SetString(PyExc_ValueError, "length must be greater than zero"); > + return NULL; > + } > if (!(retval = PyString_FromStringAndSize(NULL, length))) > return NULL; > > _______________________________________________ > Python-checkins mailing list > Python-checkins at python.org > http://mail.python.org/mailman/listinfo/python-checkins > From buildbot at python.org Wed Apr 9 05:50:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 03:50:51 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 2.5 Message-ID: <20080409035051.96C961E401B@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%202.5/builds/73 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: georg.brandl,gregory.p.smith BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_urllib2net make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Wed Apr 9 07:07:59 2008 From: python-checkins at python.org (jerry.seutter) Date: Wed, 9 Apr 2008 07:07:59 +0200 (CEST) Subject: [Python-checkins] r62239 - python/trunk/Lib/test/test_sundry.py Message-ID: <20080409050759.512691E401A@bag.python.org> Author: jerry.seutter Date: Wed Apr 9 07:07:58 2008 New Revision: 62239 Modified: python/trunk/Lib/test/test_sundry.py Log: Changed test so it no longer runs as a side effect of importing. Modified: python/trunk/Lib/test/test_sundry.py ============================================================================== --- python/trunk/Lib/test/test_sundry.py (original) +++ python/trunk/Lib/test/test_sundry.py Wed Apr 9 07:07:58 2008 @@ -1,121 +1,126 @@ """Do a minimal test of all the modules that aren't otherwise tested.""" -from test.test_support import catch_warning +from test import test_support import sys +import unittest import warnings -with catch_warning(): - warnings.filterwarnings('ignore', r".*posixfile", - DeprecationWarning) - warnings.filterwarnings('ignore', r".*mimify", DeprecationWarning) - - from test.test_support import verbose - - import BaseHTTPServer - import DocXMLRPCServer - import CGIHTTPServer - import SimpleHTTPServer - import SimpleXMLRPCServer - import aifc - import audiodev - import bdb - import cgitb - import cmd - import code - import compileall - - import distutils.archive_util - import distutils.bcppcompiler - import distutils.ccompiler - import distutils.cmd - import distutils.core - import distutils.cygwinccompiler - import distutils.dep_util - import distutils.dir_util - import distutils.emxccompiler - import distutils.errors - import distutils.extension - import distutils.file_util - import distutils.filelist - import distutils.log - if sys.platform.startswith('win'): - import distutils.msvccompiler - import distutils.mwerkscompiler - import distutils.sysconfig - import distutils.text_file - import distutils.unixccompiler - import distutils.util - import distutils.version - - import distutils.command.bdist_dumb - if sys.platform.startswith('win'): - import distutils.command.bdist_msi - import distutils.command.bdist - import distutils.command.bdist_rpm - import distutils.command.bdist_wininst - import distutils.command.build_clib - import distutils.command.build_ext - import distutils.command.build - import distutils.command.build_py - import distutils.command.build_scripts - import distutils.command.clean - import distutils.command.config - import distutils.command.install_data - import distutils.command.install_egg_info - import distutils.command.install_headers - import distutils.command.install_lib - import distutils.command.install - import distutils.command.install_scripts - import distutils.command.register - import distutils.command.sdist - import distutils.command.upload - - import encodings - import formatter - import ftplib - import getpass - import htmlentitydefs - import ihooks - import imghdr - import imputil - import keyword - import linecache - import macurl2path - import mailcap - import mimify - import mutex - import nntplib - import nturl2path - import opcode - import os2emxpath - import pdb - import posixfile - import pstats - import py_compile - import pydoc - import rexec - import rlcompleter - import sched - import smtplib - import sndhdr - import statvfs - import stringold - import sunau - import sunaudio - import symbol - import tabnanny - import telnetlib - import timeit - import toaiff - import token - try: - import tty # not available on Windows - except ImportError: - if verbose: - print "skipping tty" - - # Can't test the "user" module -- if the user has a ~/.pythonrc.py, it - # can screw up all sorts of things (esp. if it prints!). - #import user - import webbrowser - import xml + +class TestUntestedModules(unittest.TestCase): + def test_at_least_import_untested_modules(self): + with test_support.catch_warning(): + import BaseHTTPServer + import DocXMLRPCServer + import CGIHTTPServer + import SimpleHTTPServer + import SimpleXMLRPCServer + import aifc + import audiodev + import bdb + import cgitb + import cmd + import code + import compileall + + import distutils.archive_util + import distutils.bcppcompiler + import distutils.ccompiler + import distutils.cmd + import distutils.core + import distutils.cygwinccompiler + import distutils.dep_util + import distutils.dir_util + import distutils.emxccompiler + import distutils.errors + import distutils.extension + import distutils.file_util + import distutils.filelist + import distutils.log + if sys.platform.startswith('win'): + import distutils.msvccompiler + import distutils.mwerkscompiler + import distutils.sysconfig + import distutils.text_file + import distutils.unixccompiler + import distutils.util + import distutils.version + + import distutils.command.bdist_dumb + if sys.platform.startswith('win'): + import distutils.command.bdist_msi + import distutils.command.bdist + import distutils.command.bdist_rpm + import distutils.command.bdist_wininst + import distutils.command.build_clib + import distutils.command.build_ext + import distutils.command.build + import distutils.command.build_py + import distutils.command.build_scripts + import distutils.command.clean + import distutils.command.config + import distutils.command.install_data + import distutils.command.install_egg_info + import distutils.command.install_headers + import distutils.command.install_lib + import distutils.command.install + import distutils.command.install_scripts + import distutils.command.register + import distutils.command.sdist + import distutils.command.upload + + import encodings + import formatter + import ftplib + import getpass + import htmlentitydefs + import ihooks + import imghdr + import imputil + import keyword + import linecache + import macurl2path + import mailcap + import mimify + import mutex + import nntplib + import nturl2path + import opcode + import os2emxpath + import pdb + import posixfile + import pstats + import py_compile + import pydoc + import rexec + import rlcompleter + import sched + import smtplib + import sndhdr + import statvfs + import stringold + import sunau + import sunaudio + import symbol + import tabnanny + import telnetlib + import timeit + import toaiff + import token + try: + import tty # not available on Windows + except ImportError: + if test_support.verbose: + print "skipping tty" + + # Can't test the "user" module -- if the user has a ~/.pythonrc.py, it + # can screw up all sorts of things (esp. if it prints!). + #import user + import webbrowser + import xml + + +def test_main(): + test_support.run_unittest(TestUntestedModules) + +if __name__ == "__main__": + test_main() From buildbot at python.org Wed Apr 9 08:20:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 06:20:54 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080409062054.CB9211E4003@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2842 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,jerry.seutter BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_smtplib test_socket ====================================================================== FAIL: testInterruptedTimeout (test.test_socket.TCPTimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_socket.py", line 1007, in testInterruptedTimeout self.fail("got Alarm in wrong place") AssertionError: got Alarm in wrong place sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 09:59:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 07:59:46 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080409075946.71AEE1E4003@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/167 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_getargs2 ====================================================================== ERROR: test_n (test.test_getargs2.Signed_TestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_getargs2.py", line 190, in test_n self.failUnlessEqual(99, getargs_n(Long())) TypeError: 'Long' object cannot be interpreted as an integer sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 10:39:05 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 08:39:05 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian 3.0 Message-ID: <20080409083906.2609D1E4003@bag.python.org> The Buildbot has detected a new failure of alpha Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%203.0/builds/71 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 11:01:13 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 09:01:13 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080409090113.D4D981E4003@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/185 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 11:02:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 09:02:52 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080409090252.A456F1E4003@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%203.0/builds/302 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 11:11:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 09:11:16 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080409091116.E014A1E4005@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/771 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 11:33:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 09:33:33 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080409093333.407901E4003@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/717 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 11:36:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 09:36:06 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080409093606.7F5121E4003@bag.python.org> The Buildbot has detected a new failure of S-390 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%203.0/builds/214 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-s390/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From lists at cheimes.de Wed Apr 9 12:57:17 2008 From: lists at cheimes.de (Christian Heimes) Date: Wed, 09 Apr 2008 12:57:17 +0200 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 In-Reply-To: <20080409091116.E014A1E4005@bag.python.org> References: <20080409091116.E014A1E4005@bag.python.org> Message-ID: <47FCA10D.2020303@cheimes.de> buildbot at python.org schrieb: > The Buildbot has detected a new failure of ppc Debian unstable 3.0. > Full details are available at: > http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/771 > > Buildbot URL: http://www.python.org/dev/buildbot/all/ > > Buildslave for this Build: klose-debian-ppc > > Build Reason: > Build Source Stamp: [branch branches/py3k] HEAD > Blamelist: christian.heimes > > BUILD FAILED: failed test > > Excerpt from the test logfile: > 1 test failed: > test_ssl > > ====================================================================== > ERROR: testEcho (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 743, in testEcho > chatty=True, connectionchatty=True) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest > s.write(indata) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write > return self._sslobj.write(data) > TypeError: write() argument 1 must be bytes or read-only buffer, not str > > ====================================================================== > ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 > tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo > chatty=False, connectionchatty=False) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest > s.write(indata) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write > return self._sslobj.write(data) > TypeError: write() argument 1 must be bytes or read-only buffer, not str > > ====================================================================== > ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 > tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo > chatty=False, connectionchatty=False) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest > s.write(indata) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write > return self._sslobj.write(data) > TypeError: write() argument 1 must be bytes or read-only buffer, not str > > ====================================================================== > ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 > tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo > chatty=False, connectionchatty=False) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest > s.write(indata) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write > return self._sslobj.write(data) > TypeError: write() argument 1 must be bytes or read-only buffer, not str > > ====================================================================== > ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 > tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo > chatty=False, connectionchatty=False) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest > s.write(indata) > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/ssl.py", line 178, in write > return self._sslobj.write(data) > TypeError: write() argument 1 must be bytes or read-only buffer, not str > > ====================================================================== > ERROR: testSocketServer (test.test_ssl.ThreadedTests) > ---------------------------------------------------------------------- > > Traceback (most recent call last): > File "/home/pybot/buildarea/3.0.klose-debian-ppc/build/Lib/test/test_ssl.py", line 931, in testSocketServer > server = AsyncoreHTTPSServer(CERTFILE) > NameError: global name 'AsyncoreHTTPSServer' is not defined I can't run the ssl tests with -unetwork on my machine. Could somebody please fix the test for me? Christian From buildbot at python.org Wed Apr 9 13:04:02 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 11:04:02 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080409110403.401D31E4003@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/690 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 13:04:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 11:04:28 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080409110428.D85FD1E4003@bag.python.org> The Buildbot has detected a new failure of sparc Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Ubuntu%203.0/builds/264 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-ubuntu-sparc/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 13:29:21 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 11:29:21 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080409112921.45A7A1E4003@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/777 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 21 tests failed: test_array test_bool test_cookielib test_deque test_distutils test_filecmp test_fileinput test_gzip test_io test_iter test_mailbox test_marshal test_mmap test_multibytecodec test_old_mailbox test_posixpath test_set test_ssl test_urllib test_zipfile test_zipimport ====================================================================== ERROR: test_tofromfile (test.test_array.UnsignedIntTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_array.py", line 165, in test_tofromfile f = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 292, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_array_writes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 262, in test_array_writes f = io.open(test_support.TESTFN, "wb", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_buffered_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 166, in test_buffered_file_io f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_close_flushes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 252, in test_close_flushes f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_destructor (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 246, in test_destructor f = MyFileIO(test_support.TESTFN, "w") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_large_file_ops (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 212, in test_large_file_ops f = io.open(test_support.TESTFN, "w+b", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_raw_file_io (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 152, in test_raw_file_io f = io.open(test_support.TESTFN, "wb", buffering=0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 180, in test_readline f = io.open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_with_open (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 222, in test_with_open with open(test_support.TESTFN, "wb", bufsize) as f: File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testBasicIO (test.test_io.TextIOWrapperTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 819, in testBasicIO f = io.open(test_support.TESTFN, "w+", encoding=enc) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 62, in tearDown self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 45, in _delete_recursively os.rmdir(target) WindowsError: [Error 145] The directory is not empty: '@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\8' ====================================================================== ERROR: test_basic (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 24, in test_basic f = open(TESTFN, 'bw+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_double_close (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 295, in test_double_close f = open(TESTFN, 'wb+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_entire_file (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 309, in test_entire_file f = open(TESTFN, "wb+") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_find_end (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 259, in test_find_end f = open(TESTFN, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_move (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 323, in test_move f = open(TESTFN, 'wb+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_offset (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 389, in test_offset f = open (TESTFN, 'w+b') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_rfind (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 277, in test_rfind f = open(TESTFN, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tougher_find (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 241, in test_tougher_find f = open(TESTFN, 'wb+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bug1728403 (test.test_multibytecodec.Test_StreamReader) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_multibytecodec.py", line 143, in test_bug1728403 f = open(TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: Test an empty maildir mailbox ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 30, in setUp os.mkdir(self._dir) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_nonempty_maildir_both (test.test_old_mailbox.MaildirTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 30, in setUp os.mkdir(self._dir) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_nonempty_maildir_cur (test.test_old_mailbox.MaildirTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 30, in setUp os.mkdir(self._dir) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_nonempty_maildir_new (test.test_old_mailbox.MaildirTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 30, in setUp os.mkdir(self._dir) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_unix_mbox (test.test_old_mailbox.MaildirTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 30, in setUp os.mkdir(self._dir) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_from_regex (test.test_old_mailbox.MboxTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 123, in test_from_regex f = open(self._path, 'w') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_from_regex (test.test_old_mailbox.MboxTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_old_mailbox.py", line 119, in tearDown os.unlink(self._path) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_exists (test.test_posixpath.PosixPathTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_posixpath.py", line 196, in test_exists f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_cyclical_print (test.test_set.TestSet) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 297, in test_cyclical_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 644, in serverParamsTest s.write(indata) File "C:\buildbot\work\3.0.heller-windows\build\lib\ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined ====================================================================== ERROR: test_fileno (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_getcode (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_geturl (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_info (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_interface (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_iter (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_urllib.urlopen_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 30, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_basic (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_copy (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_0_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_5_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_reporthook_8193_bytes (test.test_urllib.urlretrieve_FileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib.py", line 169, in setUp FILE = open(test_support.TESTFN, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 212, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 151, in open closefd) IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From buildbot at python.org Wed Apr 9 13:41:20 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 09 Apr 2008 11:41:20 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080409114120.31FB71E4003@bag.python.org> The Buildbot has detected a new failure of sparc Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20Debian%203.0/builds/189 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-sparc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl ====================================================================== ERROR: testEcho (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 743, in testEcho chatty=True, connectionchatty=True) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL2 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 813, in testProtocolSSL2 tryProtocolCombo(ssl.PROTOCOL_SSLv2, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL23 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 824, in testProtocolSSL23 tryProtocolCombo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv2, True) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolSSL3 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 846, in testProtocolSSL3 tryProtocolCombo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_SSLv3, True) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testProtocolTLS1 (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 856, in testProtocolTLS1 tryProtocolCombo(ssl.PROTOCOL_TLSv1, ssl.PROTOCOL_TLSv1, True) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 686, in tryProtocolCombo chatty=False, connectionchatty=False) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 644, in serverParamsTest s.write(indata) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/ssl.py", line 178, in write return self._sslobj.write(data) TypeError: write() argument 1 must be bytes or read-only buffer, not str ====================================================================== ERROR: testSocketServer (test.test_ssl.ThreadedTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_ssl.py", line 931, in testSocketServer server = AsyncoreHTTPSServer(CERTFILE) NameError: global name 'AsyncoreHTTPSServer' is not defined make: *** [buildbottest] Error 1 sincerely, -The Buildbot From tnelson at onresolve.com Wed Apr 9 14:23:48 2008 From: tnelson at onresolve.com (Trent Nelson) Date: Wed, 9 Apr 2008 05:23:48 -0700 Subject: [Python-checkins] [Python-3000] buildbot failure in ppc Debian unstable 3.0 In-Reply-To: <47FCA10D.2020303@cheimes.de> References: <20080409091116.E014A1E4005@bag.python.org> <47FCA10D.2020303@cheimes.de> Message-ID: <87D3F9C72FBF214DB39FA4E3FE618CDC6E22BEB634@EXMBX04.exchhosting.com> > I can't run the ssl tests with -unetwork on my machine. Could > somebody please fix the test for me? Oeer. The write() issues are easily fixed w/ b''. Investigating the lack of AsyncoreHTTPSServer, though, yielded quite significant differences between the trunk and py3k versions of test_ssl.py. If no-one beats me to it I'll look at fixing it over lunch (in an hour or so). Trent. From python-checkins at python.org Wed Apr 9 19:06:09 2008 From: python-checkins at python.org (andrew.kuchling) Date: Wed, 9 Apr 2008 19:06:09 +0200 (CEST) Subject: [Python-checkins] r62243 - sandbox/trunk/seealso/convert-python-faqs.py Message-ID: <20080409170609.3C2661E4026@bag.python.org> Author: andrew.kuchling Date: Wed Apr 9 19:06:08 2008 New Revision: 62243 Removed: sandbox/trunk/seealso/convert-python-faqs.py Log: Remove script for converting Infogami.com FAQs to Pyramid; both input and output are now obsolete Deleted: /sandbox/trunk/seealso/convert-python-faqs.py ============================================================================== --- /sandbox/trunk/seealso/convert-python-faqs.py Wed Apr 9 19:06:08 2008 +++ (empty file) @@ -1,246 +0,0 @@ -#!/Users/amk/source/p/python/python.exe -# Read copy of the pyfaq infogami site (assumed to be in the pyfaq/ -# subdirectory) and write out a pyramid-formatting tree to pyramid-faq/ -# -# Warning: erases the existing pyramid-faq/ directory on starting! -# -# $Id$ - -import os, shutil, glob, cgi -import htmlload - -ET = htmlload.ET - -DESTDIR = 'pyramid-faq' - -# Master collection of categories -categories = {} - -def yaml_escape (S): - "Escape S as a YAML string" - S = normalize_whitespace(S) - S = S.replace("\\", "\\\\") - S = S.replace('"', '\\"') - S = '"' + S + '"' - return S - -def normalize_whitespace (S): - """Replace all whitespace by single spaces. - >>> normalize_whitespace('a b\tc\nd') - 'a b c d' - """ - return ' '.join(S.split()) - -def get_setting (root, setting_name, default=None): - """Look for a paragraph containing a setting, like 'CATEGORY: general', - and returns the result of the setting. - """ - setting_start = setting_name.upper() + ':' - for para in root.findall('*/p'): - if para.text is not None and para.text.startswith(setting_start): - value = para.text[len(setting_start):] - value = value.strip() - return value - else: - return default - -def write_nav (dir, urls): - f = open(os.path.join(dir, 'nav.yml'), 'w') - f.write("""--- !fragment -# Type of template to use -template: nav.html - -# Contents of the template -global: - nav : !sectionnav | -""") - for dirname, title in urls: - title = normalize_whitespace(title) - f.write(' '*6 + title + ' ' + dirname + '\n') - f.close() - -def convert_question (filename): - base = os.path.basename(filename).replace('.xml', '') - # root is the 'html' element - root = htmlload.load(filename) - title = root.findtext('head/title') - title = normalize_whitespace(title) - - # Find category and name - category = get_setting(root, 'category') - if category is None: - ##print 'Filename without category:', filename - return - if category in ('test',): - return - if category not in categories: - categories[category] = None - - name = get_setting(root, 'name', base) - - qdir = os.path.join(DESTDIR, category, name) - os.makedirs(qdir) - - # Write body of question - f = open(os.path.join(qdir, 'question.ht'), 'w') - f.write('Title: Unused title\n') - f.write('\n') - - f.write('

%s

\n\n' % cgi.escape(title)) - body = root.find('body') - for child in body.getchildren(): - s = ET.tostring(child, 'utf-8') - f.write(s) - - # Add a link to the wiki page for this question - f.write('''

[Edit/comment on this page]

\n''' % base) - f.close() - - # Write .yml files - page_title = '%s FAQ: %s' % (category.capitalize(), title) - f = open(os.path.join(qdir, 'index.yml'), 'w') - f.write("""--- !fragment -template: index.html -# The data to pass to the template -global: - metadata: {} -local: - title: %s - content: !fragment content.yml - """ % yaml_escape(page_title)) - f.close() - - f = open(os.path.join(qdir, 'content.yml'), 'w') - f.write("""--- !fragment -# Type of template to use -template: content.html - -# The data to pass to the template -local: - content: - breadcrumb: !breadcrumb nav.yml nav - text: !htfile question.ht\n""") - f.close() - - -def convert_index (filename): - root = htmlload.load(filename) - title = root.findtext('*/title') - title = normalize_whitespace(title) - i = title.find(':') - category = title[i+1:].strip() - idir = os.path.join(DESTDIR, category) - - # XXX can there be subsections within a category? - entries = list(root.findall('*/p/a')) - - # Write body of question - f = open(os.path.join(idir, 'listing.ht'), 'w') - f.write('
    \n') - urllist = [] - for a in entries: - href = a.get("href") - href = href.lstrip('/') - a.set("href", href) - f.write('
  • %s
  • \n' % ET.tostring(a, 'utf-8')) - urllist.append((href, a.text)) - - f.write('
\n') - f.close() - - write_nav(idir, urllist) - - # Write .yml files - f = open(os.path.join(idir, 'index.yml'), 'w') - f.write("""--- !fragment -template: index.html -# The data to pass to the template -local: - title: %s - content: !fragment content.yml - """ % yaml_escape(title)) - f.close() - - f = open(os.path.join(idir, 'content.yml'), 'w') - f.write("""--- !fragment -# Type of template to use -template: content.html - -# The data to pass to the template -local: - content: - breadcrumb: !breadcrumb nav.yml nav - text: !htfile listing.ht""") - f.close() - -def write_master_index (index_files): - f = open(os.path.join(DESTDIR, 'index.yml'), 'w') - f.write("""--- !fragment -template: index.html -# The data to pass to the template -local: - title: FAQs - content: !fragment content.yml -""") - f.close() - - f = open(os.path.join(DESTDIR, 'content.yml'), 'w') - f.write("""--- !fragment -# Type of template to use -template: content.html - -# The data to pass to the template -local: - content: - text: !htfile listing.ht - breadcrumb: !breadcrumb nav.yml nav -""") - f.close() - - f = open(os.path.join(DESTDIR, 'listing.ht'), 'w') - f.write('Title: Unused title\n') - f.write('\n') - f.write('
    \n') - for cat in sorted(categories.keys()): - f.write('
  • %s' % (cat, cat.capitalize())) - f.write('
\n') - f.close() - - # Write navigation info - urllist = [] - for cat in sorted(categories.keys()): - urllist.append((cat, cat.capitalize())) - write_nav(DESTDIR, urllist) - - f = open(os.path.join(DESTDIR, 'content.html'), 'w') - f.write(""" - +

This is a demo installation. Do not use it to report real bugs yet

From python-checkins at python.org Sun Apr 13 22:35:56 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sun, 13 Apr 2008 22:35:56 +0200 (CEST) Subject: [Python-checkins] r62329 - in python/trunk: Include/graminit.h Parser/printgrammar.c Python/graminit.c Message-ID: <20080413203556.868AD1E400A@bag.python.org> Author: benjamin.peterson Date: Sun Apr 13 22:35:56 2008 New Revision: 62329 Log: #2627 Let it be known what pgen generates Modified: python/trunk/Include/graminit.h python/trunk/Parser/printgrammar.c python/trunk/Python/graminit.c Modified: python/trunk/Include/graminit.h ============================================================================== --- python/trunk/Include/graminit.h (original) +++ python/trunk/Include/graminit.h Sun Apr 13 22:35:56 2008 @@ -1,3 +1,5 @@ +/* Generated by Parser/pgen */ + #define single_input 256 #define file_input 257 #define eval_input 258 Modified: python/trunk/Parser/printgrammar.c ============================================================================== --- python/trunk/Parser/printgrammar.c (original) +++ python/trunk/Parser/printgrammar.c Sun Apr 13 22:35:56 2008 @@ -13,6 +13,7 @@ void printgrammar(grammar *g, FILE *fp) { + fprintf(fp, "/* Generated by Parser/pgen */\n\n"); fprintf(fp, "#include \"pgenheaders.h\"\n"); fprintf(fp, "#include \"grammar.h\"\n"); printdfas(g, fp); @@ -31,6 +32,8 @@ dfa *d; int i; + fprintf(fp, "/* Generated by Parser/pgen */\n\n"); + d = g->g_dfa; for (i = g->g_ndfas; --i >= 0; d++) fprintf(fp, "#define %s %d\n", d->d_name, d->d_type); Modified: python/trunk/Python/graminit.c ============================================================================== --- python/trunk/Python/graminit.c (original) +++ python/trunk/Python/graminit.c Sun Apr 13 22:35:56 2008 @@ -1,3 +1,5 @@ +/* Generated by Parser/pgen */ + #include "pgenheaders.h" #include "grammar.h" static arc arcs_0_0[3] = { From python-checkins at python.org Sun Apr 13 22:40:03 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sun, 13 Apr 2008 22:40:03 +0200 (CEST) Subject: [Python-checkins] r62330 - python/trunk/.bzrignore Message-ID: <20080413204003.BD20B1E400A@bag.python.org> Author: benjamin.peterson Date: Sun Apr 13 22:40:03 2008 New Revision: 62330 Log: Added an ignore file for Bazaar #2510 Added: python/trunk/.bzrignore Added: python/trunk/.bzrignore ============================================================================== --- (empty file) +++ python/trunk/.bzrignore Sun Apr 13 22:40:03 2008 @@ -0,0 +1,43 @@ +.purify +autom4te.cache +config.log +config.cache +config.status +config.status.lineno +db_home +Makefile +buildno +python +build +Makefile.pre +platform +pyconfig.h +libpython*.a +python.exe +CP936.TXT +SHIFT_JISX0213.TXT +JOHAB.TXT +EUC-JP.TXT +NormalizationTest-3.2.0.txt +NormalizationTest.txt +BIG5.TXT +BIG5HKSCS-2004.TXT +CP949.TXT +EUC-CN.TXT +BIG5HKSCS.TXT +SHIFTJIS.TXT +EUC-KR.TXT +EUC-JISX0213.TXT +CP932.TXT +CP950.TXT +reflog.txt +gb-18030-2000.xml +tags +TAGS +.gdb_history +Modules/Setup +Modules/Setup.config +Modules/Setup.local +Modules/config.c +Parser/pgen +Lib/plat-mac/errors.rsrc.df.rsrc From nnorwitz at gmail.com Sun Apr 13 23:13:14 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 13 Apr 2008 17:13:14 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080413211314.GA32672@python.psfb.org> More important issues: ---------------------- test_structmembers leaked [114, 114, 114] references, sum=342 Less important issues: ---------------------- test_asynchat leaked [0, 0, 123] references, sum=123 test_cmd_line leaked [-23, 0, 0] references, sum=-23 test_file leaked [78, -78, 0] references, sum=0 test_smtplib leaked [24, -114, 0] references, sum=-90 test_socketserver leaked [0, 78, -78] references, sum=0 test_threading leaked [0, 0, -1] references, sum=-1 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From python-checkins at python.org Sun Apr 13 22:50:29 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 13 Apr 2008 22:50:29 +0200 (CEST) Subject: [Python-checkins] r62331 - in python/trunk: Modules/main.c Python/getopt.c Message-ID: <20080413205029.DC36D1E400A@bag.python.org> Author: georg.brandl Date: Sun Apr 13 22:50:29 2008 New Revision: 62331 Log: Improve -X error message. Modified: python/trunk/Modules/main.c python/trunk/Python/getopt.c Modified: python/trunk/Modules/main.c ============================================================================== --- python/trunk/Modules/main.c (original) +++ python/trunk/Modules/main.c Sun Apr 13 22:50:29 2008 @@ -390,7 +390,7 @@ skipfirstline = 1; break; - /* case 'X': reserved for non-standard arguments */ + /* case 'X': reserved for implementation-specific arguments */ case 'U': Py_UnicodeFlag++; Modified: python/trunk/Python/getopt.c ============================================================================== --- python/trunk/Python/getopt.c (original) +++ python/trunk/Python/getopt.c Sun Apr 13 22:50:29 2008 @@ -88,7 +88,7 @@ if (option == 'X') { fprintf(stderr, - "-X is reserved for non-standard arguments\n"); + "-X is reserved for implementation-specific arguments\n"); return '_'; } From python-checkins at python.org Sun Apr 13 22:51:28 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 13 Apr 2008 22:51:28 +0200 (CEST) Subject: [Python-checkins] r62332 - in python/trunk/Doc: Makefile make.bat Message-ID: <20080413205128.3EEFC1E400A@bag.python.org> Author: georg.brandl Date: Sun Apr 13 22:51:27 2008 New Revision: 62332 Log: Check out Jinja as a separate step now that it's not included in the Sphinx package anymore. Modified: python/trunk/Doc/Makefile python/trunk/Doc/make.bat Modified: python/trunk/Doc/Makefile ============================================================================== --- python/trunk/Doc/Makefile (original) +++ python/trunk/Doc/Makefile Sun Apr 13 22:51:27 2008 @@ -34,6 +34,10 @@ echo "Checking out Docutils..."; \ svn checkout $(SVNROOT)/external/docutils-0.4/docutils tools/docutils; \ fi + @if [ ! -d tools/jinja ]; then \ + echo "Checking out Jinja..."; \ + svn checkout $(SVNROOT)/external/Jinja-1.1/jinja tools/jinja; \ + fi @if [ ! -d tools/pygments ]; then \ echo "Checking out Pygments..."; \ svn checkout $(SVNROOT)/external/Pygments-0.9/pygments tools/pygments; \ @@ -42,6 +46,7 @@ update: checkout svn update tools/sphinx svn update tools/docutils + svn update tools/jinja svn update tools/pygments build: checkout Modified: python/trunk/Doc/make.bat ============================================================================== --- python/trunk/Doc/make.bat (original) +++ python/trunk/Doc/make.bat Sun Apr 13 22:51:27 2008 @@ -28,12 +28,14 @@ :checkout svn co %SVNROOT%/doctools/trunk/sphinx tools/sphinx svn co %SVNROOT%/external/docutils-0.4/docutils tools/docutils +svn co %SVNROOT%/external/Jinja-1.1/jinja tools/jinja svn co %SVNROOT%/external/Pygments-0.9/pygments tools/pygments goto end :update svn update tools/sphinx svn update tools/docutils +svn update tools/jinja svn update tools/pygments goto end From nnorwitz at gmail.com Sun Apr 13 23:42:03 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 13 Apr 2008 17:42:03 -0400 Subject: [Python-checkins] Python Regression Test Failures doc (1) Message-ID: <20080413214203.GA9799@python.psfb.org> svn update tools/sphinx U tools/sphinx/_jinja.py U tools/sphinx/directives.py U tools/sphinx/application.py U tools/sphinx/config.py U tools/sphinx/ext/autodoc.py U tools/sphinx/builder.py U tools/sphinx Fetching external item into 'tools/sphinx/jinja' Updated external to revision 62332. Updated to revision 62332. svn update tools/docutils At revision 62332. svn update tools/pygments At revision 62332. mkdir -p build/html build/doctrees python tools/sphinx-build.py -b html -d build/doctrees -D latex_paper_size= . build/html Sphinx v0.1.61611, building html Exception occurred: File "/home/neal/python/trunk/Doc/tools/sphinx/jinja/__init__.py", line 60, in from jinja.environment import Environment ImportError: No module named jinja.environment The full traceback has been saved in /tmp/sphinx-err-XVMp2d.log, if you want to report the issue to the author. Please also report this if it was a user error, so that a better error message can be provided next time. Send reports to georg at python.org. Thanks! make: *** [build] Error 1 From python-checkins at python.org Sun Apr 13 23:39:59 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sun, 13 Apr 2008 23:39:59 +0200 (CEST) Subject: [Python-checkins] r62333 - python/branches/py3k/Doc/library/io.rst Message-ID: <20080413213959.142EA1E400A@bag.python.org> Author: benjamin.peterson Date: Sun Apr 13 23:39:58 2008 New Revision: 62333 Log: A few io doc fixes Modified: python/branches/py3k/Doc/library/io.rst Modified: python/branches/py3k/Doc/library/io.rst ============================================================================== --- python/branches/py3k/Doc/library/io.rst (original) +++ python/branches/py3k/Doc/library/io.rst Sun Apr 13 23:39:58 2008 @@ -33,7 +33,7 @@ Finally, :class:`StringIO` is a in-memory stream for text. Argument names are not part of the specification, and only the arguments of -:func:`open()` are intended to be used as keyword arguments. +:func:`open` are intended to be used as keyword arguments. Module Interface @@ -42,7 +42,7 @@ .. data:: DEFAULT_BUFFER_SIZE An int containing the default buffer size used by the module's buffered I/O - classes. :func:`open()` uses the file's blksize (as obtained by + classes. :func:`open` uses the file's blksize (as obtained by :func:`os.stat`) if possible. .. function:: open(file[, mode[, buffering[, encoding[, errors[, newline[, closefd=True]]]]]]) @@ -100,13 +100,14 @@ dependent, but any encoding supported by Python can be passed. See the :mod:`codecs` module for the list of supported encodings. - *errors* is an optional string that specifies how encoding errors are to be - handled---this argument should not be used in binary mode. Pass ``'strict'`` - to raise a :exc:`ValueError` exception if there is an encoding error (the - default of ``None`` has the same effect), or pass ``'ignore'`` to ignore - errors. (Note that ignoring encoding errors can lead to data loss.) See the - documentation for :func:`codecs.register` for a list of the permitted - encoding error strings. + *errors* is an optional string that specifies how encoding and decoding + errors are to be handled---this argument should not be used in binary mode. + Pass ``'strict'`` to raise a :exc:`ValueError` exception if there is an + encoding error (the default of ``None`` has the same effect), or pass + ``'ignore'`` to ignore errors. (Note that ignoring encoding errors can lead + to data loss.) ``'replace'`` causes a replacement marker (such as ``'?'``) + to be inserted where there is malformed data. For all possible values, see + :func:`codecs.register`. *newline* controls how universal newlines works (it only applies to text mode). It can be ``None``, ``''``, ``'\n'``, ``'\r'``, and ``'\r\n'``. It @@ -130,15 +131,14 @@ when the file is closed. This does not work when a file name is given and must be ``True`` in that case. - :func:`open()` returns a file object whose type depends on the mode, and + :func:`open` returns a file object whose type depends on the mode, and through which the standard file operations such as reading and writing are - performed. When :func:`open()` is used to open a file in a text mode - (``'w'``, ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a - :class:`TextIOWrapper`. When used to open a file in a binary mode, the - returned class varies: in read binary mode, it returns a - :class:`BufferedReader`; in write binary and append binary modes, it returns - a :class:`BufferedWriter`, and in read/write mode, it returns a - :class:`BufferedRandom`. + performed. When :func:`open` is used to open a file in a text mode (``'w'``, + ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a :class:`TextIOWrapper`. + When used to open a file in a binary mode, the returned class varies: in read + binary mode, it returns a :class:`BufferedReader`; in write binary and append + binary modes, it returns a :class:`BufferedWriter`, and in read/write mode, + it returns a :class:`BufferedRandom`. It is also possible to use a string or bytearray as a file for both reading and writing. For strings :class:`StringIO` can be used like a file opened in @@ -220,8 +220,8 @@ .. method:: flush() - Flush the write buffers of the stream if applicable. This is not - implemented for read-only and non-blocking streams. + Flush the write buffers of the stream if applicable. This does nothing + for read-only and non-blocking streams. .. method:: isatty() @@ -238,7 +238,7 @@ *limit* bytes will be read. The line terminator is always ``b'\n'`` for binary files; for text files, - the *newlines* argument to :func:`.open()` can be used to select the line + the *newlines* argument to :func:`open` can be used to select the line terminator(s) recognized. .. method:: readlines([hint]) @@ -576,8 +576,13 @@ *encoding* gives the name of the encoding that the stream will be decoded or encoded with. It defaults to :func:`locale.getpreferredencoding`. - *errors* determines the strictness of encoding and decoding (see the errors - argument of :func:`codecs.register`) and defaults to ``'strict'``. + *errors* is an optional string that specifies how encoding and decoding + errors are to be handled. Pass ``'strict'`` to raise a :exc:`ValueError` + exception if there is an encoding error (the default of ``None`` has the same + effect), or pass ``'ignore'`` to ignore errors. (Note that ignoring encoding + errors can lead to data loss.) ``'replace'`` causes a replacement marker + (such as ``'?'``) to be inserted where there is malformed data. For all + possible values see :func:`codecs.register`. *newline* can be ``None``, ``''``, ``'\n'``, ``'\r'``, or ``'\r\n'``. It controls the handling of line endings. If it is ``None``, universal newlines From buildbot at python.org Sun Apr 13 23:54:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 13 Apr 2008 21:54:28 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080413215429.0221C1E400A@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2860 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_smtplib test_socket ====================================================================== FAIL: testInterruptedTimeout (test.test_socket.TCPTimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_socket.py", line 1007, in testInterruptedTimeout self.fail("got Alarm in wrong place") AssertionError: got Alarm in wrong place sincerely, -The Buildbot From python-checkins at python.org Mon Apr 14 00:39:12 2008 From: python-checkins at python.org (andrew.kuchling) Date: Mon, 14 Apr 2008 00:39:12 +0200 (CEST) Subject: [Python-checkins] r62334 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080413223912.9EF961E400A@bag.python.org> Author: andrew.kuchling Date: Mon Apr 14 00:39:12 2008 New Revision: 62334 Log: Add example Modified: python/trunk/Doc/whatsnew/2.6.rst Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Mon Apr 14 00:39:12 2008 @@ -736,7 +736,13 @@ to become Unicode strings. This means that ``\u`` escape sequences can be used to include Unicode characters. -XXX give example + from __future__ import unicode_literals + + s = ('\u751f\u3080\u304e\u3000\u751f\u3054' + '\u3081\u3000\u751f\u305f\u307e\u3054') + + print len(s) # 12 Unicode characters + .. seealso:: From musiccomposition at gmail.com Mon Apr 14 01:07:35 2008 From: musiccomposition at gmail.com (Benjamin Peterson) Date: Sun, 13 Apr 2008 18:07:35 -0500 Subject: [Python-checkins] Python Regression Test Failures doc (1) In-Reply-To: <20080413214203.GA9799@python.psfb.org> References: <20080413214203.GA9799@python.psfb.org> Message-ID: <1afaf6160804131607u608a4464x85590408a6b2d7c7@mail.gmail.com> On Sun, Apr 13, 2008 at 4:42 PM, Neal Norwitz wrote: > Exception occurred: > File "/home/neal/python/trunk/Doc/tools/sphinx/jinja/__init__.py", line 60, in > from jinja.environment import Environment > ImportError: No module named jinja.environment Fixed. I just had to merge the changes in the makefile. -- Cheers, Benjamin Peterson From python-checkins at python.org Mon Apr 14 01:11:15 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 14 Apr 2008 01:11:15 +0200 (CEST) Subject: [Python-checkins] r62335 - in python/branches/py3k: Doc/Makefile Doc/make.bat Message-ID: <20080413231115.B36421E400A@bag.python.org> Author: benjamin.peterson Date: Mon Apr 14 01:11:15 2008 New Revision: 62335 Log: Merged revisions 62332 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62332 | georg.brandl | 2008-04-13 15:51:27 -0500 (Sun, 13 Apr 2008) | 2 lines Check out Jinja as a separate step now that it's not included in the Sphinx package anymore. ........ Modified: python/branches/py3k/ (props changed) python/branches/py3k/Doc/Makefile python/branches/py3k/Doc/make.bat Modified: python/branches/py3k/Doc/Makefile ============================================================================== --- python/branches/py3k/Doc/Makefile (original) +++ python/branches/py3k/Doc/Makefile Mon Apr 14 01:11:15 2008 @@ -34,6 +34,10 @@ echo "Checking out Docutils..."; \ svn checkout $(SVNROOT)/external/docutils-0.4/docutils tools/docutils; \ fi + @if [ ! -d tools/jinja ]; then \ + echo "Checking out Jinja..."; \ + svn checkout $(SVNROOT)/external/Jinja-1.1/jinja tools/jinja; \ + fi @if [ ! -d tools/pygments ]; then \ echo "Checking out Pygments..."; \ svn checkout $(SVNROOT)/external/Pygments-0.9/pygments tools/pygments; \ @@ -42,6 +46,7 @@ update: checkout svn update tools/sphinx svn update tools/docutils + svn update tools/jinja svn update tools/pygments build: checkout Modified: python/branches/py3k/Doc/make.bat ============================================================================== --- python/branches/py3k/Doc/make.bat (original) +++ python/branches/py3k/Doc/make.bat Mon Apr 14 01:11:15 2008 @@ -28,12 +28,14 @@ :checkout svn co %SVNROOT%/doctools/trunk/sphinx tools/sphinx svn co %SVNROOT%/external/docutils-0.4/docutils tools/docutils +svn co %SVNROOT%/external/Jinja-1.1/jinja tools/jinja svn co %SVNROOT%/external/Pygments-0.9/pygments tools/pygments goto end :update svn update tools/sphinx svn update tools/docutils +svn update tools/jinja svn update tools/pygments goto end From brett at python.org Mon Apr 14 01:13:29 2008 From: brett at python.org (Brett Cannon) Date: Sun, 13 Apr 2008 16:13:29 -0700 Subject: [Python-checkins] r62330 - python/trunk/.bzrignore In-Reply-To: <20080413204003.BD20B1E400A@bag.python.org> References: <20080413204003.BD20B1E400A@bag.python.org> Message-ID: I don't think we should be polluting svn with bzr-specific files. -Brett On Sun, Apr 13, 2008 at 1:40 PM, benjamin.peterson wrote: > Author: benjamin.peterson > Date: Sun Apr 13 22:40:03 2008 > New Revision: 62330 > > Log: > Added an ignore file for Bazaar #2510 > > > Added: > python/trunk/.bzrignore > > Added: python/trunk/.bzrignore > ============================================================================== > --- (empty file) > +++ python/trunk/.bzrignore Sun Apr 13 22:40:03 2008 > @@ -0,0 +1,43 @@ > +.purify > +autom4te.cache > +config.log > +config.cache > +config.status > +config.status.lineno > +db_home > +Makefile > +buildno > +python > +build > +Makefile.pre > +platform > +pyconfig.h > +libpython*.a > +python.exe > +CP936.TXT > +SHIFT_JISX0213.TXT > +JOHAB.TXT > +EUC-JP.TXT > +NormalizationTest-3.2.0.txt > +NormalizationTest.txt > +BIG5.TXT > +BIG5HKSCS-2004.TXT > +CP949.TXT > +EUC-CN.TXT > +BIG5HKSCS.TXT > +SHIFTJIS.TXT > +EUC-KR.TXT > +EUC-JISX0213.TXT > +CP932.TXT > +CP950.TXT > +reflog.txt > +gb-18030-2000.xml > +tags > +TAGS > +.gdb_history > +Modules/Setup > +Modules/Setup.config > +Modules/Setup.local > +Modules/config.c > +Parser/pgen > +Lib/plat-mac/errors.rsrc.df.rsrc > _______________________________________________ > Python-checkins mailing list > Python-checkins at python.org > http://mail.python.org/mailman/listinfo/python-checkins > From buildbot at python.org Mon Apr 14 01:16:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 13 Apr 2008 23:16:26 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080413231626.2FED51E4009@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/368 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Apr 14 01:24:05 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 13 Apr 2008 23:24:05 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo 3.0 Message-ID: <20080413232405.B12011E4009@bag.python.org> The Buildbot has detected a new failure of x86 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%203.0/builds/793 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: make: *** [buildbottest] Unknown signal 32 sincerely, -The Buildbot From fdrake at acm.org Mon Apr 14 01:26:32 2008 From: fdrake at acm.org (Fred Drake) Date: Sun, 13 Apr 2008 19:26:32 -0400 Subject: [Python-checkins] r62330 - python/trunk/.bzrignore In-Reply-To: References: <20080413204003.BD20B1E400A@bag.python.org> Message-ID: <1224F54E-F639-40F1-9A19-73F6191E0299@acm.org> On Apr 13, 2008, at 7:13 PM, Brett Cannon wrote: > I don't think we should be polluting svn with bzr-specific files. +1 This case could be handled by adding the file to the bzr repository and then naming it in the svn:ignore property; I'd be fine with the file being named there. -Fred -- Fred Drake From barry at python.org Mon Apr 14 01:34:26 2008 From: barry at python.org (Barry Warsaw) Date: Sun, 13 Apr 2008 19:34:26 -0400 Subject: [Python-checkins] r62330 - python/trunk/.bzrignore In-Reply-To: References: <20080413204003.BD20B1E400A@bag.python.org> Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Apr 13, 2008, at 7:13 PM, Brett Cannon wrote: > I don't think we should be polluting svn with bzr-specific files. As I said a while ago, I personally don't think it's a big deal. It's a dot-file so who cares? I also supported adding an ignore file for Mercurial if it makes such mirrors easier to deal with. Just my $0.02 though. - -Barryu -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.8 (Darwin) iQCVAwUBSAKYg3EjvBPtnXfVAQIiSwQApSiol7aYxOr7yHk2xDUWf8LK+ZZeH2Ux RpRsnlLiTfKgkBnh8oy0RLXO/st+CQw+Cb+OKXgm0SUdGM+xKbX/Di89AmeyVgI4 qL3ilhuojFkDjrQzvGabTHDqV2ZbwjuFHiH5rbYU3WtQDaSuOQBHH4Y5EgSxU/Tb 8j1XCLW4UwI= =j6k9 -----END PGP SIGNATURE----- From buildbot at python.org Mon Apr 14 01:38:07 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 13 Apr 2008 23:38:07 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080413233807.824F91E4009@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%203.0/builds/316 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_xmlrpc_net ====================================================================== ERROR: test_current_time (test.test_xmlrpc_net.CurrentTimeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_xmlrpc_net.py", line 18, in test_current_time t0 = server.currentTime.getCurrentTime() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/xmlrpclib.py", line 1113, in __call__ return self.__send(self.__name, args) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/xmlrpclib.py", line 1371, in __request verbose=self.__verbose File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/xmlrpclib.py", line 1154, in request return self._parse_response(resp, None) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/xmlrpclib.py", line 1264, in _parse_response p.feed(response) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/xmlrpclib.py", line 536, in feed self._parser.Parse(data, 0) xml.parsers.expat.ExpatError: mismatched tag: line 10, column 7 make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 14 01:44:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 13 Apr 2008 23:44:49 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080413234450.136761E4009@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%203.0/builds/785 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_xmlrpc_net make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 14 01:46:28 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 14 Apr 2008 01:46:28 +0200 (CEST) Subject: [Python-checkins] r62336 - python/branches/py3k/Doc/library/io.rst Message-ID: <20080413234628.73CB01E400A@bag.python.org> Author: benjamin.peterson Date: Mon Apr 14 01:46:27 2008 New Revision: 62336 Log: Another io doc fix Modified: python/branches/py3k/Doc/library/io.rst Modified: python/branches/py3k/Doc/library/io.rst ============================================================================== --- python/branches/py3k/Doc/library/io.rst (original) +++ python/branches/py3k/Doc/library/io.rst Mon Apr 14 01:46:27 2008 @@ -447,7 +447,7 @@ .. class:: BufferedReader(raw[, buffer_size]) - A buffer for a readable, sequential :class:`BaseRawIO` object. It inherits + A buffer for a readable, sequential :class:`RawIOBase` object. It inherits :class:`BufferedIOBase`. The constructor creates a :class:`BufferedReader` for the given readable From musiccomposition at gmail.com Mon Apr 14 01:48:41 2008 From: musiccomposition at gmail.com (Benjamin Peterson) Date: Sun, 13 Apr 2008 18:48:41 -0500 Subject: [Python-checkins] r62330 - python/trunk/.bzrignore In-Reply-To: <1224F54E-F639-40F1-9A19-73F6191E0299@acm.org> References: <20080413204003.BD20B1E400A@bag.python.org> <1224F54E-F639-40F1-9A19-73F6191E0299@acm.org> Message-ID: <1afaf6160804131648i709fca67xb0e0dde52abfae71@mail.gmail.com> On Sun, Apr 13, 2008 at 6:26 PM, Fred Drake wrote: > On Apr 13, 2008, at 7:13 PM, Brett Cannon wrote: > > This case could be handled by adding the file to the bzr repository > and then naming it in the svn:ignore property; I'd be fine with the > file being named there. Then those using bzr-svn wouldn't benefit from it. -- Cheers, Benjamin Peterson From nnorwitz at gmail.com Mon Apr 14 11:11:59 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 14 Apr 2008 05:11:59 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080414091159.GA28265@python.psfb.org> More important issues: ---------------------- test_structmembers leaked [114, 114, 114] references, sum=342 Less important issues: ---------------------- test_cmd_line leaked [-23, 0, 0] references, sum=-23 test_smtplib leaked [-86, 0, 0] references, sum=-86 test_socketserver leaked [0, 0, 82] references, sum=82 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From python-checkins at python.org Mon Apr 14 12:05:49 2008 From: python-checkins at python.org (lars.gustaebel) Date: Mon, 14 Apr 2008 12:05:49 +0200 (CEST) Subject: [Python-checkins] r62337 - in python/branches/py3k: Lib/tarfile.py Misc/NEWS Message-ID: <20080414100549.5B4D01E4029@bag.python.org> Author: lars.gustaebel Date: Mon Apr 14 12:05:48 2008 New Revision: 62337 Log: Issue #2058: Remove the buf attribute and add __slots__ to the TarInfo class in order to reduce tarfile's memory usage. Modified: python/branches/py3k/Lib/tarfile.py python/branches/py3k/Misc/NEWS Modified: python/branches/py3k/Lib/tarfile.py ============================================================================== --- python/branches/py3k/Lib/tarfile.py (original) +++ python/branches/py3k/Lib/tarfile.py Mon Apr 14 12:05:48 2008 @@ -767,7 +767,7 @@ self.fileobj = _FileInFile(tarfile.fileobj, tarinfo.offset_data, tarinfo.size, - getattr(tarinfo, "sparse", None)) + tarinfo.sparse) self.name = tarinfo.name self.mode = "r" self.closed = False @@ -906,6 +906,12 @@ usually created internally. """ + __slots__ = ("name", "mode", "uid", "gid", "size", "mtime", + "chksum", "type", "linkname", "uname", "gname", + "devmajor", "devminor", + "offset", "offset_data", "pax_headers", "sparse", + "tarfile", "_sparse_structs", "_link_target") + def __init__(self, name=""): """Construct a TarInfo object. name is the optional name of the member. @@ -927,6 +933,7 @@ self.offset = 0 # the tar header starts here self.offset_data = 0 # the file's data starts here + self.sparse = None # sparse member information self.pax_headers = {} # pax header information # In pax headers the "name" and "linkname" field are called @@ -1181,7 +1188,6 @@ raise HeaderError("bad checksum") obj = cls() - obj.buf = buf obj.name = nts(buf[0:100], encoding, errors) obj.mode = nti(buf[100:108]) obj.uid = nti(buf[108:116]) @@ -1202,6 +1208,24 @@ if obj.type == AREGTYPE and obj.name.endswith("/"): obj.type = DIRTYPE + # The old GNU sparse format occupies some of the unused + # space in the buffer for up to 4 sparse structures. + # Save the them for later processing in _proc_sparse(). + if obj.type == GNUTYPE_SPARSE: + pos = 386 + structs = [] + for i in range(4): + try: + offset = nti(buf[pos:pos + 12]) + numbytes = nti(buf[pos + 12:pos + 24]) + except ValueError: + break + structs.append((offset, numbytes)) + pos += 24 + isextended = bool(buf[482]) + origsize = nti(buf[483:495]) + obj._sparse_structs = (structs, isextended, origsize) + # Remove redundant slashes from directories. if obj.isdir(): obj.name = obj.name.rstrip("/") @@ -1288,31 +1312,11 @@ def _proc_sparse(self, tarfile): """Process a GNU sparse header plus extra headers. """ - buf = self.buf - sp = _ringbuffer() - pos = 386 - lastpos = 0 - realpos = 0 - # There are 4 possible sparse structs in the - # first header. - for i in range(4): - try: - offset = nti(buf[pos:pos + 12]) - numbytes = nti(buf[pos + 12:pos + 24]) - except ValueError: - break - if offset > lastpos: - sp.append(_hole(lastpos, offset - lastpos)) - sp.append(_data(offset, numbytes, realpos)) - realpos += numbytes - lastpos = offset + numbytes - pos += 24 - - isextended = bool(buf[482]) - origsize = nti(buf[483:495]) + # We already collected some sparse structures in frombuf(). + structs, isextended, origsize = self._sparse_structs + del self._sparse_structs - # If the isextended flag is given, - # there are extra headers to process. + # Collect sparse structures from extended header blocks. while isextended: buf = tarfile.fileobj.read(BLOCKSIZE) pos = 0 @@ -1322,18 +1326,23 @@ numbytes = nti(buf[pos + 12:pos + 24]) except ValueError: break - if offset > lastpos: - sp.append(_hole(lastpos, offset - lastpos)) - sp.append(_data(offset, numbytes, realpos)) - realpos += numbytes - lastpos = offset + numbytes + structs.append((offset, numbytes)) pos += 24 isextended = bool(buf[504]) + # Transform the sparse structures to something we can use + # in ExFileObject. + self.sparse = _ringbuffer() + lastpos = 0 + realpos = 0 + for offset, numbytes in structs: + if offset > lastpos: + self.sparse.append(_hole(lastpos, offset - lastpos)) + self.sparse.append(_data(offset, numbytes, realpos)) + realpos += numbytes + lastpos = offset + numbytes if lastpos < origsize: - sp.append(_hole(lastpos, origsize - lastpos)) - - self.sparse = sp + self.sparse.append(_hole(lastpos, origsize - lastpos)) self.offset_data = tarfile.fileobj.tell() tarfile.offset = self.offset_data + self._block(self.size) Modified: python/branches/py3k/Misc/NEWS ============================================================================== --- python/branches/py3k/Misc/NEWS (original) +++ python/branches/py3k/Misc/NEWS Mon Apr 14 12:05:48 2008 @@ -29,6 +29,9 @@ Library ------- +- Issue #2058: Remove the buf attribute and add __slots__ to the TarInfo + class in order to reduce tarfile's memory usage. + - Bug #2606: Avoid calling .sort() on a dict_keys object. - The bundled libffi copy is now in sync with the recently released From buildbot at python.org Mon Apr 14 12:35:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 10:35:27 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080414103527.72B991E400A@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/781 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,lars.gustaebel BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Mon Apr 14 18:10:35 2008 From: python-checkins at python.org (thomas.heller) Date: Mon, 14 Apr 2008 18:10:35 +0200 (CEST) Subject: [Python-checkins] r62338 - in python/trunk: Lib/ctypes/__init__.py Misc/NEWS Modules/_ctypes/_ctypes.c Modules/_ctypes/callproc.c Modules/_ctypes/ctypes.h Message-ID: <20080414161035.24EB91E4011@bag.python.org> Author: thomas.heller Date: Mon Apr 14 18:10:07 2008 New Revision: 62338 Log: Issue #2616: Implement ctypes.pointer() and ctypes.POINTER() in C for better performance. Modified: python/trunk/Lib/ctypes/__init__.py python/trunk/Misc/NEWS python/trunk/Modules/_ctypes/_ctypes.c python/trunk/Modules/_ctypes/callproc.c python/trunk/Modules/_ctypes/ctypes.h Modified: python/trunk/Lib/ctypes/__init__.py ============================================================================== --- python/trunk/Lib/ctypes/__init__.py (original) +++ python/trunk/Lib/ctypes/__init__.py Mon Apr 14 18:10:07 2008 @@ -242,27 +242,7 @@ class c_bool(_SimpleCData): _type_ = "?" -# This cache maps types to pointers to them. -_pointer_type_cache = {} - -def POINTER(cls): - try: - return _pointer_type_cache[cls] - except KeyError: - pass - if type(cls) is str: - klass = type(_Pointer)("LP_%s" % cls, - (_Pointer,), - {}) - _pointer_type_cache[id(klass)] = klass - return klass - else: - name = "LP_%s" % cls.__name__ - klass = type(_Pointer)(name, - (_Pointer,), - {'_type_': cls}) - _pointer_type_cache[cls] = klass - return klass +from _ctypes import POINTER, pointer, _pointer_type_cache try: from _ctypes import set_conversion_mode @@ -312,10 +292,6 @@ _pointer_type_cache[cls] = pointer del _pointer_type_cache[id(pointer)] - -def pointer(inst): - return POINTER(type(inst))(inst) - # XXX Deprecated def ARRAY(typ, len): return typ * len Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Apr 14 18:10:07 2008 @@ -29,6 +29,9 @@ Library ------- +- Issue #2616: The ctypes.pointer() and ctypes.POINTER() functions are + now implemented in C for better performance. + - Issue #2408: The ``_types`` module, which was used as in implementation detail of the public ``types`` module, has been removed and replaced by pure python code. Modified: python/trunk/Modules/_ctypes/_ctypes.c ============================================================================== --- python/trunk/Modules/_ctypes/_ctypes.c (original) +++ python/trunk/Modules/_ctypes/_ctypes.c Mon Apr 14 18:10:07 2008 @@ -128,6 +128,10 @@ #include "ctypes.h" PyObject *PyExc_ArgError; + +/* This dict maps ctypes types to POINTER types */ +PyObject *_pointer_type_cache; + static PyTypeObject Simple_Type; /* a callable object used for unpickling */ @@ -5169,6 +5173,12 @@ if (!m) return; + _pointer_type_cache = PyDict_New(); + if (_pointer_type_cache == NULL) + return; + + PyModule_AddObject(m, "_pointer_type_cache", (PyObject *)_pointer_type_cache); + _unpickle = PyObject_GetAttrString(m, "_unpickle"); if (_unpickle == NULL) return; Modified: python/trunk/Modules/_ctypes/callproc.c ============================================================================== --- python/trunk/Modules/_ctypes/callproc.c (original) +++ python/trunk/Modules/_ctypes/callproc.c Mon Apr 14 18:10:07 2008 @@ -1600,7 +1600,75 @@ return result; } +static PyObject * +POINTER(PyObject *self, PyObject *cls) +{ + PyObject *result; + PyTypeObject *typ; + PyObject *key; + char *buf; + + result = PyDict_GetItem(_pointer_type_cache, cls); + if (result) { + Py_INCREF(result); + return result; + } + if (PyString_CheckExact(cls)) { + buf = alloca(strlen(PyString_AS_STRING(cls)) + 3 + 1); + sprintf(buf, "LP_%s", PyString_AS_STRING(cls)); + result = PyObject_CallFunction((PyObject *)Py_TYPE(&Pointer_Type), + "s(O){}", + buf, + &Pointer_Type); + if (result == NULL) + return result; + key = PyLong_FromVoidPtr(result); + } else if (PyType_Check(cls)) { + typ = (PyTypeObject *)cls; + buf = alloca(strlen(typ->tp_name) + 3 + 1); + sprintf(buf, "LP_%s", typ->tp_name); + result = PyObject_CallFunction((PyObject *)Py_TYPE(&Pointer_Type), + "s(O){sO}", + buf, + &Pointer_Type, + "_type_", cls); + if (result == NULL) + return result; + Py_INCREF(cls); + key = cls; + } else { + PyErr_SetString(PyExc_TypeError, "must be a ctypes type"); + return NULL; + } + if (-1 == PyDict_SetItem(_pointer_type_cache, key, result)) { + Py_DECREF(result); + Py_DECREF(key); + return NULL; + } + Py_DECREF(key); + return result; +} + +static PyObject * +pointer(PyObject *self, PyObject *arg) +{ + PyObject *result; + PyObject *typ; + + typ = PyDict_GetItem(_pointer_type_cache, (PyObject *)Py_TYPE(arg)); + if (typ) + return PyObject_CallFunctionObjArgs(typ, arg, NULL); + typ = POINTER(NULL, (PyObject *)Py_TYPE(arg)); + if (typ == NULL) + return NULL; + result = PyObject_CallFunctionObjArgs(typ, arg, NULL); + Py_DECREF(typ); + return result; +} + PyMethodDef module_methods[] = { + {"POINTER", POINTER, METH_O }, + {"pointer", pointer, METH_O }, {"_unpickle", unpickle, METH_VARARGS }, {"resize", resize, METH_VARARGS, "Resize the memory buffer of a ctypes instance"}, #ifdef CTYPES_UNICODE Modified: python/trunk/Modules/_ctypes/ctypes.h ============================================================================== --- python/trunk/Modules/_ctypes/ctypes.h (original) +++ python/trunk/Modules/_ctypes/ctypes.h Mon Apr 14 18:10:07 2008 @@ -415,6 +415,7 @@ /* XXX better name needed! */ extern int IsSimpleSubType(PyObject *obj); +extern PyObject *_pointer_type_cache; #ifdef MS_WIN32 extern PyObject *ComError; From buildbot at python.org Mon Apr 14 18:15:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 16:15:45 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian trunk Message-ID: <20080414161603.A3A961E400B@bag.python.org> The Buildbot has detected a new failure of alpha Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%20trunk/builds/81 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,benjamin.peterson,brett.cannon,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Mon Apr 14 18:17:33 2008 From: python-checkins at python.org (thomas.heller) Date: Mon, 14 Apr 2008 18:17:33 +0200 (CEST) Subject: [Python-checkins] r62339 - in python/branches/py3k: Lib/ctypes/__init__.py Modules/_ctypes/_ctypes.c Modules/_ctypes/callproc.c Modules/_ctypes/ctypes.h Message-ID: <20080414161733.DB51F1E400A@bag.python.org> Author: thomas.heller Date: Mon Apr 14 18:17:33 2008 New Revision: 62339 Log: Merged revisions 62338 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62338 | thomas.heller | 2008-04-14 18:10:07 +0200 (Mo, 14 Apr 2008) | 3 lines Issue #2616: Implement ctypes.pointer() and ctypes.POINTER() in C for better performance. ........ Modified: python/branches/py3k/ (props changed) python/branches/py3k/Lib/ctypes/__init__.py python/branches/py3k/Modules/_ctypes/_ctypes.c python/branches/py3k/Modules/_ctypes/callproc.c python/branches/py3k/Modules/_ctypes/ctypes.h Modified: python/branches/py3k/Lib/ctypes/__init__.py ============================================================================== --- python/branches/py3k/Lib/ctypes/__init__.py (original) +++ python/branches/py3k/Lib/ctypes/__init__.py Mon Apr 14 18:17:33 2008 @@ -239,27 +239,7 @@ class c_bool(_SimpleCData): _type_ = "?" -# This cache maps types to pointers to them. -_pointer_type_cache = {} - -def POINTER(cls): - try: - return _pointer_type_cache[cls] - except KeyError: - pass - if type(cls) is str: - klass = type(_Pointer)("LP_%s" % cls, - (_Pointer,), - {}) - _pointer_type_cache[id(klass)] = klass - return klass - else: - name = "LP_%s" % cls.__name__ - klass = type(_Pointer)(name, - (_Pointer,), - {'_type_': cls}) - _pointer_type_cache[cls] = klass - return klass +from _ctypes import POINTER, pointer, _pointer_type_cache try: from _ctypes import set_conversion_mode @@ -309,10 +289,6 @@ _pointer_type_cache[cls] = pointer del _pointer_type_cache[id(pointer)] - -def pointer(inst): - return POINTER(type(inst))(inst) - # XXX Deprecated def ARRAY(typ, len): return typ * len Modified: python/branches/py3k/Modules/_ctypes/_ctypes.c ============================================================================== --- python/branches/py3k/Modules/_ctypes/_ctypes.c (original) +++ python/branches/py3k/Modules/_ctypes/_ctypes.c Mon Apr 14 18:17:33 2008 @@ -123,6 +123,10 @@ #include "ctypes.h" PyObject *PyExc_ArgError; + +/* This dict maps ctypes types to POINTER types */ +PyObject *_pointer_type_cache; + static PyTypeObject Simple_Type; /* a callable object used for unpickling */ @@ -4994,6 +4998,12 @@ if (!m) return; + _pointer_type_cache = PyDict_New(); + if (_pointer_type_cache == NULL) + return; + + PyModule_AddObject(m, "_pointer_type_cache", (PyObject *)_pointer_type_cache); + _unpickle = PyObject_GetAttrString(m, "_unpickle"); if (_unpickle == NULL) return; Modified: python/branches/py3k/Modules/_ctypes/callproc.c ============================================================================== --- python/branches/py3k/Modules/_ctypes/callproc.c (original) +++ python/branches/py3k/Modules/_ctypes/callproc.c Mon Apr 14 18:17:33 2008 @@ -1565,7 +1565,76 @@ return result; } +static PyObject * +POINTER(PyObject *self, PyObject *cls) +{ + PyObject *result; + PyTypeObject *typ; + PyObject *key; + char *buf; + + result = PyDict_GetItem(_pointer_type_cache, cls); + if (result) { + Py_INCREF(result); + return result; + } + if (PyUnicode_CheckExact(cls)) { + char *name = PyUnicode_AsString(cls); + buf = alloca(strlen(name) + 3 + 1); + sprintf(buf, "LP_%s", name); + result = PyObject_CallFunction((PyObject *)Py_TYPE(&Pointer_Type), + "s(O){}", + buf, + &Pointer_Type); + if (result == NULL) + return result; + key = PyLong_FromVoidPtr(result); + } else if (PyType_Check(cls)) { + typ = (PyTypeObject *)cls; + buf = alloca(strlen(typ->tp_name) + 3 + 1); + sprintf(buf, "LP_%s", typ->tp_name); + result = PyObject_CallFunction((PyObject *)Py_TYPE(&Pointer_Type), + "s(O){sO}", + buf, + &Pointer_Type, + "_type_", cls); + if (result == NULL) + return result; + Py_INCREF(cls); + key = cls; + } else { + PyErr_SetString(PyExc_TypeError, "must be a ctypes type"); + return NULL; + } + if (-1 == PyDict_SetItem(_pointer_type_cache, key, result)) { + Py_DECREF(result); + Py_DECREF(key); + return NULL; + } + Py_DECREF(key); + return result; +} + +static PyObject * +pointer(PyObject *self, PyObject *arg) +{ + PyObject *result; + PyObject *typ; + + typ = PyDict_GetItem(_pointer_type_cache, (PyObject *)Py_TYPE(arg)); + if (typ) + return PyObject_CallFunctionObjArgs(typ, arg, NULL); + typ = POINTER(NULL, (PyObject *)Py_TYPE(arg)); + if (typ == NULL) + return NULL; + result = PyObject_CallFunctionObjArgs(typ, arg, NULL); + Py_DECREF(typ); + return result; +} + PyMethodDef module_methods[] = { + {"POINTER", POINTER, METH_O }, + {"pointer", pointer, METH_O }, {"_unpickle", unpickle, METH_VARARGS }, {"resize", resize, METH_VARARGS, "Resize the memory buffer of a ctypes instance"}, #ifdef CTYPES_UNICODE Modified: python/branches/py3k/Modules/_ctypes/ctypes.h ============================================================================== --- python/branches/py3k/Modules/_ctypes/ctypes.h (original) +++ python/branches/py3k/Modules/_ctypes/ctypes.h Mon Apr 14 18:17:33 2008 @@ -342,6 +342,7 @@ /* XXX better name needed! */ extern int IsSimpleSubType(PyObject *obj); +extern PyObject *_pointer_type_cache; #ifdef MS_WIN32 extern PyObject *ComError; From buildbot at python.org Mon Apr 14 18:48:32 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 16:48:32 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo trunk Message-ID: <20080414164832.B51C01E400B@bag.python.org> The Buildbot has detected a new failure of x86 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%20trunk/builds/3422 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Mon Apr 14 18:54:05 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 16:54:05 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080414165405.2505D1E400B@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%20trunk/builds/720 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,thomas.heller BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ctypes make: *** [buildbottest] Error 1 sincerely, -The Buildbot From guido at python.org Mon Apr 14 20:28:33 2008 From: guido at python.org (Guido van Rossum) Date: Mon, 14 Apr 2008 11:28:33 -0700 Subject: [Python-checkins] r62330 - python/trunk/.bzrignore In-Reply-To: <1afaf6160804131648i709fca67xb0e0dde52abfae71@mail.gmail.com> References: <20080413204003.BD20B1E400A@bag.python.org> <1224F54E-F639-40F1-9A19-73F6191E0299@acm.org> <1afaf6160804131648i709fca67xb0e0dde52abfae71@mail.gmail.com> Message-ID: Benjamin, I urge you to use your powers to submit changes to subversion more carefully. While this one is on the fence, it's really the wrong way around to check something in and then get feedback on it. Maybe some other open source projects do it that way, but Python doesn't. If you're not *absolutely* sure that something is non-controversial, please have it reviewed by a more senior developer first, or bring it up for discussion on python-dev. --Guido On Sun, Apr 13, 2008 at 4:48 PM, Benjamin Peterson wrote: > On Sun, Apr 13, 2008 at 6:26 PM, Fred Drake wrote: > > On Apr 13, 2008, at 7:13 PM, Brett Cannon wrote: > > > > > This case could be handled by adding the file to the bzr repository > > and then naming it in the svn:ignore property; I'd be fine with the > > file being named there. > Then those using bzr-svn wouldn't benefit from it. > > > > -- > Cheers, > Benjamin Peterson > > > _______________________________________________ > Python-checkins mailing list > Python-checkins at python.org > http://mail.python.org/mailman/listinfo/python-checkins > -- --Guido van Rossum (home page: http://www.python.org/~guido/) From guido at python.org Mon Apr 14 21:10:34 2008 From: guido at python.org (Guido van Rossum) Date: Mon, 14 Apr 2008 12:10:34 -0700 Subject: [Python-checkins] r62303 - in python/trunk: Doc/library/warnings.rst Include/Python.h Include/pyerrors.h Include/sysmodule.h Include/traceback.h Include/warnings.h Lib/test/test_support.py Lib/test/test_warnings.py Lib/warnings.py Makefile.pre.in Message-ID: On Sat, Apr 12, 2008 at 4:44 PM, brett.cannon wrote: > Author: brett.cannon > Date: Sun Apr 13 01:44:07 2008 > New Revision: 62303 > > Log: > Re-implement the 'warnings' module in C. This allows for usage of the > 'warnings' code in places where it was previously not possible (e.g., the > parser). It could also potentially lead to a speed-up in interpreter start-up > if the C version of the code (_warnings) is imported over the use of the > Python version in key places. > > Closes issue #1631171. This was originally Neal's code, right? I think this is really cool. It's also ironic that we're moving warnings.py to C, and we're also considering moving import.c to Python... -- --Guido van Rossum (home page: http://www.python.org/~guido/) From python-checkins at python.org Mon Apr 14 21:55:41 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Mon, 14 Apr 2008 21:55:41 +0200 (CEST) Subject: [Python-checkins] r62340 - in python/trunk: PC/VC6/pythoncore.dsp PC/VS7.1/pythoncore.vcproj PC/VS8.0/pythoncore.vcproj PCbuild/pythoncore.vcproj Message-ID: <20080414195541.18A131E4005@bag.python.org> Author: amaury.forgeotdarc Date: Mon Apr 14 21:55:40 2008 New Revision: 62340 Log: Update project files for all Windows supported compilers Modified: python/trunk/PC/VC6/pythoncore.dsp python/trunk/PC/VS7.1/pythoncore.vcproj python/trunk/PC/VS8.0/pythoncore.vcproj python/trunk/PCbuild/pythoncore.vcproj Modified: python/trunk/PC/VC6/pythoncore.dsp ============================================================================== --- python/trunk/PC/VC6/pythoncore.dsp (original) +++ python/trunk/PC/VC6/pythoncore.dsp Mon Apr 14 21:55:40 2008 @@ -197,6 +197,10 @@ # End Source File # Begin Source File +SOURCE=..\..\Python\_warnings.c +# End Source File +# Begin Source File + SOURCE=..\..\Python\asdl.c # End Source File # Begin Source File Modified: python/trunk/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/trunk/PC/VS7.1/pythoncore.vcproj (original) +++ python/trunk/PC/VS7.1/pythoncore.vcproj Mon Apr 14 21:55:40 2008 @@ -413,6 +413,9 @@ RelativePath="..\..\Modules\arraymodule.c"> + + + + Modified: python/trunk/PCbuild/pythoncore.vcproj ============================================================================== --- python/trunk/PCbuild/pythoncore.vcproj (original) +++ python/trunk/PCbuild/pythoncore.vcproj Mon Apr 14 21:55:40 2008 @@ -1615,6 +1615,10 @@ Name="Python" > + + @@ -1778,10 +1782,6 @@ RelativePath="..\Python\traceback.c" > - - Author: amaury.forgeotdarc Date: Mon Apr 14 22:07:48 2008 New Revision: 62341 Log: Correct a refleak found by "regrtest.py -R:: test_structmembers" Some other minor updates in _warnings.c: - make a function static - rename a shadowing local variable Modified: python/trunk/Python/_warnings.c Modified: python/trunk/Python/_warnings.c ============================================================================== --- python/trunk/Python/_warnings.c (original) +++ python/trunk/Python/_warnings.c Mon Apr 14 22:07:48 2008 @@ -61,7 +61,7 @@ } -PyObject * +static PyObject * get_once_registry(void) { PyObject *registry; @@ -378,16 +378,17 @@ show_warning(filename, lineno, text, category, sourceline); } else { - PyObject *result; + PyObject *res; - result = PyObject_CallFunctionObjArgs(show_fxn, message, category, + res = PyObject_CallFunctionObjArgs(show_fxn, message, category, filename, lineno_obj, Py_None, sourceline ? sourceline: Py_None, NULL); - Py_XDECREF(result); - if (result == NULL) + Py_DECREF(show_fxn); + Py_XDECREF(res); + if (res == NULL) goto cleanup; } } From buildbot at python.org Mon Apr 14 22:25:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 20:25:29 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080414202529.74AAC1E4005@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/304 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Apr 14 22:25:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 20:25:29 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080414202529.D1A991E4011@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/351 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Apr 14 22:47:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 20:47:15 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080414204715.A85E31E4005@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/55 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_collections make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 14 22:51:05 2008 From: python-checkins at python.org (alexandre.vassalotti) Date: Mon, 14 Apr 2008 22:51:05 +0200 (CEST) Subject: [Python-checkins] r62342 - python/branches/py3k/Objects/bytesobject.c Message-ID: <20080414205105.B45C11E4005@bag.python.org> Author: alexandre.vassalotti Date: Mon Apr 14 22:51:05 2008 New Revision: 62342 Log: Improved bytes_extend() to avoid making a full copy of the temporary buffer. This also makes the code slightly cleaner. Modified: python/branches/py3k/Objects/bytesobject.c Modified: python/branches/py3k/Objects/bytesobject.c ============================================================================== --- python/branches/py3k/Objects/bytesobject.c (original) +++ python/branches/py3k/Objects/bytesobject.c Mon Apr 14 22:51:05 2008 @@ -2585,7 +2585,7 @@ static PyObject * bytes_extend(PyBytesObject *self, PyObject *arg) { - PyObject *it, *item, *tmp, *res; + PyObject *it, *item, *bytes_obj; Py_ssize_t buf_size = 0, len = 0; int value; char *buf; @@ -2605,40 +2605,46 @@ /* Try to determine the length of the argument. 32 is abitrary. */ buf_size = _PyObject_LengthHint(arg, 32); - buf = (char *)PyMem_Malloc(buf_size * sizeof(char)); - if (buf == NULL) - return PyErr_NoMemory(); + bytes_obj = PyBytes_FromStringAndSize(NULL, buf_size); + if (bytes_obj == NULL) + return NULL; + buf = PyBytes_AS_STRING(bytes_obj); while ((item = PyIter_Next(it)) != NULL) { if (! _getbytevalue(item, &value)) { Py_DECREF(item); Py_DECREF(it); - PyMem_Free(buf); + Py_DECREF(bytes_obj); return NULL; } buf[len++] = value; Py_DECREF(item); + if (len >= buf_size) { - char *new_buf; buf_size = len + (len >> 1) + 1; - new_buf = (char *)PyMem_Realloc(buf, buf_size * sizeof(char)); - if (new_buf == NULL) { + if (PyBytes_Resize((PyObject *)bytes_obj, buf_size) < 0) { Py_DECREF(it); - PyMem_Free(buf); - return PyErr_NoMemory(); + Py_DECREF(bytes_obj); + return NULL; } - buf = new_buf; + /* Recompute the `buf' pointer, since the resizing operation may + have invalidated it. */ + buf = PyBytes_AS_STRING(bytes_obj); } } Py_DECREF(it); - /* XXX: Is possible to avoid a full copy of the buffer? */ - tmp = PyBytes_FromStringAndSize(buf, len); - res = bytes_extend(self, tmp); - Py_DECREF(tmp); - PyMem_Free(buf); + /* Resize down to exact size. */ + if (PyBytes_Resize((PyObject *)bytes_obj, len) < 0) { + Py_DECREF(bytes_obj); + return NULL; + } - return res; + if (bytes_setslice(self, Py_SIZE(self), Py_SIZE(self), bytes_obj) == -1) + return NULL; + Py_DECREF(bytes_obj); + + Py_RETURN_NONE; } PyDoc_STRVAR(pop__doc__, From python-checkins at python.org Mon Apr 14 22:53:13 2008 From: python-checkins at python.org (alexandre.vassalotti) Date: Mon, 14 Apr 2008 22:53:13 +0200 (CEST) Subject: [Python-checkins] r62343 - python/branches/py3k/Objects/bytesobject.c Message-ID: <20080414205313.C5B431E4005@bag.python.org> Author: alexandre.vassalotti Date: Mon Apr 14 22:53:13 2008 New Revision: 62343 Log: Re-indented bytes_getbuffer() and bytes_releasebuffer() to 4-space indents. Modified: python/branches/py3k/Objects/bytesobject.c Modified: python/branches/py3k/Objects/bytesobject.c ============================================================================== --- python/branches/py3k/Objects/bytesobject.c (original) +++ python/branches/py3k/Objects/bytesobject.c Mon Apr 14 22:53:13 2008 @@ -52,27 +52,27 @@ static int bytes_getbuffer(PyBytesObject *obj, Py_buffer *view, int flags) { - int ret; - void *ptr; - if (view == NULL) { - obj->ob_exports++; - return 0; - } - if (obj->ob_bytes == NULL) - ptr = ""; - else - ptr = obj->ob_bytes; - ret = PyBuffer_FillInfo(view, ptr, Py_SIZE(obj), 0, flags); - if (ret >= 0) { - obj->ob_exports++; - } - return ret; + int ret; + void *ptr; + if (view == NULL) { + obj->ob_exports++; + return 0; + } + if (obj->ob_bytes == NULL) + ptr = ""; + else + ptr = obj->ob_bytes; + ret = PyBuffer_FillInfo(view, ptr, Py_SIZE(obj), 0, flags); + if (ret >= 0) { + obj->ob_exports++; + } + return ret; } static void bytes_releasebuffer(PyBytesObject *obj, Py_buffer *view) { - obj->ob_exports--; + obj->ob_exports--; } static Py_ssize_t From buildbot at python.org Mon Apr 14 23:01:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 21:01:27 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080414210127.7FAD91E4005@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1152 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From lists at cheimes.de Mon Apr 14 23:05:57 2008 From: lists at cheimes.de (Christian Heimes) Date: Mon, 14 Apr 2008 23:05:57 +0200 Subject: [Python-checkins] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: <20080414205105.B45C11E4005@bag.python.org> References: <20080414205105.B45C11E4005@bag.python.org> Message-ID: <4803C735.10100@cheimes.de> alexandre.vassalotti schrieb: > Author: alexandre.vassalotti > Date: Mon Apr 14 22:51:05 2008 > New Revision: 62342 > > Log: > Improved bytes_extend() to avoid making a full copy of the temporary > buffer. This also makes the code slightly cleaner. Changes to Objects/bytesobject.c should be applied to the trunk and merged into the py3k branch via svnmerge.py. We need to agree on a policy how we are going to sync the trunk and py3k for new code like bytesobject.c and io.py. The former is easy because the file is almost identical. The later is going to be hard because 2.6 doesn't have annotations. Collin: How hard is it to write a fixer that removes all annotations from functions? A set of small 3to2 fixers for annotations and metaclasses would make the syncing job much easier. Christian From nnorwitz at gmail.com Mon Apr 14 23:33:43 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 14 Apr 2008 17:33:43 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080414213343.GA26934@python.psfb.org> More important issues: ---------------------- test_structmembers leaked [114, 114, 114] references, sum=342 Less important issues: ---------------------- test_cmd_line leaked [23, -23, 23] references, sum=23 test_popen2 leaked [0, 0, 26] references, sum=26 test_smtplib leaked [0, 3, -3] references, sum=0 test_threadsignals leaked [0, 0, -8] references, sum=-8 test_urllib2_localnet leaked [146, -140, 146] references, sum=152 From buildbot at python.org Mon Apr 14 23:07:59 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 21:07:59 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080414210800.0B6661E4005@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2863 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_smtplib test_socket ====================================================================== FAIL: testInterruptedTimeout (test.test_socket.TCPTimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_socket.py", line 1007, in testInterruptedTimeout self.fail("got Alarm in wrong place") AssertionError: got Alarm in wrong place sincerely, -The Buildbot From collinw at gmail.com Mon Apr 14 23:18:55 2008 From: collinw at gmail.com (Collin Winter) Date: Mon, 14 Apr 2008 14:18:55 -0700 Subject: [Python-checkins] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: <4803C735.10100@cheimes.de> References: <20080414205105.B45C11E4005@bag.python.org> <4803C735.10100@cheimes.de> Message-ID: <43aa6ff70804141418w414cbe0bl8eb82ea77e8559a1@mail.gmail.com> On Mon, Apr 14, 2008 at 2:05 PM, Christian Heimes wrote: > alexandre.vassalotti schrieb: > > > Author: alexandre.vassalotti > > Date: Mon Apr 14 22:51:05 2008 > > New Revision: 62342 > > > > Log: > > Improved bytes_extend() to avoid making a full copy of the temporary > > buffer. This also makes the code slightly cleaner. > > Changes to Objects/bytesobject.c should be applied to the trunk and > merged into the py3k branch via svnmerge.py. > > We need to agree on a policy how we are going to sync the trunk and py3k > for new code like bytesobject.c and io.py. The former is easy because > the file is almost identical. The later is going to be hard because 2.6 > doesn't have annotations. > > Collin: > How hard is it to write a fixer that removes all annotations from > functions? A set of small 3to2 fixers for annotations and metaclasses > would make the syncing job much easier. It should be pretty easy. I'm working on a 2to3 metaclass fixer, which could provide guidance for a 3to2 fixer. Do we want to take this opportunity to create a real 3to2 project in the sandbox? If so, I'd like to refactor lib2to3 into its own project, then import that into 2to3 and 3to2. I can do the work. Collin From buildbot at python.org Mon Apr 14 23:21:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 21:21:17 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080414212117.7BE051E4011@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%203.0/builds/35 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: alexandre.vassalotti BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_calendar test_email test_mailbox make: *** [buildbottest] Error 1 sincerely, -The Buildbot From alexandre at peadrop.com Mon Apr 14 23:21:16 2008 From: alexandre at peadrop.com (Alexandre Vassalotti) Date: Mon, 14 Apr 2008 17:21:16 -0400 Subject: [Python-checkins] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: <4803C735.10100@cheimes.de> References: <20080414205105.B45C11E4005@bag.python.org> <4803C735.10100@cheimes.de> Message-ID: On Mon, Apr 14, 2008 at 5:05 PM, Christian Heimes wrote: > alexandre.vassalotti schrieb: > > > Author: alexandre.vassalotti > > Date: Mon Apr 14 22:51:05 2008 > > New Revision: 62342 > > > > Log: > > Improved bytes_extend() to avoid making a full copy of the temporary > > buffer. This also makes the code slightly cleaner. > > Changes to Objects/bytesobject.c should be applied to the trunk and > merged into the py3k branch via svnmerge.py. > Sorry, I didn't know that bytesobject.c was backported to 2.6. Should I revert the commit and commit it to 2.6 instead? Thanks for the note, -- Alexandre From martin at v.loewis.de Mon Apr 14 23:26:26 2008 From: martin at v.loewis.de (=?ISO-8859-1?Q?=22Martin_v=2E_L=F6wis=22?=) Date: Mon, 14 Apr 2008 23:26:26 +0200 Subject: [Python-checkins] [Python-Dev] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: <43aa6ff70804141418w414cbe0bl8eb82ea77e8559a1@mail.gmail.com> References: <20080414205105.B45C11E4005@bag.python.org> <4803C735.10100@cheimes.de> <43aa6ff70804141418w414cbe0bl8eb82ea77e8559a1@mail.gmail.com> Message-ID: <4803CC02.8060400@v.loewis.de> > Do we want to take this opportunity to create a real 3to2 project in > the sandbox? If so, I'd like to refactor lib2to3 into its own project, > then import that into 2to3 and 3to2. I can do the work. In that case, I would propose that the copy in the Python trunk becomes official, and the other copies use svn:externals, or merge tracking. Regards, Martin From python-checkins at python.org Mon Apr 14 23:30:21 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 14 Apr 2008 23:30:21 +0200 (CEST) Subject: [Python-checkins] r62344 - in python/branches/py3k: Doc/library/io.rst Lib/io.py Message-ID: <20080414213021.BB63E1E4012@bag.python.org> Author: benjamin.peterson Date: Mon Apr 14 23:30:21 2008 New Revision: 62344 Log: Fix problems in the io docs noted by Alexandre Vassalotti Modified: python/branches/py3k/Doc/library/io.rst python/branches/py3k/Lib/io.py Modified: python/branches/py3k/Doc/library/io.rst ============================================================================== --- python/branches/py3k/Doc/library/io.rst (original) +++ python/branches/py3k/Doc/library/io.rst Mon Apr 14 23:30:21 2008 @@ -437,12 +437,12 @@ .. method:: read1() - In :class:`BytesIO`, this is the same as :meth:`read()`. + In :class:`BytesIO`, this is the same as :meth:`read`. .. method:: truncate([pos]) Truncate the file to at most *pos* bytes. *pos* defaults to the current - stream position, as returned by :meth:`tell()`. + stream position, as returned by :meth:`tell`. .. class:: BufferedReader(raw[, buffer_size]) Modified: python/branches/py3k/Lib/io.py ============================================================================== --- python/branches/py3k/Lib/io.py (original) +++ python/branches/py3k/Lib/io.py Mon Apr 14 23:30:21 2008 @@ -1,5 +1,4 @@ -""" -The io module provides the Python interfaces to stream handling. The +"""The io module provides the Python interfaces to stream handling. The builtin open function is defined in this module. At the top of the I/O hierarchy is the abstract base class IOBase. It @@ -78,8 +77,7 @@ def open(file, mode="r", buffering=None, encoding=None, errors=None, newline=None, closefd=True): - r""" - Open file and return a stream. If the file cannot be opened, an + r"""Open file and return a stream. If the file cannot be opened, an IOError is raised. file is either a string giving the name (and the path if the file @@ -287,8 +285,7 @@ class IOBase(metaclass=abc.ABCMeta): - """ - The abstract base class for all I/O classes, acting on streams of + """The abstract base class for all I/O classes, acting on streams of bytes. There is no public constructor. This class provides dummy implementations for many methods that @@ -793,7 +790,7 @@ return bytes(b) def read1(self, n): - """In BytesIO, this is the same as read. + """This is the same as read. """ return self.read(n) From collinw at gmail.com Mon Apr 14 23:35:16 2008 From: collinw at gmail.com (Collin Winter) Date: Mon, 14 Apr 2008 14:35:16 -0700 Subject: [Python-checkins] [Python-Dev] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: <4803CC02.8060400@v.loewis.de> References: <20080414205105.B45C11E4005@bag.python.org> <4803C735.10100@cheimes.de> <43aa6ff70804141418w414cbe0bl8eb82ea77e8559a1@mail.gmail.com> <4803CC02.8060400@v.loewis.de> Message-ID: <43aa6ff70804141435h2d487790u70e4fed0c7cfbdee@mail.gmail.com> On Mon, Apr 14, 2008 at 2:26 PM, "Martin v. L?wis" wrote: > > Do we want to take this opportunity to create a real 3to2 project in > > the sandbox? If so, I'd like to refactor lib2to3 into its own project, > > then import that into 2to3 and 3to2. I can do the work. > > In that case, I would propose that the copy in the Python trunk becomes > official, and the other copies use svn:externals, or merge tracking. Can do. From lists at cheimes.de Mon Apr 14 23:48:03 2008 From: lists at cheimes.de (Christian Heimes) Date: Mon, 14 Apr 2008 23:48:03 +0200 Subject: [Python-checkins] r62342 - python/branches/py3k/Objects/bytesobject.c In-Reply-To: References: <20080414205105.B45C11E4005@bag.python.org> <4803C735.10100@cheimes.de> Message-ID: <4803D113.20000@cheimes.de> Alexandre Vassalotti schrieb: > Sorry, I didn't know that bytesobject.c was backported to 2.6. Should > I revert the commit and commit it to 2.6 instead? You can keep the chances and backport them manually. I don't think you have to revert the checkins. Christian From buildbot at python.org Mon Apr 14 23:51:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 14 Apr 2008 21:51:15 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080414215115.E67681E4013@bag.python.org> The Buildbot has detected a new failure of amd64 XP 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%203.0/builds/784 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Tue Apr 15 00:40:08 2008 From: python-checkins at python.org (alexandre.vassalotti) Date: Tue, 15 Apr 2008 00:40:08 +0200 (CEST) Subject: [Python-checkins] r62345 - python/trunk/Objects/bytesobject.c Message-ID: <20080414224008.700751E4005@bag.python.org> Author: alexandre.vassalotti Date: Tue Apr 15 00:40:08 2008 New Revision: 62345 Log: Backport manually r62342 from the py3k branch to the trunk. Modified: python/trunk/Objects/bytesobject.c Modified: python/trunk/Objects/bytesobject.c ============================================================================== --- python/trunk/Objects/bytesobject.c (original) +++ python/trunk/Objects/bytesobject.c Tue Apr 15 00:40:08 2008 @@ -2659,7 +2659,7 @@ static PyObject * bytes_extend(PyBytesObject *self, PyObject *arg) { - PyObject *it, *item, *tmp, *res; + PyObject *it, *item, *bytes_obj; Py_ssize_t buf_size = 0, len = 0; int value; char *buf; @@ -2679,40 +2679,46 @@ /* Try to determine the length of the argument. 32 is abitrary. */ buf_size = _PyObject_LengthHint(arg, 32); - buf = (char *)PyMem_Malloc(buf_size * sizeof(char)); - if (buf == NULL) - return PyErr_NoMemory(); + bytes_obj = PyBytes_FromStringAndSize(NULL, buf_size); + if (bytes_obj == NULL) + return NULL; + buf = PyBytes_AS_STRING(bytes_obj); while ((item = PyIter_Next(it)) != NULL) { if (! _getbytevalue(item, &value)) { Py_DECREF(item); Py_DECREF(it); - PyMem_Free(buf); + Py_DECREF(bytes_obj); return NULL; } buf[len++] = value; Py_DECREF(item); + if (len >= buf_size) { - char *new_buf; buf_size = len + (len >> 1) + 1; - new_buf = (char *)PyMem_Realloc(buf, buf_size * sizeof(char)); - if (new_buf == NULL) { + if (PyBytes_Resize((PyObject *)bytes_obj, buf_size) < 0) { Py_DECREF(it); - PyMem_Free(buf); - return PyErr_NoMemory(); + Py_DECREF(bytes_obj); + return NULL; } - buf = new_buf; + /* Recompute the `buf' pointer, since the resizing operation may + have invalidated it. */ + buf = PyBytes_AS_STRING(bytes_obj); } } Py_DECREF(it); - /* XXX: Is possible to avoid a full copy of the buffer? */ - tmp = PyBytes_FromStringAndSize(buf, len); - res = bytes_extend(self, tmp); - Py_DECREF(tmp); - PyMem_Free(buf); + /* Resize down to exact size. */ + if (PyBytes_Resize((PyObject *)bytes_obj, len) < 0) { + Py_DECREF(bytes_obj); + return NULL; + } - return res; + if (bytes_setslice(self, Py_SIZE(self), Py_SIZE(self), bytes_obj) == -1) + return NULL; + Py_DECREF(bytes_obj); + + Py_RETURN_NONE; } PyDoc_STRVAR(pop__doc__, From python-checkins at python.org Tue Apr 15 00:46:41 2008 From: python-checkins at python.org (alexandre.vassalotti) Date: Tue, 15 Apr 2008 00:46:41 +0200 (CEST) Subject: [Python-checkins] r62346 - python/branches/py3k Message-ID: <20080414224641.7C2261E4005@bag.python.org> Author: alexandre.vassalotti Date: Tue Apr 15 00:46:41 2008 New Revision: 62346 Log: Recorded merge of revisions 62345 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62345 | alexandre.vassalotti | 2008-04-14 18:40:08 -0400 (Mon, 14 Apr 2008) | 2 lines Backport manually r62342 from the py3k branch to the trunk. ........ Modified: python/branches/py3k/ (props changed) From python-checkins at python.org Tue Apr 15 04:24:16 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 15 Apr 2008 04:24:16 +0200 (CEST) Subject: [Python-checkins] r62347 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080415022416.461561E400B@bag.python.org> Author: andrew.kuchling Date: Tue Apr 15 04:24:15 2008 New Revision: 62347 Log: Various items; begin writing the SSL section Modified: python/trunk/Doc/whatsnew/2.6.rst Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Tue Apr 15 04:24:15 2008 @@ -825,7 +825,8 @@ :pep:`3116` - New I/O PEP written by Daniel Stutzbach, Mike Verdone, and Guido van Rossum. - XXX code written by who? + Code by Guido van Rossum, Georg Brandl, Walter Doerwald, + Jeremy Hylton, Martin von Loewis, Tony Lownds, and others. .. ====================================================================== @@ -1096,8 +1097,6 @@ A = foo(bar(A)) -XXX need to find a good motivating example. - .. seealso:: :pep:`3129` - Class Decorators @@ -1854,6 +1853,10 @@ environments. TIPC addresses are 4- or 5-tuples. (Contributed by Alberto Bertogli; :issue:`1646`.) + A new function, :func:`create_connection`, takes an address + and connects to it using an optional timeout value, returning + the connected socket object. + * The base classes in the :mod:`SocketServer` module now support calling a :meth:`handle_timeout` method after a span of inactivity specified by the server's :attr:`timeout` attribute. (Contributed @@ -2042,15 +2045,21 @@ -------------------------------------------------- Bill Janssen made extensive improvements to Python 2.6's support for -SSL. - -XXX use ssl.sslsocket - subclass of socket.socket. +the Secure Sockets Layer by adding a new module, :mod:`ssl`, on top of +the `OpenSSL `__ library. This new module +provides more control over the protocol negotiated, the X.509 +certificates used, and has better support for writing SSL servers (as +opposed to clients) in Python. The existing SSL support in the +:mod:`socket` module hasn't been removed and continues to work, +though it will be removed in Python 3.0. + +To use the new module, first you must create a TCP connection in the +usual way and then pass it to the :func:`ssl.wrap_socket` function. +XXX describe parameters. XXX Can specify if certificate is required, and obtain certificate info by calling getpeercert method. -XXX sslwrap() behaves like socket.ssl - XXX Certain features require the OpenSSL package to be installed, notably the 'openssl' binary. From nnorwitz at gmail.com Tue Apr 15 04:57:08 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 14 Apr 2008 19:57:08 -0700 Subject: [Python-checkins] r62303 - in python/trunk: Doc/library/warnings.rst Include/Python.h Include/pyerrors.h Include/sysmodule.h Include/traceback.h Include/warnings.h Lib/test/test_support.py Lib/test/test_warnings.py Lib/warnings.py Makefile.pre.in In-Reply-To: References: Message-ID: On Mon, Apr 14, 2008 at 12:10 PM, Guido van Rossum wrote: > On Sat, Apr 12, 2008 at 4:44 PM, brett.cannon > wrote: > > Author: brett.cannon > > Date: Sun Apr 13 01:44:07 2008 > > New Revision: 62303 > > > > Log: > > Re-implement the 'warnings' module in C. This allows for usage of the > > 'warnings' code in places where it was previously not possible (e.g., the > > parser). It could also potentially lead to a speed-up in interpreter start-up > > if the C version of the code (_warnings) is imported over the use of the > > Python version in key places. > > > > Closes issue #1631171. > > This was originally Neal's code, right? I think this is really cool. Yeah, this was the code I started a long time ago. Brett probably wrote more of it by the time he checked it in though. > It's also ironic that we're moving warnings.py to C, and we're also > considering moving import.c to Python... Yeah, isn't it? Now we need to find someone to fix all the warnings under Parser. Also, we should benchmark startup performance. We might be able to eliminate some more modules and have a faster startup. n From python-checkins at python.org Tue Apr 15 05:46:22 2008 From: python-checkins at python.org (neal.norwitz) Date: Tue, 15 Apr 2008 05:46:22 +0200 (CEST) Subject: [Python-checkins] r62348 - in python/trunk/Objects: abstract.c descrobject.c Message-ID: <20080415034622.431D71E400B@bag.python.org> Author: neal.norwitz Date: Tue Apr 15 05:46:21 2008 New Revision: 62348 Log: Prevent namespace pollution, add static for internal functions Modified: python/trunk/Objects/abstract.c python/trunk/Objects/descrobject.c Modified: python/trunk/Objects/abstract.c ============================================================================== --- python/trunk/Objects/abstract.c (original) +++ python/trunk/Objects/abstract.c Tue Apr 15 05:46:21 2008 @@ -446,7 +446,7 @@ } -void +static void _add_one_to_index_F(int nd, Py_ssize_t *index, Py_ssize_t *shape) { int k; @@ -462,7 +462,7 @@ } } -void +static void _add_one_to_index_C(int nd, Py_ssize_t *index, Py_ssize_t *shape) { int k; Modified: python/trunk/Objects/descrobject.c ============================================================================== --- python/trunk/Objects/descrobject.c (original) +++ python/trunk/Objects/descrobject.c Tue Apr 15 05:46:21 2008 @@ -1116,7 +1116,7 @@ PyDoc_STRVAR(getter_doc, "Descriptor to change the getter on a property."); -PyObject * +static PyObject * property_getter(PyObject *self, PyObject *getter) { return property_copy(self, getter, NULL, NULL, NULL); @@ -1126,7 +1126,7 @@ PyDoc_STRVAR(setter_doc, "Descriptor to change the setter on a property."); -PyObject * +static PyObject * property_setter(PyObject *self, PyObject *setter) { return property_copy(self, NULL, setter, NULL, NULL); @@ -1136,7 +1136,7 @@ PyDoc_STRVAR(deleter_doc, "Descriptor to change the deleter on a property."); -PyObject * +static PyObject * property_deleter(PyObject *self, PyObject *deleter) { return property_copy(self, NULL, NULL, deleter, NULL); From python-checkins at python.org Tue Apr 15 08:43:15 2008 From: python-checkins at python.org (neal.norwitz) Date: Tue, 15 Apr 2008 08:43:15 +0200 (CEST) Subject: [Python-checkins] r62349 - in python/branches/py3k: .bzrignore Doc/whatsnew/2.6.rst Include/graminit.h Lib/test/test_warnings.py Modules/main.c Objects/descrobject.c PC/VC6/pythoncore.dsp PC/VS7.1/pythoncore.vcproj PC/VS8.0/pythoncore.vcproj PCbuild/pythoncore.vcproj Parser/printgrammar.c Python/_warnings.c Python/getopt.c Python/graminit.c Message-ID: <20080415064315.238771E400B@bag.python.org> Author: neal.norwitz Date: Tue Apr 15 08:43:13 2008 New Revision: 62349 Log: Merged revisions 61440-61441,61443,61445-61448,61451-61452,61455-61457,61459-61464,61466-61467,61469-61470,61476-61477,61479,61481-61482,61485,61487,61490,61493-61494,61497,61499-61502,61505-61506,61508,61511-61514,61519,61521-61522,61530-61531,61533-61537,61541-61555,61557-61558,61561-61562,61566-61569,61572-61574,61578-61579,61583-61584,61588-61589,61592,61594,61598-61601,61603-61604,61607-61612,61617,61619-61620,61624,61626,61628-61630,61635-61638,61640-61643,61645,61648,61653-61655,61659-61662,61664,61666,61668-61671,61673,61675,61679-61680,61682,61685-61686,61689-61695,61697-61699,61701-61703,61706,61710,61713,61717,61723,61726-61730,61736,61738,61740,61742,61745-61752,61754-61760,61762-61764,61768,61770-61772,61774-61775,61784-61787,61789-61792,61794-61795,61797-61806,61808-61809,61811-61812,61814-61819,61824,61826-61833,61835-61840,61843-61845,61848,61850,61854-61862,61865-61866,61868,61872-61873,61876-61877,61883-61888,61890-61891,61893-61899,61901-61903,61905-61912,61914,61917,61920-61921,61927,61930,61932-61934,61939,61941-61942,61944-61951,61955,61960-61963,61980,61982-61983,61991,61994-61996,62001-62003,62008-62010,62016-62017,62022,62024,62027,62031-62034,62041,62045-62046,62055-62058,62060-62066,62068-62074,62076-62079,62081-62083,62086-62089,62092-62094,62098,62101,62104,62106-62109,62115-62122,62124-62125,62128,62130,62132,62134-62135,62137,62139-62140,62144,62146,62151,62155,62157,62162-62166,62171-62172,62175-62176,62178,62181-62186,62188-62192,62196,62200-62203,62206,62211-62213,62215-62218,62222,62224-62226,62228,62232,62236,62240-62245,62248,62250-62254,62256-62258,62262,62264-62265,62267-62270,62272-62276,62280-62288,62291-62292,62299-62301,62307,62312,62316-62318,62322-62331,62333-62337,62339-62344,62346-62348 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62323 | brett.cannon | 2008-04-13 10:09:43 -0700 (Sun, 13 Apr 2008) | 3 lines Add an explicit check for output in a test to try to diagnose a failure on Windows. ........ r62324 | brett.cannon | 2008-04-13 10:41:31 -0700 (Sun, 13 Apr 2008) | 3 lines Fix spliting on colons on Windows machines with a file path by limiting the number of splits. ........ r62329 | benjamin.peterson | 2008-04-13 13:35:56 -0700 (Sun, 13 Apr 2008) | 2 lines #2627 Let it be known what pgen generates ........ r62330 | benjamin.peterson | 2008-04-13 13:40:03 -0700 (Sun, 13 Apr 2008) | 2 lines Added an ignore file for Bazaar #2510 ........ r62331 | georg.brandl | 2008-04-13 13:50:29 -0700 (Sun, 13 Apr 2008) | 2 lines Improve -X error message. ........ r62334 | andrew.kuchling | 2008-04-13 15:39:12 -0700 (Sun, 13 Apr 2008) | 1 line Add example ........ r62340 | amaury.forgeotdarc | 2008-04-14 12:55:40 -0700 (Mon, 14 Apr 2008) | 2 lines Update project files for all Windows supported compilers ........ r62341 | amaury.forgeotdarc | 2008-04-14 13:07:48 -0700 (Mon, 14 Apr 2008) | 6 lines Correct a refleak found by "regrtest.py -R:: test_structmembers" Some other minor updates in _warnings.c: - make a function static - rename a shadowing local variable ........ r62347 | andrew.kuchling | 2008-04-14 19:24:15 -0700 (Mon, 14 Apr 2008) | 1 line Various items; begin writing the SSL section ........ r62348 | neal.norwitz | 2008-04-14 20:46:21 -0700 (Mon, 14 Apr 2008) | 1 line Prevent namespace pollution, add static for internal functions ........ Added: python/branches/py3k/.bzrignore - copied unchanged from r62331, /python/trunk/.bzrignore Modified: python/branches/py3k/ (props changed) python/branches/py3k/Doc/whatsnew/2.6.rst python/branches/py3k/Include/graminit.h python/branches/py3k/Lib/test/test_warnings.py python/branches/py3k/Modules/main.c python/branches/py3k/Objects/descrobject.c python/branches/py3k/PC/VC6/pythoncore.dsp python/branches/py3k/PC/VS7.1/pythoncore.vcproj python/branches/py3k/PC/VS8.0/pythoncore.vcproj python/branches/py3k/PCbuild/pythoncore.vcproj python/branches/py3k/Parser/printgrammar.c python/branches/py3k/Python/_warnings.c python/branches/py3k/Python/getopt.c python/branches/py3k/Python/graminit.c Modified: python/branches/py3k/Doc/whatsnew/2.6.rst ============================================================================== --- python/branches/py3k/Doc/whatsnew/2.6.rst (original) +++ python/branches/py3k/Doc/whatsnew/2.6.rst Tue Apr 15 08:43:13 2008 @@ -736,7 +736,13 @@ to become Unicode strings. This means that ``\u`` escape sequences can be used to include Unicode characters. -XXX give example + from __future__ import unicode_literals + + s = ('\u751f\u3080\u304e\u3000\u751f\u3054' + '\u3081\u3000\u751f\u305f\u307e\u3054') + + print len(s) # 12 Unicode characters + .. seealso:: @@ -819,7 +825,8 @@ :pep:`3116` - New I/O PEP written by Daniel Stutzbach, Mike Verdone, and Guido van Rossum. - XXX code written by who? + Code by Guido van Rossum, Georg Brandl, Walter Doerwald, + Jeremy Hylton, Martin von Loewis, Tony Lownds, and others. .. ====================================================================== @@ -1090,8 +1097,6 @@ A = foo(bar(A)) -XXX need to find a good motivating example. - .. seealso:: :pep:`3129` - Class Decorators @@ -1848,6 +1853,10 @@ environments. TIPC addresses are 4- or 5-tuples. (Contributed by Alberto Bertogli; :issue:`1646`.) + A new function, :func:`create_connection`, takes an address + and connects to it using an optional timeout value, returning + the connected socket object. + * The base classes in the :mod:`SocketServer` module now support calling a :meth:`handle_timeout` method after a span of inactivity specified by the server's :attr:`timeout` attribute. (Contributed @@ -2036,15 +2045,21 @@ -------------------------------------------------- Bill Janssen made extensive improvements to Python 2.6's support for -SSL. - -XXX use ssl.sslsocket - subclass of socket.socket. +the Secure Sockets Layer by adding a new module, :mod:`ssl`, on top of +the `OpenSSL `__ library. This new module +provides more control over the protocol negotiated, the X.509 +certificates used, and has better support for writing SSL servers (as +opposed to clients) in Python. The existing SSL support in the +:mod:`socket` module hasn't been removed and continues to work, +though it will be removed in Python 3.0. + +To use the new module, first you must create a TCP connection in the +usual way and then pass it to the :func:`ssl.wrap_socket` function. +XXX describe parameters. XXX Can specify if certificate is required, and obtain certificate info by calling getpeercert method. -XXX sslwrap() behaves like socket.ssl - XXX Certain features require the OpenSSL package to be installed, notably the 'openssl' binary. Modified: python/branches/py3k/Include/graminit.h ============================================================================== --- python/branches/py3k/Include/graminit.h (original) +++ python/branches/py3k/Include/graminit.h Tue Apr 15 08:43:13 2008 @@ -1,3 +1,5 @@ +/* Generated by Parser/pgen */ + #define single_input 256 #define file_input 257 #define eval_input 258 Modified: python/branches/py3k/Lib/test/test_warnings.py ============================================================================== --- python/branches/py3k/Lib/test/test_warnings.py (original) +++ python/branches/py3k/Lib/test/test_warnings.py Tue Apr 15 08:43:13 2008 @@ -328,7 +328,8 @@ "Too many newlines in %r" % result) first_line, second_line = result.split('\n', 1) expected_file = os.path.splitext(warning_tests.__file__)[0] + '.py' - path, line, warning_class, message = first_line.split(':') + first_line_parts = first_line.rsplit(':', 3) + path, line, warning_class, message = first_line_parts line = int(line) self.failUnlessEqual(expected_file, path) self.failUnlessEqual(warning_class, ' ' + UserWarning.__name__) Modified: python/branches/py3k/Modules/main.c ============================================================================== --- python/branches/py3k/Modules/main.c (original) +++ python/branches/py3k/Modules/main.c Tue Apr 15 08:43:13 2008 @@ -380,7 +380,7 @@ skipfirstline = 1; break; - /* case 'X': reserved for non-standard arguments */ + /* case 'X': reserved for implementation-specific arguments */ case 'h': case '?': Modified: python/branches/py3k/Objects/descrobject.c ============================================================================== --- python/branches/py3k/Objects/descrobject.c (original) +++ python/branches/py3k/Objects/descrobject.c Tue Apr 15 08:43:13 2008 @@ -1083,7 +1083,7 @@ PyDoc_STRVAR(getter_doc, "Descriptor to change the getter on a property."); -PyObject * +static PyObject * property_getter(PyObject *self, PyObject *getter) { return property_copy(self, getter, NULL, NULL, NULL); @@ -1093,7 +1093,7 @@ PyDoc_STRVAR(setter_doc, "Descriptor to change the setter on a property."); -PyObject * +static PyObject * property_setter(PyObject *self, PyObject *setter) { return property_copy(self, NULL, setter, NULL, NULL); @@ -1103,7 +1103,7 @@ PyDoc_STRVAR(deleter_doc, "Descriptor to change the deleter on a property."); -PyObject * +static PyObject * property_deleter(PyObject *self, PyObject *deleter) { return property_copy(self, NULL, NULL, deleter, NULL); Modified: python/branches/py3k/PC/VC6/pythoncore.dsp ============================================================================== --- python/branches/py3k/PC/VC6/pythoncore.dsp (original) +++ python/branches/py3k/PC/VC6/pythoncore.dsp Tue Apr 15 08:43:13 2008 @@ -193,6 +193,10 @@ # End Source File # Begin Source File +SOURCE=..\..\Python\_warnings.c +# End Source File +# Begin Source File + SOURCE=..\..\Python\asdl.c # End Source File # Begin Source File Modified: python/branches/py3k/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/branches/py3k/PC/VS7.1/pythoncore.vcproj (original) +++ python/branches/py3k/PC/VS7.1/pythoncore.vcproj Tue Apr 15 08:43:13 2008 @@ -410,6 +410,9 @@ RelativePath="..\..\Modules\arraymodule.c"> + + + + Modified: python/branches/py3k/PCbuild/pythoncore.vcproj ============================================================================== --- python/branches/py3k/PCbuild/pythoncore.vcproj (original) +++ python/branches/py3k/PCbuild/pythoncore.vcproj Tue Apr 15 08:43:13 2008 @@ -1587,6 +1587,10 @@ Name="Python" > + + @@ -1746,10 +1750,6 @@ RelativePath="..\Python\traceback.c" > - - g_dfa; for (i = g->g_ndfas; --i >= 0; d++) fprintf(fp, "#define %s %d\n", d->d_name, d->d_type); Modified: python/branches/py3k/Python/_warnings.c ============================================================================== --- python/branches/py3k/Python/_warnings.c (original) +++ python/branches/py3k/Python/_warnings.c Tue Apr 15 08:43:13 2008 @@ -61,7 +61,7 @@ } -PyObject * +static PyObject * get_once_registry(void) { PyObject *registry; @@ -378,16 +378,17 @@ show_warning(filename, lineno, text, category, sourceline); } else { - PyObject *result; + PyObject *res; - result = PyObject_CallFunctionObjArgs(show_fxn, message, category, + res = PyObject_CallFunctionObjArgs(show_fxn, message, category, filename, lineno_obj, Py_None, sourceline ? sourceline: Py_None, NULL); - Py_XDECREF(result); - if (result == NULL) + Py_DECREF(show_fxn); + Py_XDECREF(res); + if (res == NULL) goto cleanup; } } Modified: python/branches/py3k/Python/getopt.c ============================================================================== --- python/branches/py3k/Python/getopt.c (original) +++ python/branches/py3k/Python/getopt.c Tue Apr 15 08:43:13 2008 @@ -91,7 +91,7 @@ if (option == 'X') { fprintf(stderr, - "-X is reserved for non-standard arguments\n"); + "-X is reserved for implementation-specific arguments\n"); return '_'; } Modified: python/branches/py3k/Python/graminit.c ============================================================================== --- python/branches/py3k/Python/graminit.c (original) +++ python/branches/py3k/Python/graminit.c Tue Apr 15 08:43:13 2008 @@ -1,3 +1,5 @@ +/* Generated by Parser/pgen */ + #include "pgenheaders.h" #include "grammar.h" static arc arcs_0_0[3] = { From buildbot at python.org Tue Apr 15 08:57:48 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 15 Apr 2008 06:57:48 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo 3.0 Message-ID: <20080415065748.352641E400B@bag.python.org> The Buildbot has detected a new failure of x86 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%203.0/builds/799 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'0002-0002-0002-0002-0002' Traceback (most recent call last): File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'2000-2000-2000-2000-2000' Traceback (most recent call last): File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 89, in writerThread self._writerThread(*args, **kwargs) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/bsddb/test/test_thread.py", line 278, in _writerThread self.assertEqual(data, self.makeData(key)) File "/home/buildslave/python-trunk/3.0.norwitz-x86/build/Lib/unittest.py", line 325, in failUnlessEqual raise self.failureException(msg or '%r != %r' % (first, second)) AssertionError: None != b'1000-1000-1000-1000-1000' make: *** [buildbottest] Unknown signal 32 sincerely, -The Buildbot From buildbot at python.org Tue Apr 15 09:13:00 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 15 Apr 2008 07:13:00 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080415071300.A81601E400B@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%203.0/builds/38 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: neal.norwitz BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_calendar make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Apr 15 12:25:32 2008 From: python-checkins at python.org (nick.coghlan) Date: Tue, 15 Apr 2008 12:25:32 +0200 (CEST) Subject: [Python-checkins] r62350 - in python/trunk: Doc/library/pkgutil.rst Lib/pkgutil.py Misc/NEWS Message-ID: <20080415102532.1CBF21E4011@bag.python.org> Author: nick.coghlan Date: Tue Apr 15 12:25:31 2008 New Revision: 62350 Log: Issue 2439: add pkgutils.get_data() as a convenience wrapper for the PEP 302 get_data() API (contributed by Paul Moore) Modified: python/trunk/Doc/library/pkgutil.rst python/trunk/Lib/pkgutil.py python/trunk/Misc/NEWS Modified: python/trunk/Doc/library/pkgutil.rst ============================================================================== --- python/trunk/Doc/library/pkgutil.rst (original) +++ python/trunk/Doc/library/pkgutil.rst Tue Apr 15 12:25:31 2008 @@ -8,7 +8,7 @@ .. versionadded:: 2.3 -This module provides a single function: +This module provides functions to manipulate packages: .. function:: extend_path(path, name) @@ -41,3 +41,24 @@ this function to raise an exception (in line with :func:`os.path.isdir` behavior). +.. function:: get_data(package, resource) + + Get a resource from a package. + + This is a wrapper round the PEP 302 loader :func:`get_data` API. The package + argument should be the name of a package, in standard module format + (foo.bar). The resource argument should be in the form of a relative + filename, using ``/`` as the path separator. The parent directory name + ``..`` is not allowed, and nor is a rooted name (starting with a ``/``). + + The function returns a binary string, which is the contents of the + specified resource. + + For packages located in the filesystem, which have already been imported, + this is the rough equivalent of:: + + d = os.path.dirname(sys.modules[package].__file__) + data = open(os.path.join(d, resource), 'rb').read() + + If the package cannot be located or loaded, or it uses a PEP 302 loader + which does not support :func:`get_data`, then None is returned. Modified: python/trunk/Lib/pkgutil.py ============================================================================== --- python/trunk/Lib/pkgutil.py (original) +++ python/trunk/Lib/pkgutil.py Tue Apr 15 12:25:31 2008 @@ -544,3 +544,40 @@ f.close() return path + +def get_data(package, resource): + """Get a resource from a package. + + This is a wrapper round the PEP 302 loader get_data API. The package + argument should be the name of a package, in standard module format + (foo.bar). The resource argument should be in the form of a relative + filename, using '/' as the path separator. The parent directory name '..' + is not allowed, and nor is a rooted name (starting with a '/'). + + The function returns a binary string, which is the contents of the + specified resource. + + For packages located in the filesystem, which have already been imported, + this is the rough equivalent of + + d = os.path.dirname(sys.modules[package].__file__) + data = open(os.path.join(d, resource), 'rb').read() + + If the package cannot be located or loaded, or it uses a PEP 302 loader + which does not support get_data(), then None is returned. + """ + + loader = get_loader(package) + if loader is None or not hasattr(loader, 'get_data'): + return None + mod = sys.modules.get(package) or loader.load_module(package) + if mod is None or not hasattr(mod, '__file__'): + return None + + # Modify the resource name to be compatible with the loader.get_data + # signature - an os.path format "filename" starting with the dirname of + # the package's __file__ + parts = resource.split('/') + parts.insert(0, os.path.dirname(mod.__file__)) + resource_name = os.path.join(*parts) + return loader.get_data(resource_name) Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Apr 15 12:25:31 2008 @@ -29,6 +29,9 @@ Library ------- +- Issue #2439: Added new function pkgutil.get_data(), which is a + convenience wrapper for the PEP 302 get_data() API. + - Issue #2616: The ctypes.pointer() and ctypes.POINTER() functions are now implemented in C for better performance. From python-checkins at python.org Tue Apr 15 12:28:15 2008 From: python-checkins at python.org (nick.coghlan) Date: Tue, 15 Apr 2008 12:28:15 +0200 (CEST) Subject: [Python-checkins] r62351 - python/trunk/Lib/test/test_pkgutil.py Message-ID: <20080415102815.4153C1E4011@bag.python.org> Author: nick.coghlan Date: Tue Apr 15 12:28:14 2008 New Revision: 62351 Log: Add test file missing from rev 62350 Added: python/trunk/Lib/test/test_pkgutil.py (contents, props changed) Added: python/trunk/Lib/test/test_pkgutil.py ============================================================================== --- (empty file) +++ python/trunk/Lib/test/test_pkgutil.py Tue Apr 15 12:28:14 2008 @@ -0,0 +1,123 @@ +from test.test_support import run_unittest +import unittest +import sys +import imp +import pkgutil +import os +import os.path +import tempfile +import shutil +import zipfile + + + +class PkgutilTests(unittest.TestCase): + + def setUp(self): + self.dirname = tempfile.mkdtemp() + sys.path.insert(0, self.dirname) + + def tearDown(self): + del sys.path[0] + shutil.rmtree(self.dirname) + + def test_getdata_filesys(self): + pkg = 'test_getdata_filesys' + + # Include a LF and a CRLF, to test that binary data is read back + RESOURCE_DATA = 'Hello, world!\nSecond line\r\nThird line' + + # Make a package with some resources + package_dir = os.path.join(self.dirname, pkg) + os.mkdir(package_dir) + # Empty init.py + f = open(os.path.join(package_dir, '__init__.py'), "wb") + f.close() + # Resource files, res.txt, sub/res.txt + f = open(os.path.join(package_dir, 'res.txt'), "wb") + f.write(RESOURCE_DATA) + f.close() + os.mkdir(os.path.join(package_dir, 'sub')) + f = open(os.path.join(package_dir, 'sub', 'res.txt'), "wb") + f.write(RESOURCE_DATA) + f.close() + + # Check we can read the resources + res1 = pkgutil.get_data(pkg, 'res.txt') + self.assertEqual(res1, RESOURCE_DATA) + res2 = pkgutil.get_data(pkg, 'sub/res.txt') + self.assertEqual(res2, RESOURCE_DATA) + + def test_getdata_zipfile(self): + zip = 'test_getdata_zipfile.zip' + pkg = 'test_getdata_zipfile' + + # Include a LF and a CRLF, to test that binary data is read back + RESOURCE_DATA = 'Hello, world!\nSecond line\r\nThird line' + + # Make a package with some resources + zip_file = os.path.join(self.dirname, zip) + z = zipfile.ZipFile(zip_file, 'w') + + # Empty init.py + z.writestr(pkg + '/__init__.py', "") + # Resource files, res.txt, sub/res.txt + z.writestr(pkg + '/res.txt', RESOURCE_DATA) + z.writestr(pkg + '/sub/res.txt', RESOURCE_DATA) + z.close() + + # Check we can read the resources + sys.path.insert(0, zip_file) + res1 = pkgutil.get_data(pkg, 'res.txt') + self.assertEqual(res1, RESOURCE_DATA) + res2 = pkgutil.get_data(pkg, 'sub/res.txt') + self.assertEqual(res2, RESOURCE_DATA) + del sys.path[0] + +class PkgutilPEP302Tests(unittest.TestCase): + + class MyTestLoader(object): + def load_module(self, fullname): + # Create an empty module + mod = sys.modules.setdefault(fullname, imp.new_module(fullname)) + mod.__file__ = "<%s>" % self.__class__.__name__ + mod.__loader__ = self + # Make it a package + mod.__path__ = [] + # Count how many times the module is reloaded + mod.__dict__['loads'] = mod.__dict__.get('loads',0) + 1 + return mod + + def get_data(self, path): + return "Hello, world!" + + class MyTestImporter(object): + def find_module(self, fullname, path=None): + return PkgutilPEP302Tests.MyTestLoader() + + def setUp(self): + sys.meta_path.insert(0, self.MyTestImporter()) + + def tearDown(self): + del sys.meta_path[0] + + def test_getdata_pep302(self): + # Use a dummy importer/loader + self.assertEqual(pkgutil.get_data('foo', 'dummy'), "Hello, world!") + del sys.modules['foo'] + + def test_alreadyloaded(self): + # Ensure that get_data works without reloading - the "loads" module + # variable in the example loader should count how many times a reload + # occurs. + import foo + self.assertEqual(foo.loads, 1) + self.assertEqual(pkgutil.get_data('foo', 'dummy'), "Hello, world!") + self.assertEqual(foo.loads, 1) + del sys.modules['foo'] + +def test_main(): + run_unittest(PkgutilTests, PkgutilPEP302Tests) + +if __name__ == '__main__': + test_main() From buildbot at python.org Tue Apr 15 12:58:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 15 Apr 2008 10:58:30 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080415105831.C0BEA1E4012@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/307 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: nick.coghlan BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket_ssl sincerely, -The Buildbot From python-checkins at python.org Tue Apr 15 13:58:46 2008 From: python-checkins at python.org (benjamin.peterson) Date: Tue, 15 Apr 2008 13:58:46 +0200 (CEST) Subject: [Python-checkins] r62352 - python/trunk/Doc/ACKS.txt Message-ID: <20080415115846.BE84A1E4012@bag.python.org> Author: benjamin.peterson Date: Tue Apr 15 13:58:46 2008 New Revision: 62352 Log: Add myself to Doc/ACKS.txt Modified: python/trunk/Doc/ACKS.txt Modified: python/trunk/Doc/ACKS.txt ============================================================================== --- python/trunk/Doc/ACKS.txt (original) +++ python/trunk/Doc/ACKS.txt Tue Apr 15 13:58:46 2008 @@ -145,6 +145,7 @@ * Harri Pasanen * Bo Peng * Tim Peters + * Benjamin Peterson * Christopher Petrilli * Justin D. Pettit * Chris Phoenix From python-checkins at python.org Tue Apr 15 15:10:07 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 15 Apr 2008 15:10:07 +0200 (CEST) Subject: [Python-checkins] r62353 - in python/trunk/Doc: reference/compound_stmts.rst tutorial/controlflow.rst Message-ID: <20080415131007.ACBEB1E4012@bag.python.org> Author: andrew.kuchling Date: Tue Apr 15 15:10:07 2008 New Revision: 62353 Log: Add *,**,@ to index, as suggested by http://farmdev.com/thoughts/24/what-does-the-def-star-variable-or-def-asterisk-parameter-syntax-do-in-python-/ The right entry type to use isn't clear; operator seems wrong, because *,**,@ aren't being used in expressions here. I put them as 'statement'; 'syntax' might be better. Modified: python/trunk/Doc/reference/compound_stmts.rst python/trunk/Doc/tutorial/controlflow.rst Modified: python/trunk/Doc/reference/compound_stmts.rst ============================================================================== --- python/trunk/Doc/reference/compound_stmts.rst (original) +++ python/trunk/Doc/reference/compound_stmts.rst Tue Apr 15 15:10:07 2008 @@ -424,6 +424,9 @@ The function definition does not execute the function body; this gets executed only when the function is called. +.. index:: + statement: @ + A function definition may be wrapped by one or more :term:`decorator` expressions. Decorator expressions are evaluated when the function is defined, in the scope that contains the function definition. The result must be a callable, which is @@ -464,6 +467,10 @@ penguin.append("property of the zoo") return penguin +.. index:: + statement: * + statement: ** + Function call semantics are described in more detail in section :ref:`calls`. A function call always assigns values to all parameters mentioned in the parameter list, either from position arguments, from keyword arguments, or from default Modified: python/trunk/Doc/tutorial/controlflow.rst ============================================================================== --- python/trunk/Doc/tutorial/controlflow.rst (original) +++ python/trunk/Doc/tutorial/controlflow.rst Tue Apr 15 15:10:07 2008 @@ -437,6 +437,9 @@ Arbitrary Argument Lists ------------------------ +.. index:: + statement: * + Finally, the least frequently used option is to specify that a function can be called with an arbitrary number of arguments. These arguments will be wrapped up in a tuple. Before the variable number of arguments, zero or more normal @@ -464,6 +467,9 @@ >>> range(*args) # call with arguments unpacked from a list [3, 4, 5] +.. index:: + statement: ** + In the same fashion, dictionaries can deliver keyword arguments with the ``**``\ -operator:: From python-checkins at python.org Tue Apr 15 15:10:41 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 15 Apr 2008 15:10:41 +0200 (CEST) Subject: [Python-checkins] r62354 - python/trunk/Doc/tutorial/controlflow.rst Message-ID: <20080415131041.4BEEB1E4012@bag.python.org> Author: andrew.kuchling Date: Tue Apr 15 15:10:41 2008 New Revision: 62354 Log: Typo fix Modified: python/trunk/Doc/tutorial/controlflow.rst Modified: python/trunk/Doc/tutorial/controlflow.rst ============================================================================== --- python/trunk/Doc/tutorial/controlflow.rst (original) +++ python/trunk/Doc/tutorial/controlflow.rst Tue Apr 15 15:10:41 2008 @@ -572,7 +572,7 @@ Making it easy for others to read your code is always a good idea, and adopting a nice coding style helps tremendously for that. -For Python, :pep:`8` has emerged as the style guide that most projects adher to; +For Python, :pep:`8` has emerged as the style guide that most projects adhere to; it promotes a very readable and eye-pleasing coding style. Every Python developer should read it at some point; here are the most important points extracted for you: From sjcourses at gmail.com Mon Apr 14 01:23:52 2008 From: sjcourses at gmail.com (Communication Workshops) Date: Mon, 14 Apr 2008 07:23:52 +0800 Subject: [Python-checkins] SDF Approved Communications Workshops in April/May/June/July Message-ID: <20080413232352953.73955B9B01467F1D@C34342-49909> Efficient Minutes Writing - 21 April ($288) Writing Brilliant Reports, Proposals and Staff Papers - 22 and 23 April ($488) Writing Professional Letters and Email - 24 and 25 April ($488) Speaking Like a Professional - 5 and 6 May ($488) Perfecting Your Grammar - 7 to 9 May ($588) Speaking English with Correct Pronunciation 12 and 13 June ($488) Communicating Effectively - 26 and 27 June ($488) Achieving Higher Performance Customer Service - 3 and 4 July ($488) Full course, registration and SDF amount details are available at our website: http://www.trilifecom.com We also offer Composition/Essay Writing, Comprehension and Grammar Courses for Primary, Secondary and Pre-U students. Please visit our website at http://www.trilifecom.com for more details. We look forward with great pleasure to welcoming you to our courses. Best regards Yours sincerely Merle Celine Magness (Ms) Director/Trainer TriLife Communications, Singapore Tel: 6581-0970 Email: courses at trilifecom.com This is a genuine business advertisement. Should you wish to enquire about our courses, unsubscribe or change your email address, please email courses at trilifecom.com To unsubscribe, please give us the exact email address. Thank you for your time. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/python-checkins/attachments/20080414/fbf3d60f/attachment-0001.htm From python-checkins at python.org Tue Apr 15 22:51:18 2008 From: python-checkins at python.org (mark.dickinson) Date: Tue, 15 Apr 2008 22:51:18 +0200 (CEST) Subject: [Python-checkins] r62355 - python/trunk/Objects/longobject.c Message-ID: <20080415205118.ADC691E4022@bag.python.org> Author: mark.dickinson Date: Tue Apr 15 22:51:18 2008 New Revision: 62355 Log: Fix for possible signed overflow: the behaviour of -LONG_MIN is undefined in ANSI C. Modified: python/trunk/Objects/longobject.c Modified: python/trunk/Objects/longobject.c ============================================================================== --- python/trunk/Objects/longobject.c (original) +++ python/trunk/Objects/longobject.c Tue Apr 15 22:51:18 2008 @@ -99,20 +99,27 @@ PyLong_FromLong(long ival) { PyLongObject *v; + unsigned long abs_ival; unsigned long t; /* unsigned so >> doesn't propagate sign bit */ int ndigits = 0; int negative = 0; if (ival < 0) { - ival = -ival; + /* if LONG_MIN == -LONG_MAX-1 (true on most platforms) then + ANSI C says that the result of -ival is undefined when ival + == LONG_MIN. Hence the following workaround. */ + abs_ival = (unsigned long)(-1-ival) + 1; negative = 1; } + else { + abs_ival = (unsigned long)ival; + } /* Count the number of Python digits. We used to pick 5 ("big enough for anything"), but that's a waste of time and space given that 5*15 = 75 bits are rarely needed. */ - t = (unsigned long)ival; + t = abs_ival; while (t) { ++ndigits; t >>= PyLong_SHIFT; @@ -121,7 +128,7 @@ if (v != NULL) { digit *p = v->ob_digit; v->ob_size = negative ? -ndigits : ndigits; - t = (unsigned long)ival; + t = abs_ival; while (t) { *p++ = (digit)(t & PyLong_MASK); t >>= PyLong_SHIFT; @@ -830,20 +837,26 @@ PyLong_FromLongLong(PY_LONG_LONG ival) { PyLongObject *v; + unsigned PY_LONG_LONG abs_ival; unsigned PY_LONG_LONG t; /* unsigned so >> doesn't propagate sign bit */ int ndigits = 0; int negative = 0; if (ival < 0) { - ival = -ival; + /* avoid signed overflow on negation; see comments + in PyLong_FromLong above. */ + abs_ival = (unsigned PY_LONG_LONG)(-1-ival) + 1; negative = 1; } + else { + abs_ival = (unsigned PY_LONG_LONG)ival; + } /* Count the number of Python digits. We used to pick 5 ("big enough for anything"), but that's a waste of time and space given that 5*15 = 75 bits are rarely needed. */ - t = (unsigned PY_LONG_LONG)ival; + t = abs_ival; while (t) { ++ndigits; t >>= PyLong_SHIFT; @@ -852,7 +865,7 @@ if (v != NULL) { digit *p = v->ob_digit; Py_SIZE(v) = negative ? -ndigits : ndigits; - t = (unsigned PY_LONG_LONG)ival; + t = abs_ival; while (t) { *p++ = (digit)(t & PyLong_MASK); t >>= PyLong_SHIFT; From buildbot at python.org Tue Apr 15 23:39:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 15 Apr 2008 21:39:51 +0000 Subject: [Python-checkins] buildbot failure in x86 FreeBSD trunk Message-ID: <20080415213951.649461E4013@bag.python.org> The Buildbot has detected a new failure of x86 FreeBSD trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20FreeBSD%20trunk/builds/897 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-freebsd Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Tue Apr 15 23:42:42 2008 From: python-checkins at python.org (mark.dickinson) Date: Tue, 15 Apr 2008 23:42:42 +0200 (CEST) Subject: [Python-checkins] r62356 - in python/branches/py3k: Misc/NEWS Objects/longobject.c Message-ID: <20080415214242.74F331E4013@bag.python.org> Author: mark.dickinson Date: Tue Apr 15 23:42:42 2008 New Revision: 62356 Log: PyLong_FromSsize_t was incorrect when sizeof(size_t) > sizeof(long); rewrite it so that it doesn't care about relative sizes of size_t, long and long long. The rewrite is modeled on PyLong_FromLong, instead of using PyLong_FromByteArray; this makes the algorithm simpler and more direct, and possibly also slightly faster. Modified: python/branches/py3k/Misc/NEWS python/branches/py3k/Objects/longobject.c Modified: python/branches/py3k/Misc/NEWS ============================================================================== --- python/branches/py3k/Misc/NEWS (original) +++ python/branches/py3k/Misc/NEWS Tue Apr 15 23:42:42 2008 @@ -12,6 +12,9 @@ Core and Builtins ----------------- +- Fix misbehaviour of PyLong_FromSsize_t on systems where sizeof(size_t) > + sizeof(long). + - Issue #2221: Corrected a SystemError "error return without exception set", when the code executed by exec() raises an exception, and sys.stdout.flush() also raises an error. Modified: python/branches/py3k/Objects/longobject.c ============================================================================== --- python/branches/py3k/Objects/longobject.c (original) +++ python/branches/py3k/Objects/longobject.c Tue Apr 15 23:42:42 2008 @@ -1099,13 +1099,39 @@ PyObject * PyLong_FromSsize_t(Py_ssize_t ival) { - Py_ssize_t bytes = ival; - int one = 1; - if (ival < PyLong_BASE) - return PyLong_FromLong(ival); - return _PyLong_FromByteArray( - (unsigned char *)&bytes, - SIZEOF_SIZE_T, IS_LITTLE_ENDIAN, 1); + PyLongObject *v; + size_t abs_ival; + size_t t; /* unsigned so >> doesn't propagate sign bit */ + int ndigits = 0; + int negative = 0; + + CHECK_SMALL_INT(ival); + if (ival < 0) { + /* avoid signed overflow when ival = SIZE_T_MIN */ + abs_ival = (size_t)(-1-ival)+1; + negative = 1; + } + else { + abs_ival = (size_t)ival; + } + + /* Count the number of Python digits. */ + t = abs_ival; + while (t) { + ++ndigits; + t >>= PyLong_SHIFT; + } + v = _PyLong_New(ndigits); + if (v != NULL) { + digit *p = v->ob_digit; + Py_SIZE(v) = negative ? -ndigits : ndigits; + t = abs_ival; + while (t) { + *p++ = (digit)(t & PyLong_MASK); + t >>= PyLong_SHIFT; + } + } + return (PyObject *)v; } /* Create a new long int object from a C size_t. */ @@ -1113,13 +1139,28 @@ PyObject * PyLong_FromSize_t(size_t ival) { - size_t bytes = ival; - int one = 1; + PyLongObject *v; + size_t t; + int ndigits = 0; + if (ival < PyLong_BASE) return PyLong_FromLong(ival); - return _PyLong_FromByteArray( - (unsigned char *)&bytes, - SIZEOF_SIZE_T, IS_LITTLE_ENDIAN, 0); + /* Count the number of Python digits. */ + t = ival; + while (t) { + ++ndigits; + t >>= PyLong_SHIFT; + } + v = _PyLong_New(ndigits); + if (v != NULL) { + digit *p = v->ob_digit; + Py_SIZE(v) = ndigits; + while (ival) { + *p++ = (digit)(ival & PyLong_MASK); + ival >>= PyLong_SHIFT; + } + } + return (PyObject *)v; } /* Get a C PY_LONG_LONG int from a long int object. From buildbot at python.org Wed Apr 16 00:06:48 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 15 Apr 2008 22:06:48 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080415220649.16CC81E4013@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/207 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 106, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From python-checkins at python.org Wed Apr 16 02:41:32 2008 From: python-checkins at python.org (brett.cannon) Date: Wed, 16 Apr 2008 02:41:32 +0200 (CEST) Subject: [Python-checkins] r62357 - peps/trunk/pep-3108.txt Message-ID: <20080416004132.C699D1E4002@bag.python.org> Author: brett.cannon Date: Wed Apr 16 02:41:32 2008 New Revision: 62357 Log: Clarify some wording. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Wed Apr 16 02:41:32 2008 @@ -381,9 +381,7 @@ The Mac-specific modules are mostly unmaintained (e.g., the bgen tool used to auto-generate many of the modules has never been updated to support UCS-4). It is also not Python's place to maintain -such a large amount of OS-specific modules. For modules that provide -a small amount of focused functionality (e.g., _winreg), that can be -considered reasonable. +such a large amount of OS-specific modules. * aepack @@ -737,9 +735,11 @@ ------------------- For modules that are renamed, stub modules will be created with the -original names and be kept in a package within the stdlib. The need -to keep them within a package is to prevent naming conflicts -with case-insensitive filesystems. +original names and be kept in a directory within the stdlib (e.g. like +lib-old was once used for). The need to keep the stub modules within +a directory is to prevent naming conflicts with case-insensitive +filesystems in those cases where nothing but the case of the module +is changing. These stub modules will import the module code based on the new naming. The same type of warning being raised by modules being From python-checkins at python.org Wed Apr 16 14:47:02 2008 From: python-checkins at python.org (jeroen.ruigrok) Date: Wed, 16 Apr 2008 14:47:02 +0200 (CEST) Subject: [Python-checkins] r62358 - python/trunk/Doc/library/mmap.rst Message-ID: <20080416124702.162A21E4021@bag.python.org> Author: jeroen.ruigrok Date: Wed Apr 16 14:47:01 2008 New Revision: 62358 Log: Reformat to 80 columns prior to adding documentation. Modified: python/trunk/Doc/library/mmap.rst Modified: python/trunk/Doc/library/mmap.rst ============================================================================== --- python/trunk/Doc/library/mmap.rst (original) +++ python/trunk/Doc/library/mmap.rst Wed Apr 16 14:47:01 2008 @@ -8,60 +8,61 @@ Memory-mapped file objects behave like both strings and like file objects. Unlike normal string objects, however, these are mutable. You can use mmap -objects in most places where strings are expected; for example, you can use the -:mod:`re` module to search through a memory-mapped file. Since they're mutable, -you can change a single character by doing ``obj[index] = 'a'``, or change a -substring by assigning to a slice: ``obj[i1:i2] = '...'``. You can also read -and write data starting at the current file position, and :meth:`seek` through -the file to different positions. - -A memory-mapped file is created by the :class:`mmap` constructor, which is different -on Unix and on Windows. In either case you must provide a file descriptor for a -file opened for update. If you wish to map an existing Python file object, use -its :meth:`fileno` method to obtain the correct value for the *fileno* -parameter. Otherwise, you can open the file using the :func:`os.open` function, -which returns a file descriptor directly (the file still needs to be closed when -done). +objects in most places where strings are expected; for example, you can use +the :mod:`re` module to search through a memory-mapped file. Since they're +mutable, you can change a single character by doing ``obj[index] = 'a'``, or +change a substring by assigning to a slice: ``obj[i1:i2] = '...'``. You can +also read and write data starting at the current file position, and +:meth:`seek` through the file to different positions. + +A memory-mapped file is created by the :class:`mmap` constructor, which is +different on Unix and on Windows. In either case you must provide a file +descriptor for a file opened for update. If you wish to map an existing Python +file object, use its :meth:`fileno` method to obtain the correct value for the +*fileno* parameter. Otherwise, you can open the file using the +:func:`os.open` function, which returns a file descriptor directly (the file +still needs to be closed when done). For both the Unix and Windows versions of the constructor, *access* may be specified as an optional keyword parameter. *access* accepts one of three -values: :const:`ACCESS_READ`, :const:`ACCESS_WRITE`, or :const:`ACCESS_COPY` to -specify readonly, write-through or copy-on-write memory respectively. *access* -can be used on both Unix and Windows. If *access* is not specified, Windows -mmap returns a write-through mapping. The initial memory values for all three -access types are taken from the specified file. Assignment to an -:const:`ACCESS_READ` memory map raises a :exc:`TypeError` exception. Assignment -to an :const:`ACCESS_WRITE` memory map affects both memory and the underlying -file. Assignment to an :const:`ACCESS_COPY` memory map affects memory but does -not update the underlying file. +values: :const:`ACCESS_READ`, :const:`ACCESS_WRITE`, or :const:`ACCESS_COPY` +to specify readonly, write-through or copy-on-write memory respectively. +*access* can be used on both Unix and Windows. If *access* is not specified, +Windows mmap returns a write-through mapping. The initial memory values for +all three access types are taken from the specified file. Assignment to an +:const:`ACCESS_READ` memory map raises a :exc:`TypeError` exception. +Assignment to an :const:`ACCESS_WRITE` memory map affects both memory and the +underlying file. Assignment to an :const:`ACCESS_COPY` memory map affects +memory but does not update the underlying file. .. versionchanged:: 2.5 To map anonymous memory, -1 should be passed as the fileno along with the length. .. versionchanged:: 2.6 - mmap.mmap has formerly been a factory function creating mmap objects. Now + mmap.mmap has formerly been a factory function creating mmap objects. Now mmap.mmap is the class itself. .. class:: mmap(fileno, length[, tagname[, access[, offset]]]) - **(Windows version)** Maps *length* bytes from the file specified by the file - handle *fileno*, and creates a mmap object. If *length* is larger than the - current size of the file, the file is extended to contain *length* bytes. If - *length* is ``0``, the maximum length of the map is the current size of the - file, except that if the file is empty Windows raises an exception (you cannot - create an empty mapping on Windows). - - *tagname*, if specified and not ``None``, is a string giving a tag name for the - mapping. Windows allows you to have many different mappings against the same - file. If you specify the name of an existing tag, that tag is opened, otherwise - a new tag of this name is created. If this parameter is omitted or ``None``, - the mapping is created without a name. Avoiding the use of the tag parameter - will assist in keeping your code portable between Unix and Windows. - - *offset* may be specified as a non-negative integer offset. mmap references will - be relative to the offset from the beginning of the file. *offset* defaults to 0. - *offset* must be a multiple of the ALLOCATIONGRANULARITY. + **(Windows version)** Maps *length* bytes from the file specified by the + file handle *fileno*, and creates a mmap object. If *length* is larger + than the current size of the file, the file is extended to contain *length* + bytes. If *length* is ``0``, the maximum length of the map is the current + size of the file, except that if the file is empty Windows raises an + exception (you cannot create an empty mapping on Windows). + + *tagname*, if specified and not ``None``, is a string giving a tag name for + the mapping. Windows allows you to have many different mappings against + the same file. If you specify the name of an existing tag, that tag is + opened, otherwise a new tag of this name is created. If this parameter is + omitted or ``None``, the mapping is created without a name. Avoiding the + use of the tag parameter will assist in keeping your code portable between + Unix and Windows. + + *offset* may be specified as a non-negative integer offset. mmap references + will be relative to the offset from the beginning of the file. *offset* + defaults to 0. *offset* must be a multiple of the ALLOCATIONGRANULARITY. .. class:: mmap(fileno, length[, flags[, prot[, access[, offset]]]]) @@ -69,26 +70,29 @@ **(Unix version)** Maps *length* bytes from the file specified by the file descriptor *fileno*, and returns a mmap object. If *length* is ``0``, the - maximum length of the map will be the current size of the file when :class:`mmap` - is called. + maximum length of the map will be the current size of the file when + :class:`mmap` is called. *flags* specifies the nature of the mapping. :const:`MAP_PRIVATE` creates a - private copy-on-write mapping, so changes to the contents of the mmap object - will be private to this process, and :const:`MAP_SHARED` creates a mapping - that's shared with all other processes mapping the same areas of the file. The - default value is :const:`MAP_SHARED`. - - *prot*, if specified, gives the desired memory protection; the two most useful - values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify that the pages - may be read or written. *prot* defaults to :const:`PROT_READ \| PROT_WRITE`. - - *access* may be specified in lieu of *flags* and *prot* as an optional keyword - parameter. It is an error to specify both *flags*, *prot* and *access*. See - the description of *access* above for information on how to use this parameter. - - *offset* may be specified as a non-negative integer offset. mmap references will - be relative to the offset from the beginning of the file. *offset* defaults to 0. - *offset* must be a multiple of the PAGESIZE or ALLOCATIONGRANULARITY. + private copy-on-write mapping, so changes to the contents of the mmap + object will be private to this process, and :const:`MAP_SHARED` creates a + mapping that's shared with all other processes mapping the same areas of + the file. The default value is :const:`MAP_SHARED`. + + *prot*, if specified, gives the desired memory protection; the two most + useful values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify + that the pages may be read or written. *prot* defaults to + :const:`PROT_READ \| PROT_WRITE`. + + *access* may be specified in lieu of *flags* and *prot* as an optional + keyword parameter. It is an error to specify both *flags*, *prot* and + *access*. See the description of *access* above for information on how to + use this parameter. + + *offset* may be specified as a non-negative integer offset. mmap references + will be relative to the offset from the beginning of the file. *offset* + defaults to 0. *offset* must be a multiple of the PAGESIZE or + ALLOCATIONGRANULARITY. This example shows a simple way of using :class:`mmap`:: @@ -138,32 +142,32 @@ .. method:: mmap.close() - Close the file. Subsequent calls to other methods of the object will result in - an exception being raised. + Close the file. Subsequent calls to other methods of the object will + result in an exception being raised. .. method:: mmap.find(string[, start[, end]]) - Returns the lowest index in the object where the substring *string* is found, - such that *string* is contained in the range [*start*, *end*]. Optional - arguments *start* and *end* are interpreted as in slice notation. + Returns the lowest index in the object where the substring *string* is + found, such that *string* is contained in the range [*start*, *end*]. + Optional arguments *start* and *end* are interpreted as in slice notation. Returns ``-1`` on failure. .. method:: mmap.flush([offset, size]) - Flushes changes made to the in-memory copy of a file back to disk. Without use - of this call there is no guarantee that changes are written back before the - object is destroyed. If *offset* and *size* are specified, only changes to the - given range of bytes will be flushed to disk; otherwise, the whole extent of the - mapping is flushed. + Flushes changes made to the in-memory copy of a file back to disk. Without + use of this call there is no guarantee that changes are written back before + the object is destroyed. If *offset* and *size* are specified, only + changes to the given range of bytes will be flushed to disk; otherwise, the + whole extent of the mapping is flushed. .. method:: mmap.move(dest, src, count) - Copy the *count* bytes starting at offset *src* to the destination index *dest*. - If the mmap was created with :const:`ACCESS_READ`, then calls to move will throw - a :exc:`TypeError` exception. + Copy the *count* bytes starting at offset *src* to the destination index + *dest*. If the mmap was created with :const:`ACCESS_READ`, then calls to + move will throw a :exc:`TypeError` exception. .. method:: mmap.read(num) @@ -181,31 +185,31 @@ .. method:: mmap.readline() - Returns a single line, starting at the current file position and up to the next - newline. + Returns a single line, starting at the current file position and up to the + next newline. .. method:: mmap.resize(newsize) - Resizes the map and the underlying file, if any. If the mmap was created with - :const:`ACCESS_READ` or :const:`ACCESS_COPY`, resizing the map will throw a - :exc:`TypeError` exception. + Resizes the map and the underlying file, if any. If the mmap was created + with :const:`ACCESS_READ` or :const:`ACCESS_COPY`, resizing the map will + throw a :exc:`TypeError` exception. .. method:: mmap.rfind(string[, start[, end]]) Returns the highest index in the object where the substring *string* is - found, such that *string* is contained in the range [*start*, - *end*]. Optional arguments *start* and *end* are interpreted as in slice - notation. Returns ``-1`` on failure. + found, such that *string* is contained in the range [*start*, *end*]. + Optional arguments *start* and *end* are interpreted as in slice notation. + Returns ``-1`` on failure. .. method:: mmap.seek(pos[, whence]) - Set the file's current position. *whence* argument is optional and defaults to - ``os.SEEK_SET`` or ``0`` (absolute file positioning); other values are - ``os.SEEK_CUR`` or ``1`` (seek relative to the current position) and - ``os.SEEK_END`` or ``2`` (seek relative to the file's end). + Set the file's current position. *whence* argument is optional and + defaults to ``os.SEEK_SET`` or ``0`` (absolute file positioning); other + values are ``os.SEEK_CUR`` or ``1`` (seek relative to the current position) + and ``os.SEEK_END`` or ``2`` (seek relative to the file's end). .. method:: mmap.size() @@ -223,15 +227,15 @@ Write the bytes in *string* into memory at the current position of the file pointer; the file position is updated to point after the bytes that were - written. If the mmap was created with :const:`ACCESS_READ`, then writing to it - will throw a :exc:`TypeError` exception. + written. If the mmap was created with :const:`ACCESS_READ`, then writing to + it will throw a :exc:`TypeError` exception. .. method:: mmap.write_byte(byte) - Write the single-character string *byte* into memory at the current position of - the file pointer; the file position is advanced by ``1``. If the mmap was - created with :const:`ACCESS_READ`, then writing to it will throw a - :exc:`TypeError` exception. + Write the single-character string *byte* into memory at the current + position of the file pointer; the file position is advanced by ``1``. If + the mmap was created with :const:`ACCESS_READ`, then writing to it will + throw a :exc:`TypeError` exception. From python-checkins at python.org Wed Apr 16 14:57:43 2008 From: python-checkins at python.org (jeroen.ruigrok) Date: Wed, 16 Apr 2008 14:57:43 +0200 (CEST) Subject: [Python-checkins] r62359 - python/trunk/Doc/library/mmap.rst Message-ID: <20080416125743.D26431E4013@bag.python.org> Author: jeroen.ruigrok Date: Wed Apr 16 14:57:43 2008 New Revision: 62359 Log: Add details about the return value for mmap.flush(). Modified: python/trunk/Doc/library/mmap.rst Modified: python/trunk/Doc/library/mmap.rst ============================================================================== --- python/trunk/Doc/library/mmap.rst (original) +++ python/trunk/Doc/library/mmap.rst Wed Apr 16 14:57:43 2008 @@ -162,6 +162,12 @@ changes to the given range of bytes will be flushed to disk; otherwise, the whole extent of the mapping is flushed. + **(Windows version)** A nonzero value returned indicates success; zero + indicates failure. + + **(Unix version)** A zero value is returned to indicate success. An + exception is raised when the call failed. + .. method:: mmap.move(dest, src, count) From python-checkins at python.org Thu Apr 17 06:21:10 2008 From: python-checkins at python.org (brett.cannon) Date: Thu, 17 Apr 2008 06:21:10 +0200 (CEST) Subject: [Python-checkins] r62360 - python/branches/py3k/Lib/test/test_coding.py Message-ID: <20080417042110.E58851E4007@bag.python.org> Author: brett.cannon Date: Thu Apr 17 06:21:10 2008 New Revision: 62360 Log: Have test_coding conditionally remove test files instead of assuming that they are always there. Modified: python/branches/py3k/Lib/test/test_coding.py Modified: python/branches/py3k/Lib/test/test_coding.py ============================================================================== --- python/branches/py3k/Lib/test/test_coding.py (original) +++ python/branches/py3k/Lib/test/test_coding.py Thu Apr 17 06:21:10 2008 @@ -1,6 +1,6 @@ import test.test_support, unittest -from test.test_support import TESTFN +from test.test_support import TESTFN, unlink import os, sys class CodingTest(unittest.TestCase): @@ -45,8 +45,8 @@ __import__(TESTFN) finally: f.close() - os.remove(TESTFN+".py") - os.remove(TESTFN+".pyc") + unlink(TESTFN+".py") + unlink(TESTFN+".pyc") sys.path.pop(0) def test_main(): From buildbot at python.org Thu Apr 17 06:28:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 17 Apr 2008 04:28:36 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 3.0 Message-ID: <20080417042836.D88E11E4006@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%203.0/builds/709 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: brett.cannon BUILD FAILED: failed svn sincerely, -The Buildbot From buildbot at python.org Thu Apr 17 07:28:47 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 17 Apr 2008 05:28:47 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 3.0 Message-ID: <20080417052847.B4C101E4006@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%203.0/builds/843 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Thu Apr 17 10:07:26 2008 From: python-checkins at python.org (martin.v.loewis) Date: Thu, 17 Apr 2008 10:07:26 +0200 (CEST) Subject: [Python-checkins] r62361 - tracker/instances/setuptools/detectors/sendmail.py Message-ID: <20080417080726.29E961E4007@bag.python.org> Author: martin.v.loewis Date: Thu Apr 17 10:07:25 2008 New Revision: 62361 Log: Only send email if there are configured recipients. Modified: tracker/instances/setuptools/detectors/sendmail.py Modified: tracker/instances/setuptools/detectors/sendmail.py ============================================================================== --- tracker/instances/setuptools/detectors/sendmail.py (original) +++ tracker/instances/setuptools/detectors/sendmail.py Thu Apr 17 10:07:25 2008 @@ -100,7 +100,8 @@ for msgid in [msgid for msgid in new_messages if not is_spam(db, msgid)]: try: - cl.send_message(nodeid, msgid, changenote, sendto, + if sendto: + cl.send_message(nodeid, msgid, changenote, sendto, authid=authid) nosymessage(db, nodeid, msgid, oldvalues, changenote) except roundupdb.MessageSendError, message: From python-checkins at python.org Thu Apr 17 10:09:21 2008 From: python-checkins at python.org (martin.v.loewis) Date: Thu, 17 Apr 2008 10:09:21 +0200 (CEST) Subject: [Python-checkins] r62362 - tracker/instances/jython/detectors/sendmail.py Message-ID: <20080417080921.D1D571E4007@bag.python.org> Author: martin.v.loewis Date: Thu Apr 17 10:09:21 2008 New Revision: 62362 Log: Only send email if there are recipients. Modified: tracker/instances/jython/detectors/sendmail.py Modified: tracker/instances/jython/detectors/sendmail.py ============================================================================== --- tracker/instances/jython/detectors/sendmail.py (original) +++ tracker/instances/jython/detectors/sendmail.py Thu Apr 17 10:09:21 2008 @@ -100,7 +100,8 @@ for msgid in [msgid for msgid in new_messages if not is_spam(db, msgid)]: try: - cl.send_message(nodeid, msgid, changenote, sendto, + if sendto: + cl.send_message(nodeid, msgid, changenote, sendto, authid=authid) nosymessage(db, nodeid, msgid, oldvalues, changenote) except roundupdb.MessageSendError, message: From python-checkins at python.org Thu Apr 17 10:09:56 2008 From: python-checkins at python.org (martin.v.loewis) Date: Thu, 17 Apr 2008 10:09:56 +0200 (CEST) Subject: [Python-checkins] r62363 - tracker/instances/python-dev/detectors/sendmail.py Message-ID: <20080417080956.E9F551E4007@bag.python.org> Author: martin.v.loewis Date: Thu Apr 17 10:09:56 2008 New Revision: 62363 Log: Only send email if there are recipients. Modified: tracker/instances/python-dev/detectors/sendmail.py Modified: tracker/instances/python-dev/detectors/sendmail.py ============================================================================== --- tracker/instances/python-dev/detectors/sendmail.py (original) +++ tracker/instances/python-dev/detectors/sendmail.py Thu Apr 17 10:09:56 2008 @@ -100,7 +100,8 @@ for msgid in [msgid for msgid in new_messages if not is_spam(db, msgid)]: try: - cl.send_message(nodeid, msgid, changenote, sendto, + if sendto: + cl.send_message(nodeid, msgid, changenote, sendto, authid=authid) nosymessage(db, nodeid, msgid, oldvalues, changenote) except roundupdb.MessageSendError, message: From python-checkins at python.org Thu Apr 17 12:48:31 2008 From: python-checkins at python.org (raymond.hettinger) Date: Thu, 17 Apr 2008 12:48:31 +0200 (CEST) Subject: [Python-checkins] r62364 - in python/trunk/Doc/library: decimal.rst itertools.rst Message-ID: <20080417104831.6DD2D1E4007@bag.python.org> Author: raymond.hettinger Date: Thu Apr 17 12:48:31 2008 New Revision: 62364 Log: Issue 2648: Add leading zero to money format recipe in the docs. Modified: python/trunk/Doc/library/decimal.rst python/trunk/Doc/library/itertools.rst Modified: python/trunk/Doc/library/decimal.rst ============================================================================== --- python/trunk/Doc/library/decimal.rst (original) +++ python/trunk/Doc/library/decimal.rst Thu Apr 17 12:48:31 2008 @@ -1426,7 +1426,7 @@ >>> moneyfmt(Decimal(123456789), sep=' ') '123 456 789.00' >>> moneyfmt(Decimal('-0.02'), neg='<', trailneg='>') - '<.02>' + '<0.02>' """ q = Decimal(10) ** -places # 2 places --> '0.01' @@ -1439,6 +1439,8 @@ for i in range(places): build(next() if digits else '0') build(dp) + if not digits: + build('0') i = 0 while digits: build(next()) Modified: python/trunk/Doc/library/itertools.rst ============================================================================== --- python/trunk/Doc/library/itertools.rst (original) +++ python/trunk/Doc/library/itertools.rst Thu Apr 17 12:48:31 2008 @@ -98,7 +98,7 @@ .. function:: combinations(iterable, r) - Return successive *r* length combinations of elements in the *iterable*. + Return *r* length subsequences of elements from the input *iterable*. Combinations are emitted in lexicographic sort order. So, if the input *iterable* is sorted, the combination tuples will be produced @@ -108,9 +108,6 @@ value. So if the input elements are unique, there will be no repeat values in each combination. - Each result tuple is ordered to match the input order. So, every - combination is a subsequence of the input *iterable*. - Equivalent to:: def combinations(iterable, r): @@ -446,11 +443,10 @@ Equivalent to nested for-loops in a generator expression. For example, ``product(A, B)`` returns the same as ``((x,y) for x in A for y in B)``. - The leftmost iterators correspond to the outermost for-loop, so the output - tuples cycle like an odometer (with the rightmost element changing on every - iteration). This results in a lexicographic ordering so that if the - inputs iterables are sorted, the product tuples are emitted - in sorted order. + The nested loops cycle like an odometer with the rightmost element advancing + on every iteration. This pattern creats a lexicographic ordering so that if + the inputs iterables are sorted, the product tuples are emitted in sorted + order. To compute the product of an iterable with itself, specify the number of repetitions with the optional *repeat* keyword argument. For example, From noreply at python.org Thu Apr 17 14:16:31 2008 From: noreply at python.org (The Post Office) Date: Thu, 17 Apr 2008 14:16:31 +0200 Subject: [Python-checkins] zmjjav Message-ID: <200804171217.CJJ86302@md2.t-2.net> WARNING!!! (from md2.t-2.net) The following message attachments were flagged by the antivirus scanner: Attachment [2.2] readme.zip, virus infected: W32/MyDoom-O. Action taken: deleted -------------- next part -------------- The original message was received at Thu, 17 Apr 2008 14:16:31 +0200 from python.org [167.176.148.41] ----- The following addresses had permanent fatal errors ----- -------------- next part -------------- VIRUS WARNING Message (from md2.t-2.net) The virus W32/MyDoom-O was detected in email attachment [2.2] readme.zip. The infected attachment has been deleted. From python-checkins at python.org Thu Apr 17 14:39:46 2008 From: python-checkins at python.org (jeroen.ruigrok) Date: Thu, 17 Apr 2008 14:39:46 +0200 (CEST) Subject: [Python-checkins] r62365 - python/trunk/Doc/library/mmap.rst Message-ID: <20080417123946.030F91E4007@bag.python.org> Author: jeroen.ruigrok Date: Thu Apr 17 14:39:45 2008 New Revision: 62365 Log: Be consistent in the use of read-only. Modified: python/trunk/Doc/library/mmap.rst Modified: python/trunk/Doc/library/mmap.rst ============================================================================== --- python/trunk/Doc/library/mmap.rst (original) +++ python/trunk/Doc/library/mmap.rst Thu Apr 17 14:39:45 2008 @@ -26,7 +26,7 @@ For both the Unix and Windows versions of the constructor, *access* may be specified as an optional keyword parameter. *access* accepts one of three values: :const:`ACCESS_READ`, :const:`ACCESS_WRITE`, or :const:`ACCESS_COPY` -to specify readonly, write-through or copy-on-write memory respectively. +to specify read-only, write-through or copy-on-write memory respectively. *access* can be used on both Unix and Windows. If *access* is not specified, Windows mmap returns a write-through mapping. The initial memory values for all three access types are taken from the specified file. Assignment to an From python-checkins at python.org Thu Apr 17 19:56:29 2008 From: python-checkins at python.org (thomas.heller) Date: Thu, 17 Apr 2008 19:56:29 +0200 (CEST) Subject: [Python-checkins] r62366 - in ctypes/trunk/comtypes: ChangeLog comtypes/__init__.py comtypes/_comobject.py comtypes/client/_events.py comtypes/server/automation.py comtypes/server/connectionpoints.py comtypes/server/register.py comtypes/test/TestComServer.py comtypes/test/runtests.py comtypes/test/test_collections.py comtypes/test/test_createwrappers.py Message-ID: <20080417175629.761D91E4029@bag.python.org> Author: thomas.heller Date: Thu Apr 17 19:56:27 2008 New Revision: 62366 Log: Merge in a lot of changes from the private upstream repository (rev 26394); mainly much better support for implementing comtypes servers. Modified: ctypes/trunk/comtypes/ChangeLog ctypes/trunk/comtypes/comtypes/__init__.py ctypes/trunk/comtypes/comtypes/_comobject.py ctypes/trunk/comtypes/comtypes/client/_events.py ctypes/trunk/comtypes/comtypes/server/automation.py ctypes/trunk/comtypes/comtypes/server/connectionpoints.py ctypes/trunk/comtypes/comtypes/server/register.py ctypes/trunk/comtypes/comtypes/test/TestComServer.py ctypes/trunk/comtypes/comtypes/test/runtests.py ctypes/trunk/comtypes/comtypes/test/test_collections.py ctypes/trunk/comtypes/comtypes/test/test_createwrappers.py Modified: ctypes/trunk/comtypes/ChangeLog ============================================================================== --- ctypes/trunk/comtypes/ChangeLog (original) +++ ctypes/trunk/comtypes/ChangeLog Thu Apr 17 19:56:27 2008 @@ -1,3 +1,9 @@ +2008-04-17 Thomas Heller + + * Merge in a lot of changes from the private upstream repository + 26394; mainly much better support for implementing comtypes + servers. + 2008-04-09 Thomas Heller * Bump version number to 0.4.3a Modified: ctypes/trunk/comtypes/comtypes/__init__.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/__init__.py (original) +++ ctypes/trunk/comtypes/comtypes/__init__.py Thu Apr 17 19:56:27 2008 @@ -28,6 +28,13 @@ monkeypatch_COMError() del monkeypatch_COMError +class ReturnHRESULT(Exception): + """ReturnHRESULT(hresult, text) + + Return a hresult code from a COM method implementation + without logging an error. + """ + import logging logger = logging.getLogger(__name__) Modified: ctypes/trunk/comtypes/comtypes/_comobject.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/_comobject.py (original) +++ ctypes/trunk/comtypes/comtypes/_comobject.py Thu Apr 17 19:56:27 2008 @@ -2,48 +2,133 @@ from comtypes.hresult import * import os +import new import logging logger = logging.getLogger(__name__) _debug = logger.debug _warning = logger.warning +_error = logger.error ################################################################ # COM object implementation from _ctypes import CopyComPointer -def prepare_comobject(inst): - # When a CoClass instance is created, COM pointers to all - # interfaces are created. Also, the CoClass must be kept alive as - # until the COM reference count drops to zero, even if no Python - # code keeps a reference to the object. - # - # The _com_pointers_ instance variable maps string interface iids - # to C compatible COM pointers. - inst._com_pointers_ = {} - # COM refcount starts at zero. - inst._refcnt = c_long(0) - for itf in inst._com_interfaces_[::-1]: - make_interface_pointer(inst, itf) +from comtypes import COMError, ReturnHRESULT +from comtypes.errorinfo import ISupportErrorInfo, ReportException, ReportError +from comtypes.typeinfo import IProvideClassInfo, IProvideClassInfo2 +from comtypes import IPersist + +class E_NotImplemented(Exception): + """COM method is not implemented""" + +def HRESULT_FROM_WIN32(errcode): + "Convert a Windows error code into a HRESULT value." + if errcode is None: + return 0x80000000 + if errcode & 0x80000000: + return errcode + return (errcode & 0xFFFF) | 0x80070000 + +def winerror(exc): + """Return the windows error code from a WindowsError or COMError + instance.""" + try: + code = exc[0] + if isinstance(code, (int, long)): + return code + except IndexError: + pass + # Sometimes, a WindowsError instance has no error code. An access + # violation raised by ctypes has only text, for example. In this + # cases we return a generic error code. + return E_FAIL -from comtypes.errorinfo import ReportException +def _do_implement(interface_name, method_name): + def _not_implemented(*args): + """Return E_NOTIMPL because the method is not implemented.""" + _debug("unimplemented method %s_%s called", interface_name, method_name) + return E_NOTIMPL + return _not_implemented -def catch_errors(obj, mth, interface): - iid = interface._iid_ +def catch_errors(obj, mth, interface, mthname): clsid = getattr(obj, "_reg_clsid_", None) def func(*args, **kw): try: return mth(*args, **kw) - except Exception: - _warning("%s", interface, exc_info=True) - return ReportException(E_FAIL, iid, clsid=clsid) + except ReturnHRESULT, (hresult, text): + return ReportError(text, iid=interface._iid_, clsid=clsid, hresult=hresult) + except (COMError, WindowsError), details: + _error("Exception in %s.%s implementation:", interface.__name__, mthname, exc_info=True) + return HRESULT_FROM_WIN32(winerror(details)) + except E_NotImplemented: + _warning("Unimplemented method %s.%s called", interface.__name__, mthname) + return E_NOTIMPL + except: + _error("Exception in %s.%s implementation:", interface.__name__, mthname, exc_info=True) + return ReportException(E_FAIL, interface._iid_, clsid=clsid) return func -def _do_implement(interface_name, method_name): - def _not_implemented(*args): - """Return E_NOTIMPL because the method is not implemented.""" - _debug("unimplemented method %s_%s called", interface_name, method_name) - return E_NOTIMPL - return _not_implemented +################################################################ + +def hack(inst, mth, paramflags, interface, mthname): + if paramflags is None: + return catch_errors(inst, mth, interface, mthname) + code = mth.func_code + if code.co_varnames[1:2] == ("this",): + return catch_errors(inst, mth, interface, mthname) + dirflags = [f[0] for f in paramflags] + # An argument is [IN] if it is not [OUT] ! + # This handles the case where no direction is defined in the IDL file. + # number of input arguments: + args_in = len([f for f in dirflags if (f & 2) == 0]) + # number of output arguments: + args_out = len([f for f in dirflags if f & 2]) + if args_in != code.co_argcount - 1: + return catch_errors(inst, mth, interface, mthname) + # This code assumes that input args are always first, and output + # args are always last. Have to check with the IDL docs if this + # is always correct. + + clsid = getattr(inst, "_reg_clsid_", None) + def wrapper(this, *args): + outargs = args[len(args)-args_out:] + for a in outargs: + if not a: + return E_POINTER + try: + result = mth(*args[:args_in]) + if args_out == 1: + outargs[0][0] = result + elif args_out != 0: + if len(result) != args_out: + raise ValueError("Method should have returned a %s-tuple" % args_out) + for i, value in enumerate(result): + outargs[i][0] = value + except ReturnHRESULT, (hresult, text): + return ReportError(text, iid=interface._iid_, clsid=clsid, hresult=hresult) + except COMError, (hr, text, details): + _error("Exception in %s.%s implementation:", interface.__name__, mthname, exc_info=True) + try: + descr, source, helpfile, helpcontext, progid = details + except (ValueError, TypeError): + msg = str(details) + else: + msg = "%s: %s" % (source, descr) + hr = HRESULT_FROM_WIN32(hr) + return ReportError(msg, iid=interface._iid_, clsid=clsid, hresult=hr) + except WindowsError, details: + _error("Exception in %s.%s implementation:", interface.__name__, mthname, exc_info=True) + hr = HRESULT_FROM_WIN32(winerror(details)) + return ReportException(hr, interface._iid_, clsid=clsid) + except E_NotImplemented: + _warning("Unimplemented method %s.%s called", interface.__name__, mthname) + return E_NOTIMPL + except: + _error("Exception in %s.%s implementation:", interface.__name__, mthname, exc_info=True) + return ReportException(E_FAIL, interface._iid_, clsid=clsid) + return S_OK + + return wrapper class _MethodFinder(object): def __init__(self, inst): @@ -51,44 +136,61 @@ # map lower case names to names with correct spelling. self.names = dict([(n.lower(), n) for n in dir(inst)]) - def get_impl(self, interface, mthname): + def get_impl(self, instance, interface, mthname, paramflags, idlflags): + mth = self.find_impl(interface, mthname, paramflags, idlflags) + if mth is None: + return _do_implement(interface.__name__, mthname) + return hack(self.inst, mth, paramflags, interface, mthname) + + def find_impl(self, interface, mthname, paramflags, idlflags): fq_name = "%s_%s" % (interface.__name__, mthname) if interface._case_insensitive_: mthname = self.names.get(mthname.lower(), mthname) fq_name = self.names.get(fq_name.lower(), fq_name) + try: - # try the simple name, like 'QueryInterface' - return getattr(self.inst, mthname) + # qualified name, like 'IUnknown_QueryInterface' + return getattr(self.inst, fq_name) except AttributeError: pass try: - # qualified name, like 'IUnknown_QueryInterface' - return getattr(self.inst, fq_name) + # simple name, like 'QueryInterface' + return getattr(self.inst, mthname) except AttributeError: - # use method that returns E_NOTIMPL when called. - _debug("%r: %s.%s not implemented", self.inst, interface.__name__, mthname) - return _do_implement(interface.__name__, mthname) + pass + propname = mthname[5:] + if interface._case_insensitive_: + propname = self.names.get(propname.lower(), propname) + # propput and propget is done with 'normal' attribute access, + # but only for COM properties that do not take additional + # arguments: + + if "propget" in idlflags and len(paramflags) == 1: + return self.getter(propname) + if "propput" in idlflags and len(paramflags) == 1: + return self.setter(propname) + _debug("%r: %s.%s not implemented", self.inst, interface.__name__, mthname) + return None + + def setter(self, propname): + # + def set(self, value): + try: + # XXX this may not be correct is the object implements + # _get_PropName but not _set_PropName + setattr(self, propname, value) + except AttributeError: + raise E_NotImplemented() + return new.instancemethod(set, self.inst, type(self.inst)) -def make_interface_pointer(inst, itf, - _debug=_debug): - methods = [] # method implementations - fields = [] # (name, prototype) for virtual function table - iids = [] # interface identifiers. - # iterate over interface inheritance in reverse order to build the - # virtual function table, and leave out the 'object' base class. - finder = _MethodFinder(inst) - for interface in itf.__mro__[-2::-1]: - iids.append(interface._iid_) - for m in interface._methods_: - restype, mthname, argtypes, paramflags, idlflags, helptext = m - proto = WINFUNCTYPE(restype, c_void_p, *argtypes) - fields.append((mthname, proto)) - mth = finder.get_impl(interface, mthname) - methods.append(proto(mth)) - Vtbl = _create_vtbl_type(tuple(fields), itf) - vtbl = Vtbl(*methods) - for iid in iids: - inst._com_pointers_[iid] = pointer(pointer(vtbl)) + def getter(self, propname): + # + def get(self): + try: + return getattr(self, propname) + except AttributeError: + raise E_NotImplemented() + return new.instancemethod(get, self.inst, type(self.inst)) def _create_vtbl_type(fields, itf): try: @@ -109,39 +211,80 @@ _InterlockedIncrement = windll.coredll.InterlockedIncrement _InterlockedDecrement = windll.coredll.InterlockedDecrement else: - try: - _InterlockedIncrement = windll.kernel32.InterlockedIncrement - _InterlockedDecrement = windll.kernel32.InterlockedDecrement - except AttributeError: - import thread - _lock = thread.allocate_lock() - - def _InterlockedIncrement(obj): - _lock.acquire() - result = obj._obj.value = obj._obj.value + 1 - _lock.release() - return result - - def _InterlockedDecrement(obj): - _lock.acquire() - result = obj._obj.value = obj._obj.value - 1 - _lock.release() - return result + _InterlockedIncrement = windll.kernel32.InterlockedIncrement + _InterlockedDecrement = windll.kernel32.InterlockedDecrement class COMObject(object): _instances_ = {} _factory = None def __new__(cls, *args, **kw): - self = super(COMObject, cls).__new__(cls) + self = super(COMObject, cls).__new__(cls, *args, **kw) if isinstance(self, c_void_p): # We build the VTables only for direct instances of # CoClass, not for POINTERs to CoClass. return self if hasattr(self, "_com_interfaces_"): - prepare_comobject(self) + self.__prepare_comobject() return self + def __prepare_comobject(self): + # When a CoClass instance is created, COM pointers to all + # interfaces are created. Also, the CoClass must be kept alive as + # until the COM reference count drops to zero, even if no Python + # code keeps a reference to the object. + # + # The _com_pointers_ instance variable maps string interface iids + # to C compatible COM pointers. + self._com_pointers_ = {} + # COM refcount starts at zero. + self._refcnt = c_long(0) + + # Some interfaces have a default implementation in COMObject: + # - ISupportErrorInfo + # - IPersist (if the subclass has a _reg_clsid_ attribute) + # - IProvideClassInfo (if the subclass has a _reg_clsid_ attribute) + # - IProvideClassInfo2 (if the subclass has a _outgoing_interfaces_ attribute) + # + # Add these if they are not listed in _com_interfaces_. + interfaces = tuple(self._com_interfaces_) + if ISupportErrorInfo not in interfaces: + interfaces += (ISupportErrorInfo,) + if hasattr(self, "_reg_typelib_"): + from comtypes.typeinfo import LoadRegTypeLib + self._COMObject__typelib = LoadRegTypeLib(*self._reg_typelib_) + if hasattr(self, "_reg_clsid_"): + if IProvideClassInfo not in interfaces: + interfaces += (IProvideClassInfo,) + if hasattr(self, "_outgoing_interfaces_") and \ + IProvideClassInfo2 not in interfaces: + interfaces += (IProvideClassInfo2,) + if hasattr(self, "_reg_clsid_"): + if IPersist not in interfaces: + interfaces += (IPersist,) + for itf in interfaces[::-1]: + self.__make_interface_pointer(itf) + + def __make_interface_pointer(self, itf): + methods = [] # method implementations + fields = [] # (name, prototype) for virtual function table + iids = [] # interface identifiers. + # iterate over interface inheritance in reverse order to build the + # virtual function table, and leave out the 'object' base class. + finder = _MethodFinder(self) + for interface in itf.__mro__[-2::-1]: + iids.append(interface._iid_) + for m in interface._methods_: + restype, mthname, argtypes, paramflags, idlflags, helptext = m + proto = WINFUNCTYPE(restype, c_void_p, *argtypes) + fields.append((mthname, proto)) + mth = finder.get_impl(self, interface, mthname, paramflags, idlflags) + methods.append(proto(mth)) + Vtbl = _create_vtbl_type(tuple(fields), itf) + vtbl = Vtbl(*methods) + for iid in iids: + self._com_pointers_[iid] = pointer(pointer(vtbl)) + ######################################################### # IUnknown methods implementations def IUnknown_AddRef(self, this, @@ -191,11 +334,105 @@ _debug("%r.QueryInterface(%s) -> E_NOINTERFACE", self, iid) return E_NOINTERFACE + def QueryInterface(self, interface): + "Query the object for an interface pointer" + # This method is NOT the implementation of + # IUnknown::QueryInterface, instead it is supposed to be + # called on an COMObject by user code. It allows to get COM + # interface pointers from COMObject instances. + ptr = self._com_pointers_.get(interface._iid_, None) + if ptr is None: + raise COMError(E_NOINTERFACE, FormatError(E_NOINTERFACE), + (None, None, 0, None, None)) + # CopyComPointer(src, dst) calls AddRef! + result = POINTER(interface)() + CopyComPointer(ptr, byref(result)) + return result + ################################################################ - # ISupportErrorInfo method implementation + # ISupportErrorInfo::InterfaceSupportsErrorInfo implementation def ISupportErrorInfo_InterfaceSupportsErrorInfo(self, this, riid): if riid[0] in self._com_pointers_: return S_OK return S_FALSE + ################################################################ + # IProvideClassInfo::GetClassInfo implementation + def IProvideClassInfo_GetClassInfo(self): + try: + self.__typelib + except AttributeError: + raise WindowsError(E_NOTIMPL) + return self.__typelib.GetTypeInfoOfGuid(self._reg_clsid_) + + ################################################################ + # IProvideClassInfo2::GetGUID implementation + + def IProvideClassInfo2_GetGUID(self, dwGuidKind): + # GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1 + if dwGuidKind != 1: + raise WindowsError(E_INVALIDARG) + return self._outgoing_interfaces_[0]._iid_ + + ################################################################ + # IDispatch methods + @property + def __typeinfo(self): + # XXX Looks like this better be a static property, set by the + # code that sets __typelib also... + iid = self._com_interfaces_[0]._iid_ + return self.__typelib.GetTypeInfoOfGuid(iid) + + def IDispatch_GetTypeInfoCount(self): + try: + self.__typelib + except AttributeError: + return 0 + else: + return 1 + + def IDispatch_GetTypeInfo(self, itinfo, lcid): + if itinfo != 0: + raise WindowsError(DISP_E_BADINDEX) + try: + self.__typelib + except AttributeError: + raise WindowsError(E_NOTIMPL) + else: + return self.__typeinfo + + def IDispatch_GetIDsOfNames(self, this, riid, rgszNames, cNames, lcid, rgDispId): + # Use windll to let DispGetIDsOfNames return a HRESULT instead + # of raising an error: + try: + self.__typeinfo + except AttributeError: + return E_NOTIMPL + return windll.oleaut32.DispGetIDsOfNames(self.__typeinfo, + rgszNames, cNames, rgDispId) + + def IDispatch_Invoke(self, this, dispIdMember, riid, lcid, wFlags, + pDispParams, pVarResult, pExcepInfo, puArgErr): + try: + self.__typeinfo + except AttributeError: + # Hm, we pretend to implement IDispatch, but have no + # typeinfo, and so cannot fulfill the contract. Should we + # better return E_NOTIMPL or DISP_E_MEMBERNOTFOUND? Some + # clients call IDispatch_Invoke with 'known' DISPID_...' + # values, without going through GetIDsOfNames first. + return DISP_E_MEMBERNOTFOUND + impl = self._com_pointers_[self._com_interfaces_[0]._iid_] + # Use windll to let DispInvoke return a HRESULT instead + # of raising an error: + return windll.oleaut32.DispInvoke(impl, + self.__typeinfo, + dispIdMember, wFlags, pDispParams, + pVarResult, pExcepInfo, puArgErr) + + ################################################################ + # IPersist interface + def IPersist_GetClassID(self): + return self._reg_clsid_ + __all__ = ["COMObject"] Modified: ctypes/trunk/comtypes/comtypes/client/_events.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/client/_events.py (original) +++ ctypes/trunk/comtypes/comtypes/client/_events.py Thu Apr 17 19:56:27 2008 @@ -50,9 +50,18 @@ self.cookie = self.cp.Advise(receiver) self.receiver = receiver + def disconnect(self): + if self.cookie: + self.cp.Unadvise(self.cookie) + logger.debug("Unadvised %s", self.cp) + self.cp = None + self.cookie = None + del self.receiver + def __del__(self): try: - self.cp.Unadvise(self.cookie) + if self.cookie is not None: + self.cp.Unadvise(self.cookie) except (comtypes.COMError, WindowsError): # Are we sure we want to ignore errors here? pass Modified: ctypes/trunk/comtypes/comtypes/server/automation.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/server/automation.py (original) +++ ctypes/trunk/comtypes/comtypes/server/automation.py Thu Apr 17 19:56:27 2008 @@ -4,79 +4,11 @@ from comtypes.hresult import * from comtypes import COMObject, IUnknown -from comtypes.typeinfo import LoadRegTypeLib, IProvideClassInfo, IProvideClassInfo2 from comtypes.automation import IEnumVARIANT logger = logging.getLogger(__name__) -_oleaut32 = windll.oleaut32 - -__all__ = ["DualDispImplMixin", "VARIANTEnumerator"] - -class DualDispImplMixin(object): - # a mixin class to implement a dual dispatch interface. - # Needs a _reg_typelib_ attribute in the subclass. - # - # Also implements IProvideClassInfo2. XXX Where should this - # really go? And: XXX Can we load the typelib in the CoClass - # baseclass? - def __init__(self): - super(DualDispImplMixin, self).__init__() - tlib = LoadRegTypeLib(*self._reg_typelib_) - - # XXX This works only if the default dispatch interface is - # also the default interface. We should either search for the - # first dispatch interface, or raise an error if the first is - # no default disp interface. - self.__dispatch_iid = self._com_interfaces_[0]._iid_ - self.__tinfo = tlib.GetTypeInfoOfGuid(self.__dispatch_iid) - if hasattr(self, "_reg_clsid_"): - self.__coclass_tinfo = tlib.GetTypeInfoOfGuid(self._reg_clsid_) - - def IDispatch_GetTypeInfoCount(self, this, pctinfo): - if not pctinfo: - return E_POINTER - pctinfo[0] = 1 - return S_OK - - def IDispatch_GetTypeInfo(self, this, itinfo, lcid, pptinfo): - if not pptinfo: - return E_POINTER - if itinfo != 0: - return DISP_E_BADINDEX - pptinfo[0] = self.__tinfo - return S_OK - - def IDispatch_GetIDsOfNames(self, this, riid, rgszNames, cNames, lcid, rgDispId): - return _oleaut32.DispGetIDsOfNames(self.__tinfo, rgszNames, cNames, rgDispId) - - def IDispatch_Invoke(self, this, dispIdMember, riid, lcid, wFlags, - pDispParams, pVarResult, pExcepInfo, puArgErr): - impl = self._com_pointers_[self.__dispatch_iid] - return _oleaut32.DispInvoke(impl, self.__tinfo, - dispIdMember, wFlags, pDispParams, - pVarResult, pExcepInfo, puArgErr) - - def IProvideClassInfo_GetClassInfo(self, this, ppTI): - if not ppTI: - return E_POINTER - logger.debug("GetClassInfo called for %s", self._reg_clsid_) - ppTI[0] = self.__coclass_tinfo - return S_OK - - def IProvideClassInfo2_GetGUID(self, this, dwGuidKind, pGUID): - if not pGUID: - return E_POINTER - GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1 - if dwGuidKind != GUIDKIND_DEFAULT_SOURCE_DISP_IID: - return E_INVALIDARG - # XXX MSDN: The outgoing interface in question must be derived from IDispatch. - iid = self._outgoing_interfaces_[0]._iid_ - memmove(pGUID, byref(iid), sizeof(iid)) - logger.debug("IProvideClassInfo2::GetGUID -> %s", iid) - return S_OK - -################################################################ +__all__ = ["VARIANTEnumerator"] class VARIANTEnumerator(COMObject): _com_interfaces_ = [IEnumVARIANT] Modified: ctypes/trunk/comtypes/comtypes/server/connectionpoints.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/server/connectionpoints.py (original) +++ ctypes/trunk/comtypes/comtypes/server/connectionpoints.py Thu Apr 17 19:56:27 2008 @@ -58,10 +58,20 @@ # for better performance, we could cache the dispids. dispid = self._typeinfo.GetIDsOfNames(name)[0] for p in self._connections.values(): - p.Invoke(dispid, *args, **kw) + try: + p.Invoke(dispid, *args, **kw) + except COMError, details: + # XXX for certain errors (server missing) we should unadvise the connection + logger.warning("_call_sinks(%s, %s, *%s, **%s)", self, name, args, kw, + exc_info=True) else: for p in self._connections.values(): - getattr(p, name)(*args, **kw) + try: + getattr(p, name)(*args, **kw) + except COMError, details: + # XXX for certain errors (server missing) we should unadvise the connection + logger.warning("_call_sinks(%s, %s, *%s, **%s)", self, name, args, kw, + exc_info=True) class ConnectableObjectMixin(object): """Mixin which implements IConnectionPointContainer. Modified: ctypes/trunk/comtypes/comtypes/server/register.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/server/register.py (original) +++ ctypes/trunk/comtypes/comtypes/server/register.py Thu Apr 17 19:56:27 2008 @@ -286,6 +286,8 @@ if " " in exe: exe = '"%s"' % exe if not hasattr(sys, "frozen"): + if not __debug__: + exe = "%s -O" % exe script = os.path.abspath(sys.modules[cls.__module__].__file__) if " " in script: script = '"%s"' % script @@ -328,7 +330,7 @@ opts, args = w_getopt.w_getopt(sys.argv[1:], "regserver unregserver embedding l: f: nodebug") if not opts: - sys.stderr.write(usage) + sys.stderr.write(usage + "\n") return 0 # nothing for us to do levels = [] Modified: ctypes/trunk/comtypes/comtypes/test/TestComServer.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/test/TestComServer.py (original) +++ ctypes/trunk/comtypes/comtypes/test/TestComServer.py Thu Apr 17 19:56:27 2008 @@ -12,7 +12,6 @@ import comtypes.client import comtypes.errorinfo import comtypes.server -import comtypes.server.automation import comtypes.server.connectionpoints import comtypes.typeinfo @@ -40,7 +39,6 @@ # class. class TestComServer( TestComServerLib.TestComServer, # the coclass from the typelib wrapper - comtypes.server.automation.DualDispImplMixin, # other mixins comtypes.server.connectionpoints.ConnectableObjectMixin, ): Modified: ctypes/trunk/comtypes/comtypes/test/runtests.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/test/runtests.py (original) +++ ctypes/trunk/comtypes/comtypes/test/runtests.py Thu Apr 17 19:56:27 2008 @@ -2,4 +2,4 @@ import comtypes.test if __name__ == "__main__": - sys.exit(comtypes.test.run(sys.argv[1:])) + sys.exit(comtypes.test.main(comtypes.test)) Modified: ctypes/trunk/comtypes/comtypes/test/test_collections.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/test/test_collections.py (original) +++ ctypes/trunk/comtypes/comtypes/test/test_collections.py Thu Apr 17 19:56:27 2008 @@ -2,6 +2,8 @@ from comtypes.client import CreateObject, GetModule #, Constants from ctypes import ArgumentError +from comtypes.test.find_memleak import find_memleak + class Test(unittest.TestCase): def test_IEnumVARIANT(self): @@ -59,5 +61,22 @@ cv.Reset() self.failUnlessRaises(ArgumentError, lambda: cv[:]) + def test_leaks(self): + # The XP firewall manager. + fwmgr = CreateObject('HNetCfg.FwMgr') + # apps has a _NewEnum property that implements IEnumVARIANT + apps = fwmgr.LocalPolicy.CurrentProfile.AuthorizedApplications + + def doit(): + for item in iter(apps): + item.ProcessImageFileName + bytes = find_memleak(doit, (2, 20)) + self.failIf(bytes, "Leaks %d bytes" % bytes) + + def doit(): + iter(apps).Next(99) + bytes = find_memleak(doit, (2, 20)) + self.failIf(bytes, "Leaks %d bytes" % bytes) + if __name__ == "__main__": unittest.main() Modified: ctypes/trunk/comtypes/comtypes/test/test_createwrappers.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/test/test_createwrappers.py (original) +++ ctypes/trunk/comtypes/comtypes/test/test_createwrappers.py Thu Apr 17 19:56:27 2008 @@ -78,6 +78,8 @@ print "ADD", path add_test(path) +for fname in glob.glob(os.path.join(common_progdir, r"Microsoft Shared\Speech\*.dll")): + add_test(fname) for fname in glob.glob(os.path.join(sysdir, "*.dll")): # these typelibs give errors: From python-checkins at python.org Thu Apr 17 20:29:49 2008 From: python-checkins at python.org (thomas.heller) Date: Thu, 17 Apr 2008 20:29:49 +0200 (CEST) Subject: [Python-checkins] r62367 - ctypes/trunk/comtypes/README Message-ID: <20080417182949.8D10F1E400C@bag.python.org> Author: thomas.heller Date: Thu Apr 17 20:29:46 2008 New Revision: 62367 Log: Memory leaks seem to be gone. Modified: ctypes/trunk/comtypes/README Modified: ctypes/trunk/comtypes/README ============================================================================== --- ctypes/trunk/comtypes/README (original) +++ ctypes/trunk/comtypes/README Thu Apr 17 20:29:46 2008 @@ -31,8 +31,6 @@ test_comserver.py, TestLocalServer.test_get_typeinfo() fails with an access violation. No idea why. - There are memory leaks, run the tests with -umemleaks to see them. - Windows CE: 6 tests still fail. One because the CoGetObject function is not From python-checkins at python.org Thu Apr 17 20:36:43 2008 From: python-checkins at python.org (thomas.heller) Date: Thu, 17 Apr 2008 20:36:43 +0200 (CEST) Subject: [Python-checkins] r62368 - in ctypes/trunk/comtypes/comtypes: _comobject.py automation.py client/_events.py test/test_ie.py Message-ID: <20080417183643.A36881E401E@bag.python.org> Author: thomas.heller Date: Thu Apr 17 20:36:42 2008 New Revision: 62368 Log: More changes from upstream svn: Add support for implementing (non-dual) dispinterfaces. Modified: ctypes/trunk/comtypes/comtypes/_comobject.py ctypes/trunk/comtypes/comtypes/automation.py ctypes/trunk/comtypes/comtypes/client/_events.py ctypes/trunk/comtypes/comtypes/test/test_ie.py Modified: ctypes/trunk/comtypes/comtypes/_comobject.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/_comobject.py (original) +++ ctypes/trunk/comtypes/comtypes/_comobject.py Thu Apr 17 20:36:42 2008 @@ -18,6 +18,12 @@ from comtypes.typeinfo import IProvideClassInfo, IProvideClassInfo2 from comtypes import IPersist +# so we don't have to import comtypes.automation +DISPATCH_METHOD = 1 +DISPATCH_PROPERTYGET = 2 +DISPATCH_PROPERTYPUT = 4 +DISPATCH_PROPERTYPUTREF = 8 + class E_NotImplemented(Exception): """COM method is not implemented""" @@ -77,10 +83,10 @@ if code.co_varnames[1:2] == ("this",): return catch_errors(inst, mth, interface, mthname) dirflags = [f[0] for f in paramflags] - # An argument is [IN] if it is not [OUT] ! - # This handles the case where no direction is defined in the IDL file. - # number of input arguments: - args_in = len([f for f in dirflags if (f & 2) == 0]) + # An argument is an input arg either if flags are NOT set in the + # idl file, or if the flags contain 'in'. In other words, the + # direction flag is either exactly '0' or has the '1' bit set: + args_in = len([f for f in dirflags if (f == 0) or (f & 1)]) # number of output arguments: args_out = len([f for f in dirflags if f & 2]) if args_in != code.co_argcount - 1: @@ -92,9 +98,12 @@ clsid = getattr(inst, "_reg_clsid_", None) def wrapper(this, *args): outargs = args[len(args)-args_out:] - for a in outargs: - if not a: - return E_POINTER + # Method implementations could check for and return E_POINTER + # themselves. Or an error will be raised when + # 'outargs[i][0] = value' is executed. +## for a in outargs: +## if not a: +## return E_POINTER try: result = mth(*args[:args_in]) if args_out == 1: @@ -136,7 +145,7 @@ # map lower case names to names with correct spelling. self.names = dict([(n.lower(), n) for n in dir(inst)]) - def get_impl(self, instance, interface, mthname, paramflags, idlflags): + def get_impl(self, interface, mthname, paramflags, idlflags): mth = self.find_impl(interface, mthname, paramflags, idlflags) if mth is None: return _do_implement(interface.__name__, mthname) @@ -226,6 +235,7 @@ return self if hasattr(self, "_com_interfaces_"): self.__prepare_comobject() + self._dispimpl_ = {} return self def __prepare_comobject(self): @@ -278,7 +288,7 @@ restype, mthname, argtypes, paramflags, idlflags, helptext = m proto = WINFUNCTYPE(restype, c_void_p, *argtypes) fields.append((mthname, proto)) - mth = finder.get_impl(self, interface, mthname, paramflags, idlflags) + mth = finder.get_impl(interface, mthname, paramflags, idlflags) methods.append(proto(mth)) Vtbl = _create_vtbl_type(tuple(fields), itf) vtbl = Vtbl(*methods) @@ -391,44 +401,112 @@ else: return 1 - def IDispatch_GetTypeInfo(self, itinfo, lcid): + def IDispatch_GetTypeInfo(self, this, itinfo, lcid, ptinfo): if itinfo != 0: - raise WindowsError(DISP_E_BADINDEX) + return DISP_E_BADINDEX try: - self.__typelib + ptinfo[0] = self.__typeinfo + return S_OK except AttributeError: - raise WindowsError(E_NOTIMPL) - else: - return self.__typeinfo + return E_NOTIMPL def IDispatch_GetIDsOfNames(self, this, riid, rgszNames, cNames, lcid, rgDispId): - # Use windll to let DispGetIDsOfNames return a HRESULT instead - # of raising an error: + # This call uses windll instead of oledll so that a failed + # call to DispGetIDsOfNames will return a HRESULT instead of + # raising an error. try: - self.__typeinfo + tinfo = self.__typeinfo except AttributeError: return E_NOTIMPL - return windll.oleaut32.DispGetIDsOfNames(self.__typeinfo, + return windll.oleaut32.DispGetIDsOfNames(tinfo, rgszNames, cNames, rgDispId) def IDispatch_Invoke(self, this, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr): + interface = self._com_interfaces_[0] try: - self.__typeinfo + # We cannot use DispInvoke on pure dispinterfaces; it + # would return DISP_E_MEMBERNOTFOUND. + # + # XXX Could we check for !TYPEFLAG_DUAL and TYPEFLAG_FDISPATCHABLE instead? + methods = interface._disp_methods_ except AttributeError: - # Hm, we pretend to implement IDispatch, but have no - # typeinfo, and so cannot fulfill the contract. Should we - # better return E_NOTIMPL or DISP_E_MEMBERNOTFOUND? Some - # clients call IDispatch_Invoke with 'known' DISPID_...' - # values, without going through GetIDsOfNames first. + try: + tinfo = self.__typeinfo + except AttributeError: + # Hm, we pretend to implement IDispatch, but have no + # typeinfo, and so cannot fulfill the contract. Should we + # better return E_NOTIMPL or DISP_E_MEMBERNOTFOUND? Some + # clients call IDispatch_Invoke with 'known' DISPID_...' + # values, without going through GetIDsOfNames first. + return DISP_E_MEMBERNOTFOUND + # This call uses windll instead of oledll so that a failed + # call to DispInvoke will return a HRESULT instead of raising + # an error. + ptr = self._com_pointers_[interface._iid_] + return windll.oleaut32.DispInvoke(ptr, + tinfo, + dispIdMember, wFlags, pDispParams, + pVarResult, pExcepInfo, puArgErr) + + impl = self._find_impl(dispIdMember, wFlags, bool(pVarResult)) + if isinstance(impl, int): + return impl + + params = pDispParams[0] + args = [params.rgvarg[i].value for i in range(params.cArgs)[::-1]] + + if pVarResult: + args += [pVarResult] + + return impl(this, *args) + + def _find_impl(self, dispid, wFlags, expects_result, + finder=None): + try: + return self._dispimpl_[(dispid, wFlags)] + except KeyError: + pass + + interface = self._com_interfaces_[0] + + methods = interface._disp_methods_ + # XXX This uses a linear search + descr = [m for m in methods + if m[2][0] == dispid] + if not descr: return DISP_E_MEMBERNOTFOUND - impl = self._com_pointers_[self._com_interfaces_[0]._iid_] - # Use windll to let DispInvoke return a HRESULT instead - # of raising an error: - return windll.oleaut32.DispInvoke(impl, - self.__typeinfo, - dispIdMember, wFlags, pDispParams, - pVarResult, pExcepInfo, puArgErr) + disptype, name, idlflags, restype, argspec = descr[0] + + if disptype == "DISPMETHOD": + if (wFlags & DISPATCH_METHOD) == 0: + return DISP_E_MEMBERNOTFOUND + + elif disptype == "DISPPROPERTY": + + if wFlags & DISPATCH_PROPERTYGET: + name = "_get_" + name + elif wFlags & DISPATCH_PROPERTYPUT: + name = "_set_" + name + elif wFlags & DISPATCH_PROPERTYPUTREF: + name = "_setref_" + name + else: + return DISP_E_MEMBERNOTFOUND + + else: + # this should not happen at all: it is a bug in comtypes + return E_FAIL + + from comtypes import _encode_idl + paramflags = [(_encode_idl(m[0]),) + m[1:] for m in argspec] + if expects_result: + paramflags += [[2]] + + if finder is None: + finder = _MethodFinder(self) + impl = finder.get_impl(interface, name, paramflags, []) + self._dispimpl_[(dispid, wFlags)] = impl + return impl ################################################################ # IPersist interface Modified: ctypes/trunk/comtypes/comtypes/automation.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/automation.py (original) +++ ctypes/trunk/comtypes/comtypes/automation.py Thu Apr 17 20:36:42 2008 @@ -168,6 +168,14 @@ return cls(value) from_param = classmethod(from_param) + def _set_byref(self, value): + # This method allows to change the value of a + # (VT_BYREF|VT_xxx) variant in place. + if not self.vt & VT_BYREF: + raise TypeError("set_byref requires a VT_BYREF VARIANT instance") + typ = _vartype_to_ctype[self.vt & ~VT_BYREF] + cast(self._.c_void_p, POINTER(typ))[0] = value + # see also c:/sf/pywin32/com/win32com/src/oleargs.cpp 54 def _set_value(self, value): _VariantClear(byref(self)) Modified: ctypes/trunk/comtypes/comtypes/client/_events.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/client/_events.py (original) +++ ctypes/trunk/comtypes/comtypes/client/_events.py Thu Apr 17 20:36:42 2008 @@ -185,10 +185,27 @@ rcv._com_pointers_[interface._iid_] = rcv._com_pointers_[comtypes.automation.IDispatch._iid_] return rcv +# New implementation of GetDispEventReceiver; not yet enabled. +# +# The 'this'-calling convention seems to work, the 'this-less' +# convention not yet (severe changes to VARIANT are required). +def X_GetDispEventReceiver(interface, sink): + + class Sink(comtypes.COMObject): + _com_interfaces_ = [interface] + + def _find_impl(self, dispid, wFlags, expects_result): + from comtypes._comobject import _MethodFinder + return super(Sink, self)._find_impl(dispid, wFlags, expects_result, + finder=_MethodFinder(sink)) + + return Sink() + def GetCustomEventReceiver(interface, sink): class EventReceiver(comtypes.COMObject): _com_interfaces_ = [interface] + # XXX should use a mechanism similar to _find_impl() above. for itf in interface.mro()[:-2]: # skip object and IUnknown for info in itf._methods_: restype, name, argtypes, paramflags, idlflags, docstring = info Modified: ctypes/trunk/comtypes/comtypes/test/test_ie.py ============================================================================== --- ctypes/trunk/comtypes/comtypes/test/test_ie.py (original) +++ ctypes/trunk/comtypes/comtypes/test/test_ie.py Thu Apr 17 20:36:42 2008 @@ -78,8 +78,9 @@ ie.Visible = False ie.Quit() - self.failUnlessEqual(sink._events[:2], ['OnVisible', 'BeforeNavigate2']) - self.failUnlessEqual(sink._events[-1], 'OnVisible') + self.failUnlessEqual(sink._events, ['OnVisible', 'BeforeNavigate2', + 'NavigateComplete2', 'DocumentComplete', + 'OnVisible']) del ie del conn From python-checkins at python.org Thu Apr 17 20:37:55 2008 From: python-checkins at python.org (thomas.heller) Date: Thu, 17 Apr 2008 20:37:55 +0200 (CEST) Subject: [Python-checkins] r62369 - ctypes/trunk/comtypes/ChangeLog Message-ID: <20080417183755.A8B3D1E400C@bag.python.org> Author: thomas.heller Date: Thu Apr 17 20:37:55 2008 New Revision: 62369 Log: More changes from upstream svn: Add support for implementing (non-dual) dispinterfaces; work in progress. Modified: ctypes/trunk/comtypes/ChangeLog Modified: ctypes/trunk/comtypes/ChangeLog ============================================================================== --- ctypes/trunk/comtypes/ChangeLog (original) +++ ctypes/trunk/comtypes/ChangeLog Thu Apr 17 20:37:55 2008 @@ -1,5 +1,8 @@ 2008-04-17 Thomas Heller + * More changes merged from upstream svn 26400, add support for + implementing (non-dual) dispinterfaces (work in progress). + * Merge in a lot of changes from the private upstream repository 26394; mainly much better support for implementing comtypes servers. From python-checkins at python.org Thu Apr 17 22:44:06 2008 From: python-checkins at python.org (andrew.kuchling) Date: Thu, 17 Apr 2008 22:44:06 +0200 (CEST) Subject: [Python-checkins] r62370 - python/trunk/Doc/library/itertools.rst Message-ID: <20080417204406.92A001E4018@bag.python.org> Author: andrew.kuchling Date: Thu Apr 17 22:44:06 2008 New Revision: 62370 Log: Typo fixes Modified: python/trunk/Doc/library/itertools.rst Modified: python/trunk/Doc/library/itertools.rst ============================================================================== --- python/trunk/Doc/library/itertools.rst (original) +++ python/trunk/Doc/library/itertools.rst Thu Apr 17 22:44:06 2008 @@ -444,8 +444,8 @@ ``product(A, B)`` returns the same as ``((x,y) for x in A for y in B)``. The nested loops cycle like an odometer with the rightmost element advancing - on every iteration. This pattern creats a lexicographic ordering so that if - the inputs iterables are sorted, the product tuples are emitted in sorted + on every iteration. This pattern creates a lexicographic ordering so that if + the input's iterables are sorted, the product tuples are emitted in sorted order. To compute the product of an iterable with itself, specify the number of From python-checkins at python.org Fri Apr 18 01:27:17 2008 From: python-checkins at python.org (brett.cannon) Date: Fri, 18 Apr 2008 01:27:17 +0200 (CEST) Subject: [Python-checkins] r62371 - peps/trunk/pep-3108.txt Message-ID: <20080417232717.AF8D41E4022@bag.python.org> Author: brett.cannon Date: Fri Apr 18 01:27:17 2008 New Revision: 62371 Log: Clean up the PEP 8 section to only list stuff not slated to be renamed through some other mechanism. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Fri Apr 18 01:27:17 2008 @@ -502,6 +502,8 @@ PEP 8 specifies that modules "should have short, all-lowercase names" where "underscores can be used ... if it improves readability" [#pep-0008]_. The use of underscores is discouraged in package names. +The following modules violate PEP 8 and are not somehow being renamed +by being moved to a package. ================== ================================================== Current Name Replacement Name @@ -509,20 +511,11 @@ _winreg winreg (rename also because module has a public interface and thus should not have a leading underscore) -Carbon carbon -ColorPicker colorpicker ConfigParser configparser -Cookie cookie copy_reg copyreg -EasyDialogs easydialogs -MacOS macos -Nav nav -PixMapWrapper pixmap_wrapper +PixMapWrapper pixmapwrapper Queue queue -ScrolledText scrolledtext SocketServer socketserver -Tix tix -Tkinter tkinter ================== ================================================== From python-checkins at python.org Fri Apr 18 04:40:47 2008 From: python-checkins at python.org (andrew.kuchling) Date: Fri, 18 Apr 2008 04:40:47 +0200 (CEST) Subject: [Python-checkins] r62372 - python/trunk/Doc/library/ssl.rst Message-ID: <20080418024047.D00991E4022@bag.python.org> Author: andrew.kuchling Date: Fri Apr 18 04:40:47 2008 New Revision: 62372 Log: Use correct parameter name Modified: python/trunk/Doc/library/ssl.rst Modified: python/trunk/Doc/library/ssl.rst ============================================================================== --- python/trunk/Doc/library/ssl.rst (original) +++ python/trunk/Doc/library/ssl.rst Fri Apr 18 04:40:47 2008 @@ -508,7 +508,7 @@ server_side=True, certfile="mycertfile", keyfile="mykeyfile", - ssl_protocol=ssl.PROTOCOL_TLSv1) + ssl_version=ssl.PROTOCOL_TLSv1) deal_with_client(connstream) Then you'd read data from the ``connstream`` and do something with it till you are finished with the client (or the client is finished with you):: From buildbot at python.org Fri Apr 18 17:26:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 15:26:30 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc trunk Message-ID: <20080418152630.C10C21E400C@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc trunk. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%20trunk/builds/3176 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: The web-page 'rebuild' button was pressed by 'Martin v. Loewis': add svnversion Build Source Stamp: [branch trunk] HEAD Blamelist: mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Fri Apr 18 18:53:10 2008 From: python-checkins at python.org (andrew.kuchling) Date: Fri, 18 Apr 2008 18:53:10 +0200 (CEST) Subject: [Python-checkins] r62373 - python/trunk/Doc/howto/doanddont.rst Message-ID: <20080418165310.3E5201E4007@bag.python.org> Author: andrew.kuchling Date: Fri Apr 18 18:53:09 2008 New Revision: 62373 Log: #2654: fix typo Modified: python/trunk/Doc/howto/doanddont.rst Modified: python/trunk/Doc/howto/doanddont.rst ============================================================================== --- python/trunk/Doc/howto/doanddont.rst (original) +++ python/trunk/Doc/howto/doanddont.rst Fri Apr 18 18:53:09 2008 @@ -4,7 +4,7 @@ :Author: Moshe Zadka -This document is placed in the public doman. +This document is placed in the public domain. .. topic:: Abstract From buildbot at python.org Fri Apr 18 18:53:48 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 16:53:48 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080418165348.B60941E4007@bag.python.org> The Buildbot has detected a new failure of sparc solaris10 gcc 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/sparc%20solaris10%20gcc%203.0/builds/787 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: loewis-sun Build Reason: The web-page 'rebuild' button was pressed by 'Martin v. L??wis': Installation fixed Build Source Stamp: [branch branches/py3k] HEAD Blamelist: brett.cannon,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Fri Apr 18 20:28:24 2008 From: python-checkins at python.org (andrew.kuchling) Date: Fri, 18 Apr 2008 20:28:24 +0200 (CEST) Subject: [Python-checkins] r62374 - python/trunk/Doc/library/profile.rst Message-ID: <20080418182824.3DC9C1E4004@bag.python.org> Author: andrew.kuchling Date: Fri Apr 18 20:28:23 2008 New Revision: 62374 Log: Remove personal note from Jim Roskind; it no longer applies, and the e-mail address is for a previous employer. Can we move the big long copyright statement into a sidebar or something? Modified: python/trunk/Doc/library/profile.rst Modified: python/trunk/Doc/library/profile.rst ============================================================================== --- python/trunk/Doc/library/profile.rst (original) +++ python/trunk/Doc/library/profile.rst Fri Apr 18 20:28:23 2008 @@ -32,15 +32,6 @@ WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -The profiler was written after only programming in Python for 3 weeks. As a -result, it is probably clumsy code, but I don't know for sure yet 'cause I'm a -beginner :-). I did work hard to make the code run fast, so that profiling -would be a reasonable thing to do. I tried not to repeat code fragments, but -I'm sure I did some stuff in really awkward ways at times. Please send -suggestions for improvements to: jar at netscape.com. I won't promise *any* -support. ...but I'd appreciate the feedback. - - .. _profiler-introduction: Introduction to the profilers From python-checkins at python.org Fri Apr 18 20:39:55 2008 From: python-checkins at python.org (andrew.kuchling) Date: Fri, 18 Apr 2008 20:39:55 +0200 (CEST) Subject: [Python-checkins] r62375 - python/trunk/Doc/library/profile.rst Message-ID: <20080418183955.D11141E401C@bag.python.org> Author: andrew.kuchling Date: Fri Apr 18 20:39:55 2008 New Revision: 62375 Log: Rewrite introductory section, and remove old section. (It was already commented-out, but why keep it?) Modified: python/trunk/Doc/library/profile.rst Modified: python/trunk/Doc/library/profile.rst ============================================================================== --- python/trunk/Doc/library/profile.rst (original) +++ python/trunk/Doc/library/profile.rst Fri Apr 18 20:39:55 2008 @@ -41,82 +41,49 @@ single: deterministic profiling single: profiling, deterministic -A :dfn:`profiler` is a program that describes the run time performance of a -program, providing a variety of statistics. This documentation describes the -profiler functionality provided in the modules :mod:`profile` and :mod:`pstats`. -This profiler provides :dfn:`deterministic profiling` of any Python programs. -It also provides a series of report generation tools to allow users to rapidly +A :dfn:`profiler` is a program that describes the run time performance +of a program, providing a variety of statistics. This documentation +describes the profiler functionality provided in the modules +:mod:`cProfile`, :mod:`profile` and :mod:`pstats`. This profiler +provides :dfn:`deterministic profiling` of Python programs. It also +provides a series of report generation tools to allow users to rapidly examine the results of a profile operation. The Python standard library provides three different profilers: -#. :mod:`profile`, a pure Python module, described in the sequel. Copyright ? - 1994, by InfoSeek Corporation. +#. :mod:`cProfile` is recommended for most users; it's a C extension + with reasonable overhead + that makes it suitable for profiling long-running programs. + Based on :mod:`lsprof`, + contributed by Brett Rosen and Ted Czotter. - .. versionchanged:: 2.4 - also reports the time spent in calls to built-in functions and methods. + .. versionadded:: 2.5 -#. :mod:`cProfile`, a module written in C, with a reasonable overhead that makes - it suitable for profiling long-running programs. Based on :mod:`lsprof`, - contributed by Brett Rosen and Ted Czotter. +#. :mod:`profile`, a pure Python module whose interface is imitated by + :mod:`cProfile`. Adds significant overhead to profiled programs. + If you're trying to extend + the profiler in some way, the task might be easier with this module. + Copyright ? 1994, by InfoSeek Corporation. - .. versionadded:: 2.5 + .. versionchanged:: 2.4 + Now also reports the time spent in calls to built-in functions and methods. -#. :mod:`hotshot`, a C module focusing on minimizing the overhead while - profiling, at the expense of long data post-processing times. +#. :mod:`hotshot` was an experimental C module that focused on minimizing + the overhead of profiling, at the expense of longer data + post-processing times. It is no longer maintained and may be + dropped in a future version of Python. + .. versionchanged:: 2.5 - the results should be more meaningful than in the past: the timing core + The results should be more meaningful than in the past: the timing core contained a critical bug. The :mod:`profile` and :mod:`cProfile` modules export the same interface, so -they are mostly interchangeables; :mod:`cProfile` has a much lower overhead but -is not so far as well-tested and might not be available on all systems. +they are mostly interchangeable; :mod:`cProfile` has a much lower overhead but +is newer and might not be available on all systems. :mod:`cProfile` is really a compatibility layer on top of the internal -:mod:`_lsprof` module. The :mod:`hotshot` module is reserved to specialized -usages. - -.. \section{How Is This Profiler Different From The Old Profiler?} - \nodename{Profiler Changes} - - (This section is of historical importance only; the old profiler - discussed here was last seen in Python 1.1.) - - The big changes from old profiling module are that you get more - information, and you pay less CPU time. It's not a trade-off, it's a - trade-up. - - To be specific: - - \begin{description} - - \item[Bugs removed:] - Local stack frame is no longer molested, execution time is now charged - to correct functions. - - \item[Accuracy increased:] - Profiler execution time is no longer charged to user's code, - calibration for platform is supported, file reads are not done \emph{by} - profiler \emph{during} profiling (and charged to user's code!). - - \item[Speed increased:] - Overhead CPU cost was reduced by more than a factor of two (perhaps a - factor of five), lightweight profiler module is all that must be - loaded, and the report generating module (\module{pstats}) is not needed - during profiling. - - \item[Recursive functions support:] - Cumulative times in recursive functions are correctly calculated; - recursive entries are counted. - - \item[Large growth in report generating UI:] - Distinct profiles runs can be added together forming a comprehensive - report; functions that import statistics take arbitrary lists of - files; sorting criteria is now based on keywords (instead of 4 integer - options); reports shows what functions were profiled as well as what - profile file was referenced; output format has been improved. - - \end{description} +:mod:`_lsprof` module. The :mod:`hotshot` module is reserved for specialized +usage. .. _profile-instant: From python-checkins at python.org Fri Apr 18 20:46:07 2008 From: python-checkins at python.org (eric.smith) Date: Fri, 18 Apr 2008 20:46:07 +0200 (CEST) Subject: [Python-checkins] r62376 - peps/trunk/pep-3127.txt Message-ID: <20080418184607.B96701E401D@bag.python.org> Author: eric.smith Date: Fri Apr 18 20:46:07 2008 New Revision: 62376 Log: Removed %b formatting from string % operator. Because % formatting will be deprecated in favor of str.format(), we don't want to be adding features it. Modified: peps/trunk/pep-3127.txt Modified: peps/trunk/pep-3127.txt ============================================================================== --- peps/trunk/pep-3127.txt (original) +++ peps/trunk/pep-3127.txt Fri Apr 18 20:46:07 2008 @@ -128,13 +128,14 @@ Output formatting ----------------- -The string (and unicode in 2.6) % operator will have -'b' format specifier added for binary in both 2.6 and 3.0. -In 3.0, the alternate syntax of the 'o' option will need to -be updated to add '0o' in front, instead of '0'. In 2.6, -alternate octal formatting will continue to add only '0'. - -PEP 3101 already supports 'b' for binary output. +In 3.0, the string % operator alternate syntax for the 'o' +option will need to be updated to add '0o' in front, +instead of '0'. In 2.6, alternate octal formatting will +continue to add only '0'. In neither 2.6 nor 3.0 will +the % operator support binary output. This is because +binary output is already supported by PEP 3101 +(str.format), which is the prefered string formatting +method. Transition from 2.6 to 3.0 @@ -437,9 +438,9 @@ with the "x" for "heXadecimal". For the string % operator, "o" was already being used to denote -octal, and "b" was not used for anything, so this works out -much better than, for example, using "c" (which means "character" -for the % operator). +octal. Binary formatting is not being added to the % operator +because PEP 3101 (Advanced String Formatting) already supports +binary, % formatting will be deprecated in the future. At the end of the day, since uppercase "O" can look like a zero and uppercase "B" can look like an 8, it was decided that these @@ -465,7 +466,7 @@ and there would need to be a consensus that there is a valid use-case for the "alternate form" of the string % operator to support uppercase 'B' or 'O' characters for binary or -octal output. Currently, PEP3101 does not even support this +octal output. Currently, PEP 3101 does not even support this alternate capability, and the hex() function does not allow the programmer to specify the case of the 'x' character. From python-checkins at python.org Fri Apr 18 20:56:36 2008 From: python-checkins at python.org (thomas.heller) Date: Fri, 18 Apr 2008 20:56:36 +0200 (CEST) Subject: [Python-checkins] r62377 - in ctypes/trunk/comtypes/comtypes/test: TestDispServer.idl TestDispServer.py TestDispServer.tlb test_dispinterface.py Message-ID: <20080418185636.822D21E401D@bag.python.org> Author: thomas.heller Date: Fri Apr 18 20:56:35 2008 New Revision: 62377 Log: Tests for dispinterface implementation. Added: ctypes/trunk/comtypes/comtypes/test/TestDispServer.idl (contents, props changed) ctypes/trunk/comtypes/comtypes/test/TestDispServer.py (contents, props changed) ctypes/trunk/comtypes/comtypes/test/TestDispServer.tlb (contents, props changed) ctypes/trunk/comtypes/comtypes/test/test_dispinterface.py (contents, props changed) Added: ctypes/trunk/comtypes/comtypes/test/TestDispServer.idl ============================================================================== --- (empty file) +++ ctypes/trunk/comtypes/comtypes/test/TestDispServer.idl Fri Apr 18 20:56:35 2008 @@ -0,0 +1,73 @@ +/* + 2882fa40-2d69-4880-8073-e81fa29e1785 + 7ae4b0e3-5d92-4ab1-b5d0-2a95c1c3ba73 + f557bf87-3e3f-4c73-9bc1-7d633d83714b +*/ + +import "oaidl.idl"; +import "ocidl.idl"; + +[ + uuid(3b3b2a10-7fef-4bcc-90fe-43a221162b1b), + helpstring("A custom event interface") + ] +dispinterface DTestDispServerEvents { + properties: + + methods: + [id(10)] + void EvalStarted([in] BSTR what); + + [id(11)] + void EvalCompleted([in] BSTR what, [in] VARIANT result); +}; + +[ + uuid(d44d11ba-aa1f-4e93-8f5a-8fa0a4715241), + helpstring("DTestDispServer interface") + ] +dispinterface DTestDispServer { + properties: + [propget, id(10), helpstring("the id of the server")] + UINT id; + + [id(11), helpstring("the name of the server")] + BSTR name; + + methods: + + [id(12), helpstring("a method that receives an BSTR [in] parameter")] + void SetName([in] BSTR name); + + [id(13), helpstring("evaluate an expression and return the result")] + VARIANT eval([in] BSTR what); + + [id(14), helpstring("evaluate an expression and return the result")] + VARIANT eval2([in] BSTR what); + + /* Some methods that use defaultvalues */ + [id(100)] + void do_cy([in, defaultvalue(32.78)] CURRENCY *value); + + [id(101)] + void do_date([in, defaultvalue(32)] DATE *value); +}; + +[ + uuid(6baa1c79-4ba0-47f2-9ad7-d2ffb1c0f3e3), + version(1.0), + helpstring("TestDispServer 1.0 Type library") + ] +library TestDispServerLib +{ + importlib("stdole2.tlb"); + + [ + uuid(bb2aba53-9d42-435b-acc3-ae2c274517b0), + helpstring("TestDispServer class object") + ] + coclass TestDispServer { + [default] dispinterface DTestDispServer; + [default, source] dispinterface DTestDispServerEvents; + }; +}; Added: ctypes/trunk/comtypes/comtypes/test/TestDispServer.py ============================================================================== --- (empty file) +++ ctypes/trunk/comtypes/comtypes/test/TestDispServer.py Fri Apr 18 20:56:35 2008 @@ -0,0 +1,98 @@ +import sys, os +import logging +logging.basicConfig() +##logging.basicConfig(level=logging.DEBUG) +##logger = logging.getLogger(__name__) + +sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), r"..\.."))) + +import ctypes +import comtypes +from comtypes.hresult import * +import comtypes.client +import comtypes.errorinfo +import comtypes.server +import comtypes.server.connectionpoints +import comtypes.typeinfo + +################################################################ + +# Create the wrapper in the comtypes.gen package, it will be named +# TestComServerLib; the name is derived from the 'library ' statement +# in the IDL file +if not hasattr(sys, "frozen"): + # pathname of the type library file + tlbfile = os.path.join(os.path.dirname(__file__), "TestDispServer.tlb") + # if running as frozen app (dll or exe), the wrapper should be in + # the library archive, so we don't need to generate it. + comtypes.client.GetModule(tlbfile) + +# Import the wrapper +from comtypes.gen import TestDispServerLib + +################################################################ + +# Implement the CoClass. Use the coclass from the wrapper as base +# class, and use DualDispMixin as base class which provides default +# implementations of IDispatch, IProvideClassInfo, IProvideClassInfo2 +# interfaces. ISupportErrorInfo is implemented by the COMObject base +# class. +class TestDispServer( + TestDispServerLib.TestDispServer, # the coclass from the typelib wrapper + comtypes.server.connectionpoints.ConnectableObjectMixin, + ): + + # The default interface from the typelib MUST be the first + # interface, other interfaces can follow + + _com_interfaces_ = TestDispServerLib.TestDispServer._com_interfaces_ + \ + [comtypes.typeinfo.IProvideClassInfo2, + comtypes.errorinfo.ISupportErrorInfo, + comtypes.connectionpoints.IConnectionPointContainer, + ] + + # registry entries + _reg_threading_ = "Both" + _reg_progid_ = "TestDispServerLib.TestDispServer.1" + _reg_novers_progid_ = "TestDispServerLib.TestDispServer" + _reg_desc_ = "comtypes COM server sample for testing" + _reg_clsctx_ = comtypes.CLSCTX_INPROC_SERVER | comtypes.CLSCTX_LOCAL_SERVER + + ################################ + # DTestDispServer methods + + def DTestDispServer_eval(self, this, expr, presult): + self.Fire_Event(0, "EvalStarted", expr) + presult[0].value = eval(expr) + self.Fire_Event(0, "EvalCompleted", expr, presult[0].value) + return S_OK + + def DTestDispServer_eval2(self, expr): + self.Fire_Event(0, "EvalStarted", expr) + result = eval(expr) + self.Fire_Event(0, "EvalCompleted", expr, result) + return result + + def DTestDispServer__get_id(self, this, pid): + pid[0] = id(self) + return S_OK + + _name = u"spam, spam, spam" + + # Implementation of the DTestDispServer::Name propget + def DTestDispServer__get_name(self, this, pname): + pname[0].value = self._name + return S_OK + + # Implementation of the DTestDispServer::Name propput + def DTestDispServer__set_name(self, this, name): + self._name = name + return S_OK + + # Implementation of the DTestDispServer::SetName method + def DTestDispServer_sEtNaMe(self, name): + self._name = name + +if __name__ == "__main__": + from comtypes.server.register import UseCommandLine + UseCommandLine(TestDispServer) Added: ctypes/trunk/comtypes/comtypes/test/TestDispServer.tlb ============================================================================== Binary file. No diff available. Added: ctypes/trunk/comtypes/comtypes/test/test_dispinterface.py ============================================================================== --- (empty file) +++ ctypes/trunk/comtypes/comtypes/test/test_dispinterface.py Fri Apr 18 20:56:35 2008 @@ -0,0 +1,120 @@ +import unittest + +from comtypes.server.register import register#, unregister + +################################################################ +import comtypes.test.TestDispServer +register(comtypes.test.TestDispServer.TestDispServer) + +class Test(unittest.TestCase): + + def test_win32com(self): + from win32com.client import Dispatch + d = Dispatch("TestDispServerLib.TestDispServer") + + self.assertEqual(d.eval("3.14"), 3.14) + self.assertEqual(d.eval("1 + 2"), 3) + self.assertEqual(d.eval("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.eval2("3.14"), 3.14) + self.assertEqual(d.eval2("1 + 2"), 3) + self.assertEqual(d.eval2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + d.eval("__import__('comtypes.client').client.CreateObject('MSScriptControl.ScriptControl')") + + self.assertEqual(d.EVAL("3.14"), 3.14) + self.assertEqual(d.EVAL("1 + 2"), 3) + self.assertEqual(d.EVAL("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.EVAL2("3.14"), 3.14) + self.assertEqual(d.EVAL2("1 + 2"), 3) + self.assertEqual(d.EVAL2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + server_id = d.eval("id(self)") + self.assertEqual(d.id, server_id) + self.assertEqual(d.ID, server_id) + + self.assertEqual(d.Name, "spam, spam, spam") + self.assertEqual(d.nAME, "spam, spam, spam") + + d.SetName("foo bar") + self.assertEqual(d.Name, "foo bar") + + # fails +## d.name = "blah" +## self.assertEqual(d.Name, "blah") + + def test_win32com_dyndispatch(self): + from win32com.client.dynamic import Dispatch + d = Dispatch("TestDispServerLib.TestDispServer") + + self.assertEqual(d.eval("3.14"), 3.14) + self.assertEqual(d.eval("1 + 2"), 3) + self.assertEqual(d.eval("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.eval2("3.14"), 3.14) + self.assertEqual(d.eval2("1 + 2"), 3) + self.assertEqual(d.eval2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + d.eval("__import__('comtypes.client').client.CreateObject('MSScriptControl.ScriptControl')") + + self.assertEqual(d.EVAL("3.14"), 3.14) + self.assertEqual(d.EVAL("1 + 2"), 3) + self.assertEqual(d.EVAL("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.EVAL2("3.14"), 3.14) + self.assertEqual(d.EVAL2("1 + 2"), 3) + self.assertEqual(d.EVAL2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + server_id = d.eval("id(self)") + self.assertEqual(d.id, server_id) + self.assertEqual(d.ID, server_id) + + self.assertEqual(d.Name, "spam, spam, spam") + self.assertEqual(d.nAME, "spam, spam, spam") + + d.SetName("foo bar") + self.assertEqual(d.Name, "foo bar") + + # fails +## d.name = "blah" +## self.assertEqual(d.Name, "blah") + + def test_comtypes(self): + from comtypes.client import CreateObject + d = CreateObject("TestDispServerLib.TestDispServer") + + self.assertEqual(d.eval("3.14"), 3.14) + self.assertEqual(d.eval("1 + 2"), 3) + self.assertEqual(d.eval("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.eval2("3.14"), 3.14) + self.assertEqual(d.eval2("1 + 2"), 3) + self.assertEqual(d.eval2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + d.eval("__import__('comtypes.client').client.CreateObject('MSScriptControl.ScriptControl')") + + self.assertEqual(d.EVAL("3.14"), 3.14) + self.assertEqual(d.EVAL("1 + 2"), 3) + self.assertEqual(d.EVAL("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + self.assertEqual(d.EVAL2("3.14"), 3.14) + self.assertEqual(d.EVAL2("1 + 2"), 3) + self.assertEqual(d.EVAL2("[1 + 2, 'foo', None]"), (3, 'foo', None)) + + server_id = d.eval("id(self)") + self.assertEqual(d.id, server_id) + self.assertEqual(d.ID, server_id) + + self.assertEqual(d.Name, "spam, spam, spam") + self.assertEqual(d.nAME, "spam, spam, spam") + + d.SetName("foo bar") + self.assertEqual(d.Name, "foo bar") + + # fails +## d.name = "blah" +## self.assertEqual(d.Name, "blah") + +if __name__ == "__main__": + unittest.main() From python-checkins at python.org Fri Apr 18 22:35:46 2008 From: python-checkins at python.org (skip.montanaro) Date: Fri, 18 Apr 2008 22:35:46 +0200 (CEST) Subject: [Python-checkins] r62378 - in python/trunk: Lib/test/test_xmlrpc.py Lib/xmlrpclib.py Misc/NEWS Message-ID: <20080418203546.6A5221E4007@bag.python.org> Author: skip.montanaro Date: Fri Apr 18 22:35:46 2008 New Revision: 62378 Log: resolve issue 2014 Modified: python/trunk/Lib/test/test_xmlrpc.py python/trunk/Lib/xmlrpclib.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/test/test_xmlrpc.py ============================================================================== --- python/trunk/Lib/test/test_xmlrpc.py (original) +++ python/trunk/Lib/test/test_xmlrpc.py Fri Apr 18 22:35:46 2008 @@ -55,6 +55,17 @@ (newdt,), m = xmlrpclib.loads(s, use_datetime=0) self.assertEquals(newdt, xmlrpclib.DateTime('20050210T11:41:23')) + def test_datetime_before_1900(self): + # same as before but with an date before 1900 + dt = datetime.datetime(1, 02, 10, 11, 41, 23) + s = xmlrpclib.dumps((dt,)) + (newdt,), m = xmlrpclib.loads(s, use_datetime=1) + self.assertEquals(newdt, dt) + self.assertEquals(m, None) + + (newdt,), m = xmlrpclib.loads(s, use_datetime=0) + self.assertEquals(newdt, xmlrpclib.DateTime('00010210T11:41:23')) + def test_cmp_datetime_DateTime(self): now = datetime.datetime.now() dt = xmlrpclib.DateTime(now.timetuple()) Modified: python/trunk/Lib/xmlrpclib.py ============================================================================== --- python/trunk/Lib/xmlrpclib.py (original) +++ python/trunk/Lib/xmlrpclib.py Fri Apr 18 22:35:46 2008 @@ -346,6 +346,20 @@ # @param value The time, given as an ISO 8601 string, a time # tuple, or a integer time value. +def _strftime(value): + if datetime: + if isinstance(value, datetime.datetime): + return "%04d%02d%02dT%02d:%02d:%02d" % ( + value.year, value.month, value.day, + value.hour, value.minute, value.second) + + if not isinstance(value, (TupleType, time.struct_time)): + if value == 0: + value = time.time() + value = time.localtime(value) + + return "%04d%02d%02dT%02d:%02d:%02d" % value[:6] + class DateTime: """DateTime wrapper for an ISO 8601 string or time tuple or localtime integer value to generate 'dateTime.iso8601' XML-RPC @@ -353,16 +367,10 @@ """ def __init__(self, value=0): - if not isinstance(value, StringType): - if datetime and isinstance(value, datetime.datetime): - self.value = value.strftime("%Y%m%dT%H:%M:%S") - return - if not isinstance(value, (TupleType, time.struct_time)): - if value == 0: - value = time.time() - value = time.localtime(value) - value = time.strftime("%Y%m%dT%H:%M:%S", value) - self.value = value + if isinstance(value, StringType): + self.value = value + else: + self.value = _strftime(value) def make_comparable(self, other): if isinstance(other, DateTime): @@ -772,7 +780,7 @@ if datetime: def dump_datetime(self, value, write): write("") - write(value.strftime("%Y%m%dT%H:%M:%S")) + write(_strftime(value)) write("\n") dispatch[datetime.datetime] = dump_datetime Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Apr 18 22:35:46 2008 @@ -29,6 +29,9 @@ Library ------- +- Issue #2014: Allow XML-RPC datetime objects to have dates before + 1900-01-01. + - Issue #2439: Added new function pkgutil.get_data(), which is a convenience wrapper for the PEP 302 get_data() API. From python-checkins at python.org Fri Apr 18 22:45:34 2008 From: python-checkins at python.org (benjamin.peterson) Date: Fri, 18 Apr 2008 22:45:34 +0200 (CEST) Subject: [Python-checkins] r62379 - python/trunk/Python/sysmodule.c Message-ID: <20080418204534.1FAA81E401F@bag.python.org> Author: benjamin.peterson Date: Fri Apr 18 22:45:33 2008 New Revision: 62379 Log: Fix indentation in sysmodule.c Modified: python/trunk/Python/sysmodule.c Modified: python/trunk/Python/sysmodule.c ============================================================================== --- python/trunk/Python/sysmodule.c (original) +++ python/trunk/Python/sysmodule.c Fri Apr 18 22:45:33 2008 @@ -1299,9 +1299,9 @@ PyDict_SetItemString(sysdict, "__stdout__", sysout); PyDict_SetItemString(sysdict, "__stderr__", syserr); PyDict_SetItemString(sysdict, "__displayhook__", - PyDict_GetItemString(sysdict, "displayhook")); + PyDict_GetItemString(sysdict, "displayhook")); PyDict_SetItemString(sysdict, "__excepthook__", - PyDict_GetItemString(sysdict, "excepthook")); + PyDict_GetItemString(sysdict, "excepthook")); Py_XDECREF(sysin); Py_XDECREF(sysout); Py_XDECREF(syserr); @@ -1312,10 +1312,10 @@ PyInt_FromLong(PY_VERSION_HEX)); svnversion_init(); SET_SYS_FROM_STRING("subversion", - Py_BuildValue("(ssz)", "CPython", branch, + Py_BuildValue("(ssz)", "CPython", branch, svn_revision)); SET_SYS_FROM_STRING("dont_write_bytecode", - PyBool_FromLong(Py_DontWriteBytecodeFlag)); + PyBool_FromLong(Py_DontWriteBytecodeFlag)); /* * These release level checks are mutually exclusive and cover * the field, so don't get too fancy with the pre-processor! From buildbot at python.org Fri Apr 18 23:27:21 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 21:27:21 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080418212721.E2E551E4007@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/310 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_cprofile sincerely, -The Buildbot From buildbot at python.org Fri Apr 18 23:28:37 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 21:28:37 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080418212837.A30971E4007@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/61 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_smtplib make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 01:13:09 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 01:13:09 +0200 (CEST) Subject: [Python-checkins] r62380 - in python/trunk: Doc/library/cmath.rst Doc/library/math.rst Include/Python.h Include/complexobject.h Include/floatobject.h Include/pymath.h Include/pyport.h Lib/test/cmath_testcases.txt Lib/test/ieee754.txt Lib/test/test_cmath.py Lib/test/test_float.py Lib/test/test_math.py Makefile.pre.in Misc/NEWS Modules/cmathmodule.c Modules/mathmodule.c Objects/complexobject.c Objects/doubledigits.c Objects/floatobject.c Objects/intobject.c Objects/longobject.c PC/pyconfig.h Python/hypot.c Python/pymath.c configure Message-ID: <20080418231309.925F21E4007@bag.python.org> Author: christian.heimes Date: Sat Apr 19 01:13:07 2008 New Revision: 62380 Log: I finally got the time to update and merge Mark's and my trunk-math branch. The patch is collaborated work of Mark Dickinson and me. It was mostly done a few months ago. The patch fixes a lot of loose ends and edge cases related to operations with NaN, INF, very small values and complex math. The patch also adds acosh, asinh, atanh, log1p and copysign to all platforms. Finally it fixes differences between platforms like different results or exceptions for edge cases. Have fun :) Added: python/trunk/Include/pymath.h - copied unchanged from r62242, /python/branches/trunk-math/Include/pymath.h python/trunk/Lib/test/cmath_testcases.txt - copied unchanged from r62242, /python/branches/trunk-math/Lib/test/cmath_testcases.txt python/trunk/Lib/test/ieee754.txt - copied unchanged from r62242, /python/branches/trunk-math/Lib/test/ieee754.txt python/trunk/Python/pymath.c - copied unchanged from r62242, /python/branches/trunk-math/Python/pymath.c Removed: python/trunk/Objects/doubledigits.c python/trunk/Python/hypot.c Modified: python/trunk/Doc/library/cmath.rst python/trunk/Doc/library/math.rst python/trunk/Include/Python.h python/trunk/Include/complexobject.h python/trunk/Include/floatobject.h python/trunk/Include/pyport.h python/trunk/Lib/test/test_cmath.py python/trunk/Lib/test/test_float.py python/trunk/Lib/test/test_math.py python/trunk/Makefile.pre.in python/trunk/Misc/NEWS python/trunk/Modules/cmathmodule.c python/trunk/Modules/mathmodule.c python/trunk/Objects/complexobject.c python/trunk/Objects/floatobject.c python/trunk/Objects/intobject.c python/trunk/Objects/longobject.c python/trunk/PC/pyconfig.h python/trunk/configure Modified: python/trunk/Doc/library/cmath.rst ============================================================================== --- python/trunk/Doc/library/cmath.rst (original) +++ python/trunk/Doc/library/cmath.rst Sat Apr 19 01:13:07 2008 @@ -14,8 +14,81 @@ floating-point number, respectively, and the function is then applied to the result of the conversion. -The functions are: +.. note:: + On platforms with hardware and system-level support for signed + zeros, functions involving branch cuts are continuous on *both* + sides of the branch cut: the sign of the zero distinguishes one + side of the branch cut from the other. On platforms that do not + support signed zeros the continuity is as specified below. + + +Complex coordinates +------------------- + +Complex numbers can be expressed by two important coordinate systems. +Python's :class:`complex` type uses rectangular coordinates where a number +on the complex plain is defined by two floats, the real part and the imaginary +part. + +Definition:: + + z = x + 1j * y + + x := real(z) + y := imag(z) + +In engineering the polar coordinate system is popular for complex numbers. In +polar coordinates a complex number is defined by the radius *r* and the phase +angle *?*. The radius *r* is the absolute value of the complex, which can be +viewed as distance from (0, 0). The radius *r* is always 0 or a positive float. +The phase angle *?* is the counter clockwise angle from the positive x axis, +e.g. *1* has the angle *0*, *1j* has the angle *?/2* and *-1* the angle *-?*. + +.. note:: + While :func:`phase` and func:`polar` return *+?* for a negative real they + may return *-?* for a complex with a very small negative imaginary + part, e.g. *-1-1E-300j*. + + +Definition:: + + z = r * exp(1j * ?) + z = r * cis(?) + + r := abs(z) := sqrt(real(z)**2 + imag(z)**2) + phi := phase(z) := atan2(imag(z), real(z)) + cis(?) := cos(?) + 1j * sin(?) + + +.. function:: phase(x) + + Return phase, also known as the argument, of a complex. + + .. versionadded:: 2.6 + + +.. function:: polar(x) + + Convert a :class:`complex` from rectangular coordinates to polar + coordinates. The function returns a tuple with the two elements + *r* and *phi*. *r* is the distance from 0 and *phi* the phase + angle. + + .. versionadded:: 2.6 + + +.. function:: rect(r, phi) + + Convert from polar coordinates to rectangular coordinates and return + a :class:`complex`. + + .. versionadded:: 2.6 + + + +cmath functions +--------------- .. function:: acos(x) @@ -37,30 +110,35 @@ .. function:: asinh(x) - Return the hyperbolic arc sine of *x*. There are two branch cuts, extending - left from ``?1j`` to ``??j``, both continuous from above. These branch cuts - should be considered a bug to be corrected in a future release. The correct - branch cuts should extend along the imaginary axis, one from ``1j`` up to - ``?j`` and continuous from the right, and one from ``-1j`` down to ``-?j`` - and continuous from the left. + Return the hyperbolic arc sine of *x*. There are two branch cuts: + One extends from ``1j`` along the imaginary axis to ``?j``, + continuous from the right. The other extends from ``-1j`` along + the imaginary axis to ``-?j``, continuous from the left. + + .. versionchanged:: 2.6 + branch cuts moved to match those recommended by the C99 standard .. function:: atan(x) Return the arc tangent of *x*. There are two branch cuts: One extends from - ``1j`` along the imaginary axis to ``?j``, continuous from the left. The + ``1j`` along the imaginary axis to ``?j``, continuous from the right. The other extends from ``-1j`` along the imaginary axis to ``-?j``, continuous - from the left. (This should probably be changed so the upper cut becomes - continuous from the other side.) + from the left. + + .. versionchanged:: 2.6 + direction of continuity of upper cut reversed .. function:: atanh(x) Return the hyperbolic arc tangent of *x*. There are two branch cuts: One - extends from ``1`` along the real axis to ``?``, continuous from above. The + extends from ``1`` along the real axis to ``?``, continuous from below. The other extends from ``-1`` along the real axis to ``-?``, continuous from - above. (This should probably be changed so the right cut becomes continuous - from the other side.) + above. + + .. versionchanged:: 2.6 + direction of continuity of right cut reversed .. function:: cos(x) @@ -78,6 +156,21 @@ Return the exponential value ``e**x``. +.. function:: isinf(x) + + Return *True* if the real or the imaginary part of x is positive + or negative infinity. + + .. versionadded:: 2.6 + + +.. function:: isnan(x) + + Return *True* if the real or imaginary part of x is not a number (NaN). + + .. versionadded:: 2.6 + + .. function:: log(x[, base]) Returns the logarithm of *x* to the given *base*. If the *base* is not @@ -154,3 +247,4 @@ nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the art in numerical analysis. Clarendon Press (1987) pp165-211. + Modified: python/trunk/Doc/library/math.rst ============================================================================== --- python/trunk/Doc/library/math.rst (original) +++ python/trunk/Doc/library/math.rst Sat Apr 19 01:13:07 2008 @@ -139,6 +139,14 @@ *base* argument added. +.. function:: log1p(x) + + Return the natural logarithm of *1+x* (base *e*). The + result is calculated in a way which is accurate for *x* near zero. + + .. versionadded:: 2.6 + + .. function:: log10(x) Return the base-10 logarithm of *x*. @@ -146,7 +154,11 @@ .. function:: pow(x, y) - Return ``x**y``. + Return ``x**y``. ``1.0**y`` returns *1.0*, even for ``1.0**nan``. ``0**y`` + returns *0.* for all positive *y*, *0* and *NAN*. + + .. versionchanged:: 2.6 + The outcome of ``1**nan`` and ``0**nan`` was undefined. .. function:: sqrt(x) @@ -197,6 +209,13 @@ Return the sine of *x* radians. +.. function:: asinh(x) + + Return the inverse hyperbolic sine of *x*, in radians. + + .. versionadded:: 2.6 + + .. function:: tan(x) Return the tangent of *x* radians. @@ -221,6 +240,13 @@ Return the hyperbolic cosine of *x*. +.. function:: acosh(x) + + Return the inverse hyperbolic cosine of *x*, in radians. + + .. versionadded:: 2.6 + + .. function:: sinh(x) Return the hyperbolic sine of *x*. @@ -230,6 +256,14 @@ Return the hyperbolic tangent of *x*. + +.. function:: atanh(x) + + Return the inverse hyperbolic tangent of *x*, in radians. + + .. versionadded:: 2.6 + + The module also defines two mathematical constants: @@ -242,6 +276,7 @@ The mathematical constant *e*. + .. note:: The :mod:`math` module consists mostly of thin wrappers around the platform C @@ -255,9 +290,17 @@ :exc:`OverflowError` isn't defined, and in cases where ``math.log(0)`` raises :exc:`OverflowError`, ``math.log(0L)`` may raise :exc:`ValueError` instead. + All functions return a quite *NaN* if at least one of the args is *NaN*. + Signaling *NaN*s raise an exception. The exception type still depends on the + platform and libm implementation. It's usually :exc:`ValueError` for *EDOM* + and :exc:`OverflowError` for errno *ERANGE*. + + ..versionchanged:: 2.6 + In earlier versions of Python the outcome of an operation with NaN as + input depended on platform and libm implementation. + .. seealso:: Module :mod:`cmath` Complex number versions of many of these functions. - Modified: python/trunk/Include/Python.h ============================================================================== --- python/trunk/Include/Python.h (original) +++ python/trunk/Include/Python.h Sat Apr 19 01:13:07 2008 @@ -73,6 +73,7 @@ #if defined(PYMALLOC_DEBUG) && !defined(WITH_PYMALLOC) #error "PYMALLOC_DEBUG requires WITH_PYMALLOC" #endif +#include "pymath.h" #include "pymem.h" #include "object.h" Modified: python/trunk/Include/complexobject.h ============================================================================== --- python/trunk/Include/complexobject.h (original) +++ python/trunk/Include/complexobject.h Sat Apr 19 01:13:07 2008 @@ -19,6 +19,7 @@ #define c_prod _Py_c_prod #define c_quot _Py_c_quot #define c_pow _Py_c_pow +#define c_abs _Py_c_abs PyAPI_FUNC(Py_complex) c_sum(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_diff(Py_complex, Py_complex); @@ -26,6 +27,7 @@ PyAPI_FUNC(Py_complex) c_prod(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_quot(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_pow(Py_complex, Py_complex); +PyAPI_FUNC(double) c_abs(Py_complex); /* Complex object interface */ Modified: python/trunk/Include/floatobject.h ============================================================================== --- python/trunk/Include/floatobject.h (original) +++ python/trunk/Include/floatobject.h Sat Apr 19 01:13:07 2008 @@ -21,6 +21,17 @@ #define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type) #define PyFloat_CheckExact(op) (Py_TYPE(op) == &PyFloat_Type) +#ifdef Py_NAN +#define Py_RETURN_NAN PyFloat_FromDouble(Py_NAN) +#endif + +#define Py_RETURN_INF(sign) do \ + if (copysign(1., sign) == 1.) { \ + return PyFloat_FromDouble(Py_HUGE_VAL); \ + } else { \ + return PyFloat_FromDouble(-Py_HUGE_VAL); \ + } while(0) + PyAPI_FUNC(double) PyFloat_GetMax(void); PyAPI_FUNC(double) PyFloat_GetMin(void); PyAPI_FUNC(PyObject *) PyFloat_GetInfo(void); Modified: python/trunk/Include/pyport.h ============================================================================== --- python/trunk/Include/pyport.h (original) +++ python/trunk/Include/pyport.h Sat Apr 19 01:13:07 2008 @@ -353,123 +353,6 @@ #define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) (NARROW)(VALUE) #endif -/* High precision defintion of pi and e (Euler) - * The values are taken from libc6's math.h. - */ -#ifndef Py_MATH_PIl -#define Py_MATH_PIl 3.1415926535897932384626433832795029L -#endif -#ifndef Py_MATH_PI -#define Py_MATH_PI 3.14159265358979323846 -#endif - -#ifndef Py_MATH_El -#define Py_MATH_El 2.7182818284590452353602874713526625L -#endif - -#ifndef Py_MATH_E -#define Py_MATH_E 2.7182818284590452354 -#endif - -/* Py_IS_NAN(X) - * Return 1 if float or double arg is a NaN, else 0. - * Caution: - * X is evaluated more than once. - * This may not work on all platforms. Each platform has *some* - * way to spell this, though -- override in pyconfig.h if you have - * a platform where it doesn't work. - */ -#ifndef Py_IS_NAN -#ifdef HAVE_ISNAN -#define Py_IS_NAN(X) isnan(X) -#else -#define Py_IS_NAN(X) ((X) != (X)) -#endif -#endif - -/* Py_IS_INFINITY(X) - * Return 1 if float or double arg is an infinity, else 0. - * Caution: - * X is evaluated more than once. - * This implementation may set the underflow flag if |X| is very small; - * it really can't be implemented correctly (& easily) before C99. - * Override in pyconfig.h if you have a better spelling on your platform. - */ -#ifndef Py_IS_INFINITY -#ifdef HAVE_ISINF -#define Py_IS_INFINITY(X) isinf(X) -#else -#define Py_IS_INFINITY(X) ((X) && (X)*0.5 == (X)) -#endif -#endif - -/* Py_IS_FINITE(X) - * Return 1 if float or double arg is neither infinite nor NAN, else 0. - * Some compilers (e.g. VisualStudio) have intrisics for this, so a special - * macro for this particular test is useful - */ -#ifndef Py_IS_FINITE -#ifdef HAVE_FINITE -#define Py_IS_FINITE(X) finite(X) -#else -#define Py_IS_FINITE(X) (!Py_IS_INFINITY(X) && !Py_IS_NAN(X)) -#endif -#endif - -/* HUGE_VAL is supposed to expand to a positive double infinity. Python - * uses Py_HUGE_VAL instead because some platforms are broken in this - * respect. We used to embed code in pyport.h to try to worm around that, - * but different platforms are broken in conflicting ways. If you're on - * a platform where HUGE_VAL is defined incorrectly, fiddle your Python - * config to #define Py_HUGE_VAL to something that works on your platform. - */ -#ifndef Py_HUGE_VAL -#define Py_HUGE_VAL HUGE_VAL -#endif - -/* Py_NAN - * A value that evaluates to a NaN. On IEEE 754 platforms INF*0 or - * INF/INF works. Define Py_NO_NAN in pyconfig.h if your platform - * doesn't support NaNs. - */ -#if !defined(Py_NAN) && !defined(Py_NO_NAN) -#define Py_NAN (Py_HUGE_VAL * 0.) -#endif - -/* Py_OVERFLOWED(X) - * Return 1 iff a libm function overflowed. Set errno to 0 before calling - * a libm function, and invoke this macro after, passing the function - * result. - * Caution: - * This isn't reliable. C99 no longer requires libm to set errno under - * any exceptional condition, but does require +- HUGE_VAL return - * values on overflow. A 754 box *probably* maps HUGE_VAL to a - * double infinity, and we're cool if that's so, unless the input - * was an infinity and an infinity is the expected result. A C89 - * system sets errno to ERANGE, so we check for that too. We're - * out of luck if a C99 754 box doesn't map HUGE_VAL to +Inf, or - * if the returned result is a NaN, or if a C89 box returns HUGE_VAL - * in non-overflow cases. - * X is evaluated more than once. - * Some platforms have better way to spell this, so expect some #ifdef'ery. - * - * OpenBSD uses 'isinf()' because a compiler bug on that platform causes - * the longer macro version to be mis-compiled. This isn't optimal, and - * should be removed once a newer compiler is available on that platform. - * The system that had the failure was running OpenBSD 3.2 on Intel, with - * gcc 2.95.3. - * - * According to Tim's checkin, the FreeBSD systems use isinf() to work - * around a FPE bug on that platform. - */ -#if defined(__FreeBSD__) || defined(__OpenBSD__) -#define Py_OVERFLOWED(X) isinf(X) -#else -#define Py_OVERFLOWED(X) ((X) != 0.0 && (errno == ERANGE || \ - (X) == Py_HUGE_VAL || \ - (X) == -Py_HUGE_VAL)) -#endif - /* Py_SET_ERRNO_ON_MATH_ERROR(x) * If a libm function did not set errno, but it looks like the result * overflowed or not-a-number, set errno to ERANGE or EDOM. Set errno @@ -601,15 +484,6 @@ #endif /* 0 */ -/************************ - * WRAPPER FOR * - ************************/ - -#ifndef HAVE_HYPOT -extern double hypot(double, double); -#endif - - /* On 4.4BSD-descendants, ctype functions serves the whole range of * wchar_t character set rather than single byte code points only. * This characteristic can break some operations of string object Modified: python/trunk/Lib/test/test_cmath.py ============================================================================== --- python/trunk/Lib/test/test_cmath.py (original) +++ python/trunk/Lib/test/test_cmath.py Sat Apr 19 01:13:07 2008 @@ -1,6 +1,81 @@ from test.test_support import run_unittest +from test.test_math import parse_testfile, test_file import unittest +import os, sys import cmath, math +from cmath import phase, polar, rect, pi + +INF = float('inf') +NAN = float('nan') + +complex_zeros = [complex(x, y) for x in [0.0, -0.0] for y in [0.0, -0.0]] +complex_infinities = [complex(x, y) for x, y in [ + (INF, 0.0), # 1st quadrant + (INF, 2.3), + (INF, INF), + (2.3, INF), + (0.0, INF), + (-0.0, INF), # 2nd quadrant + (-2.3, INF), + (-INF, INF), + (-INF, 2.3), + (-INF, 0.0), + (-INF, -0.0), # 3rd quadrant + (-INF, -2.3), + (-INF, -INF), + (-2.3, -INF), + (-0.0, -INF), + (0.0, -INF), # 4th quadrant + (2.3, -INF), + (INF, -INF), + (INF, -2.3), + (INF, -0.0) + ]] +complex_nans = [complex(x, y) for x, y in [ + (NAN, -INF), + (NAN, -2.3), + (NAN, -0.0), + (NAN, 0.0), + (NAN, 2.3), + (NAN, INF), + (-INF, NAN), + (-2.3, NAN), + (-0.0, NAN), + (0.0, NAN), + (2.3, NAN), + (INF, NAN) + ]] + +def almostEqualF(a, b, rel_err=2e-15, abs_err = 5e-323): + """Determine whether floating-point values a and b are equal to within + a (small) rounding error. The default values for rel_err and + abs_err are chosen to be suitable for platforms where a float is + represented by an IEEE 754 double. They allow an error of between + 9 and 19 ulps.""" + + # special values testing + if math.isnan(a): + return math.isnan(b) + if math.isinf(a): + return a == b + + # if both a and b are zero, check whether they have the same sign + # (in theory there are examples where it would be legitimate for a + # and b to have opposite signs; in practice these hardly ever + # occur). + if not a and not b: + return math.copysign(1., a) == math.copysign(1., b) + + # if a-b overflows, or b is infinite, return False. Again, in + # theory there are examples where a is within a few ulps of the + # max representable float, and then b could legitimately be + # infinite. In practice these examples are rare. + try: + absolute_error = abs(b-a) + except OverflowError: + return False + else: + return absolute_error <= max(abs_err, rel_err * abs(a)) class CMathTests(unittest.TestCase): # list of all functions in cmath @@ -12,24 +87,52 @@ test_functions.append(lambda x : cmath.log(x, 1729. + 0j)) test_functions.append(lambda x : cmath.log(14.-27j, x)) - def cAssertAlmostEqual(self, a, b, rel_eps = 1e-10, abs_eps = 1e-100): - """Check that two complex numbers are almost equal.""" - # the two complex numbers are considered almost equal if - # either the relative error is <= rel_eps or the absolute error - # is tiny, <= abs_eps. - if a == b == 0: - return - absolute_error = abs(a-b) - relative_error = absolute_error/max(abs(a), abs(b)) - if relative_error > rel_eps and absolute_error > abs_eps: - self.fail("%s and %s are not almost equal" % (a, b)) + def setUp(self): + self.test_values = open(test_file) + + def tearDown(self): + self.test_values.close() + + def rAssertAlmostEqual(self, a, b, rel_err = 2e-15, abs_err = 5e-323): + """Check that two floating-point numbers are almost equal.""" + + # special values testing + if math.isnan(a): + if math.isnan(b): + return + self.fail("%s should be nan" % repr(b)) + + if math.isinf(a): + if a == b: + return + self.fail("finite result where infinity excpected: " + "expected %s, got %s" % (repr(a), repr(b))) + + if not a and not b: + if math.atan2(a, -1.) != math.atan2(b, -1.): + self.fail("zero has wrong sign: expected %s, got %s" % + (repr(a), repr(b))) + + # test passes if either the absolute error or the relative + # error is sufficiently small. The defaults amount to an + # error of between 9 ulps and 19 ulps on an IEEE-754 compliant + # machine. + + try: + absolute_error = abs(b-a) + except OverflowError: + pass + else: + if absolute_error <= max(abs_err, rel_err * abs(a)): + return + self.fail("%s and %s are not sufficiently close" % (repr(a), repr(b))) def test_constants(self): e_expected = 2.71828182845904523536 pi_expected = 3.14159265358979323846 - self.assertAlmostEqual(cmath.pi, pi_expected, 9, + self.rAssertAlmostEqual(cmath.pi, pi_expected, 9, "cmath.pi is %s; should be %s" % (cmath.pi, pi_expected)) - self.assertAlmostEqual(cmath.e, e_expected, 9, + self.rAssertAlmostEqual(cmath.e, e_expected, 9, "cmath.e is %s; should be %s" % (cmath.e, e_expected)) def test_user_object(self): @@ -109,13 +212,13 @@ for f in self.test_functions: # usual usage - self.cAssertAlmostEqual(f(MyComplex(cx_arg)), f(cx_arg)) - self.cAssertAlmostEqual(f(MyComplexOS(cx_arg)), f(cx_arg)) + self.assertEqual(f(MyComplex(cx_arg)), f(cx_arg)) + self.assertEqual(f(MyComplexOS(cx_arg)), f(cx_arg)) # other combinations of __float__ and __complex__ - self.cAssertAlmostEqual(f(FloatAndComplex()), f(cx_arg)) - self.cAssertAlmostEqual(f(FloatAndComplexOS()), f(cx_arg)) - self.cAssertAlmostEqual(f(JustFloat()), f(flt_arg)) - self.cAssertAlmostEqual(f(JustFloatOS()), f(flt_arg)) + self.assertEqual(f(FloatAndComplex()), f(cx_arg)) + self.assertEqual(f(FloatAndComplexOS()), f(cx_arg)) + self.assertEqual(f(JustFloat()), f(flt_arg)) + self.assertEqual(f(JustFloatOS()), f(flt_arg)) # TypeError should be raised for classes not providing # either __complex__ or __float__, even if they provide # __int__, __long__ or __index__. An old-style class @@ -138,7 +241,7 @@ # functions, by virtue of providing a __float__ method for f in self.test_functions: for arg in [2, 2L, 2.]: - self.cAssertAlmostEqual(f(arg), f(arg.__float__())) + self.assertEqual(f(arg), f(arg.__float__())) # but strings should give a TypeError for f in self.test_functions: @@ -182,12 +285,201 @@ float_fn = getattr(math, fn) complex_fn = getattr(cmath, fn) for v in values: - self.cAssertAlmostEqual(float_fn(v), complex_fn(v)) + z = complex_fn(v) + self.rAssertAlmostEqual(float_fn(v), z.real) + self.assertEqual(0., z.imag) # test two-argument version of log with various bases for base in [0.5, 2., 10.]: for v in positive: - self.cAssertAlmostEqual(cmath.log(v, base), math.log(v, base)) + z = cmath.log(v, base) + self.rAssertAlmostEqual(math.log(v, base), z.real) + self.assertEqual(0., z.imag) + + def test_specific_values(self): + if not float.__getformat__("double").startswith("IEEE"): + return + + def rect_complex(z): + """Wrapped version of rect that accepts a complex number instead of + two float arguments.""" + return cmath.rect(z.real, z.imag) + + def polar_complex(z): + """Wrapped version of polar that returns a complex number instead of + two floats.""" + return complex(*polar(z)) + + for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file): + arg = complex(ar, ai) + expected = complex(er, ei) + if fn == 'rect': + function = rect_complex + elif fn == 'polar': + function = polar_complex + else: + function = getattr(cmath, fn) + if 'divide-by-zero' in flags or 'invalid' in flags: + try: + actual = function(arg) + except ValueError: + continue + else: + test_str = "%s: %s(complex(%r, %r))" % (id, fn, ar, ai) + self.fail('ValueError not raised in test %s' % test_str) + + if 'overflow' in flags: + try: + actual = function(arg) + except OverflowError: + continue + else: + test_str = "%s: %s(complex(%r, %r))" % (id, fn, ar, ai) + self.fail('OverflowError not raised in test %s' % test_str) + + actual = function(arg) + + if 'ignore-real-sign' in flags: + actual = complex(abs(actual.real), actual.imag) + expected = complex(abs(expected.real), expected.imag) + if 'ignore-imag-sign' in flags: + actual = complex(actual.real, abs(actual.imag)) + expected = complex(expected.real, abs(expected.imag)) + + # for the real part of the log function, we allow an + # absolute error of up to 2e-15. + if fn in ('log', 'log10'): + real_abs_err = 2e-15 + else: + real_abs_err = 5e-323 + + if not (almostEqualF(expected.real, actual.real, + abs_err = real_abs_err) and + almostEqualF(expected.imag, actual.imag)): + error_message = ( + "%s: %s(complex(%r, %r))\n" % (id, fn, ar, ai) + + "Expected: complex(%r, %r)\n" % + (expected.real, expected.imag) + + "Received: complex(%r, %r)\n" % + (actual.real, actual.imag) + + "Received value insufficiently close to expected value.") + self.fail(error_message) + + def assertCISEqual(self, a, b): + eps = 1E-7 + if abs(a[0] - b[0]) > eps or abs(a[1] - b[1]) > eps: + self.fail((a ,b)) + + def test_polar(self): + self.assertCISEqual(polar(0), (0., 0.)) + self.assertCISEqual(polar(1.), (1., 0.)) + self.assertCISEqual(polar(-1.), (1., pi)) + self.assertCISEqual(polar(1j), (1., pi/2)) + self.assertCISEqual(polar(-1j), (1., -pi/2)) + + def test_phase(self): + self.assertAlmostEqual(phase(0), 0.) + self.assertAlmostEqual(phase(1.), 0.) + self.assertAlmostEqual(phase(-1.), pi) + self.assertAlmostEqual(phase(-1.+1E-300j), pi) + self.assertAlmostEqual(phase(-1.-1E-300j), -pi) + self.assertAlmostEqual(phase(1j), pi/2) + self.assertAlmostEqual(phase(-1j), -pi/2) + + # zeros + self.assertEqual(phase(complex(0.0, 0.0)), 0.0) + self.assertEqual(phase(complex(0.0, -0.0)), -0.0) + self.assertEqual(phase(complex(-0.0, 0.0)), pi) + self.assertEqual(phase(complex(-0.0, -0.0)), -pi) + + # infinities + self.assertAlmostEqual(phase(complex(-INF, -0.0)), -pi) + self.assertAlmostEqual(phase(complex(-INF, -2.3)), -pi) + self.assertAlmostEqual(phase(complex(-INF, -INF)), -0.75*pi) + self.assertAlmostEqual(phase(complex(-2.3, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(-0.0, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(0.0, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(2.3, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(INF, -INF)), -pi/4) + self.assertEqual(phase(complex(INF, -2.3)), -0.0) + self.assertEqual(phase(complex(INF, -0.0)), -0.0) + self.assertEqual(phase(complex(INF, 0.0)), 0.0) + self.assertEqual(phase(complex(INF, 2.3)), 0.0) + self.assertAlmostEqual(phase(complex(INF, INF)), pi/4) + self.assertAlmostEqual(phase(complex(2.3, INF)), pi/2) + self.assertAlmostEqual(phase(complex(0.0, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-0.0, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-2.3, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-INF, INF)), 0.75*pi) + self.assertAlmostEqual(phase(complex(-INF, 2.3)), pi) + self.assertAlmostEqual(phase(complex(-INF, 0.0)), pi) + + # real or imaginary part NaN + for z in complex_nans: + self.assert_(math.isnan(phase(z))) + + def test_abs(self): + # zeros + for z in complex_zeros: + self.assertEqual(abs(z), 0.0) + + # infinities + for z in complex_infinities: + self.assertEqual(abs(z), INF) + + # real or imaginary part NaN + self.assertEqual(abs(complex(NAN, -INF)), INF) + self.assert_(math.isnan(abs(complex(NAN, -2.3)))) + self.assert_(math.isnan(abs(complex(NAN, -0.0)))) + self.assert_(math.isnan(abs(complex(NAN, 0.0)))) + self.assert_(math.isnan(abs(complex(NAN, 2.3)))) + self.assertEqual(abs(complex(NAN, INF)), INF) + self.assertEqual(abs(complex(-INF, NAN)), INF) + self.assert_(math.isnan(abs(complex(-2.3, NAN)))) + self.assert_(math.isnan(abs(complex(-0.0, NAN)))) + self.assert_(math.isnan(abs(complex(0.0, NAN)))) + self.assert_(math.isnan(abs(complex(2.3, NAN)))) + self.assertEqual(abs(complex(INF, NAN)), INF) + self.assert_(math.isnan(abs(complex(NAN, NAN)))) + + # result overflows + if float.__getformat__("double").startswith("IEEE"): + self.assertRaises(OverflowError, abs, complex(1.4e308, 1.4e308)) + + def assertCEqual(self, a, b): + eps = 1E-7 + if abs(a.real - b[0]) > eps or abs(a.imag - b[1]) > eps: + self.fail((a ,b)) + + def test_rect(self): + self.assertCEqual(rect(0, 0), (0, 0)) + self.assertCEqual(rect(1, 0), (1., 0)) + self.assertCEqual(rect(1, -pi), (-1., 0)) + self.assertCEqual(rect(1, pi/2), (0, 1.)) + self.assertCEqual(rect(1, -pi/2), (0, -1.)) + + def test_isnan(self): + self.failIf(cmath.isnan(1)) + self.failIf(cmath.isnan(1j)) + self.failIf(cmath.isnan(INF)) + self.assert_(cmath.isnan(NAN)) + self.assert_(cmath.isnan(complex(NAN, 0))) + self.assert_(cmath.isnan(complex(0, NAN))) + self.assert_(cmath.isnan(complex(NAN, NAN))) + self.assert_(cmath.isnan(complex(NAN, INF))) + self.assert_(cmath.isnan(complex(INF, NAN))) + + def test_isinf(self): + self.failIf(cmath.isinf(1)) + self.failIf(cmath.isinf(1j)) + self.failIf(cmath.isinf(NAN)) + self.assert_(cmath.isinf(INF)) + self.assert_(cmath.isinf(complex(INF, 0))) + self.assert_(cmath.isinf(complex(0, INF))) + self.assert_(cmath.isinf(complex(INF, INF))) + self.assert_(cmath.isinf(complex(NAN, INF))) + self.assert_(cmath.isinf(complex(INF, NAN))) + def test_main(): run_unittest(CMathTests) Modified: python/trunk/Lib/test/test_float.py ============================================================================== --- python/trunk/Lib/test/test_float.py (original) +++ python/trunk/Lib/test/test_float.py Sat Apr 19 01:13:07 2008 @@ -2,12 +2,12 @@ import unittest, struct import os from test import test_support +import math +from math import isinf, isnan +import operator -def isinf(x): - return x * 0.5 == x - -def isnan(x): - return x != x +INF = float("inf") +NAN = float("nan") class FormatFunctionsTestCase(unittest.TestCase): @@ -206,6 +206,17 @@ self.assertEqual(str(1e300 * 1e300 * 0), "nan") self.assertEqual(str(-1e300 * 1e300 * 0), "nan") + def notest_float_nan(self): + self.assert_(NAN.is_nan()) + self.failIf(INF.is_nan()) + self.failIf((0.).is_nan()) + + def notest_float_inf(self): + self.assert_(INF.is_inf()) + self.failIf(NAN.is_inf()) + self.failIf((0.).is_inf()) + + def test_main(): test_support.run_unittest( FormatFunctionsTestCase, Modified: python/trunk/Lib/test/test_math.py ============================================================================== --- python/trunk/Lib/test/test_math.py (original) +++ python/trunk/Lib/test/test_math.py Sat Apr 19 01:13:07 2008 @@ -4,9 +4,45 @@ from test.test_support import run_unittest, verbose import unittest import math +import os +import sys -seps='1e-05' -eps = eval(seps) +eps = 1E-05 +NAN = float('nan') +INF = float('inf') +NINF = float('-inf') + +# locate file with test values +if __name__ == '__main__': + file = sys.argv[0] +else: + file = __file__ +test_dir = os.path.dirname(file) or os.curdir +test_file = os.path.join(test_dir, 'cmath_testcases.txt') + +def parse_testfile(fname): + """Parse a file with test values + + Empty lines or lines starting with -- are ignored + yields id, fn, arg_real, arg_imag, exp_real, exp_imag + """ + with open(fname) as fp: + for line in fp: + # skip comment lines and blank lines + if line.startswith('--') or not line.strip(): + continue + + lhs, rhs = line.split('->') + id, fn, arg_real, arg_imag = lhs.split() + rhs_pieces = rhs.split() + exp_real, exp_imag = rhs_pieces[0], rhs_pieces[1] + flags = rhs_pieces[2:] + + yield (id, fn, + float(arg_real), float(arg_imag), + float(exp_real), float(exp_imag), + flags + ) class MathTests(unittest.TestCase): @@ -28,18 +64,57 @@ self.ftest('acos(-1)', math.acos(-1), math.pi) self.ftest('acos(0)', math.acos(0), math.pi/2) self.ftest('acos(1)', math.acos(1), 0) + self.assertRaises(ValueError, math.acos, INF) + self.assertRaises(ValueError, math.acos, NINF) + self.assert_(math.isnan(math.acos(NAN))) + + def testAcosh(self): + self.assertRaises(TypeError, math.acosh) + self.ftest('acosh(1)', math.acosh(1), 0) + self.ftest('acosh(2)', math.acosh(2), 1.3169578969248168) + self.assertRaises(ValueError, math.acosh, 0) + self.assertRaises(ValueError, math.acosh, -1) + self.assertEquals(math.acosh(INF), INF) + self.assertRaises(ValueError, math.acosh, NINF) + self.assert_(math.isnan(math.acosh(NAN))) def testAsin(self): self.assertRaises(TypeError, math.asin) self.ftest('asin(-1)', math.asin(-1), -math.pi/2) self.ftest('asin(0)', math.asin(0), 0) self.ftest('asin(1)', math.asin(1), math.pi/2) + self.assertRaises(ValueError, math.asin, INF) + self.assertRaises(ValueError, math.asin, NINF) + self.assert_(math.isnan(math.asin(NAN))) + + def testAsinh(self): + self.assertRaises(TypeError, math.asinh) + self.ftest('asinh(0)', math.asinh(0), 0) + self.ftest('asinh(1)', math.asinh(1), 0.88137358701954305) + self.ftest('asinh(-1)', math.asinh(-1), -0.88137358701954305) + self.assertEquals(math.asinh(INF), INF) + self.assertEquals(math.asinh(NINF), NINF) + self.assert_(math.isnan(math.asinh(NAN))) def testAtan(self): self.assertRaises(TypeError, math.atan) self.ftest('atan(-1)', math.atan(-1), -math.pi/4) self.ftest('atan(0)', math.atan(0), 0) self.ftest('atan(1)', math.atan(1), math.pi/4) + self.ftest('atan(inf)', math.atan(INF), math.pi/2) + self.ftest('atan(-inf)', math.atan(-INF), -math.pi/2) + self.assert_(math.isnan(math.atan(NAN))) + + def testAtanh(self): + self.assertRaises(TypeError, math.atan) + self.ftest('atanh(0)', math.atanh(0), 0) + self.ftest('atanh(0.5)', math.atanh(0.5), 0.54930614433405489) + self.ftest('atanh(-0.5)', math.atanh(-0.5), -0.54930614433405489) + self.assertRaises(ValueError, math.atanh, 1) + self.assertRaises(ValueError, math.atanh, -1) + self.assertRaises(ValueError, math.atanh, INF) + self.assertRaises(ValueError, math.atanh, NINF) + self.assert_(math.isnan(math.atanh(NAN))) def testAtan2(self): self.assertRaises(TypeError, math.atan2) @@ -61,6 +136,9 @@ self.ftest('ceil(-0.5)', math.ceil(-0.5), 0) self.ftest('ceil(-1.0)', math.ceil(-1.0), -1) self.ftest('ceil(-1.5)', math.ceil(-1.5), -1) + self.assertEquals(math.ceil(INF), INF) + self.assertEquals(math.ceil(NINF), NINF) + self.assert_(math.isnan(math.ceil(NAN))) class TestCeil(object): def __float__(self): @@ -75,17 +153,55 @@ self.assertRaises(TypeError, math.ceil, t) self.assertRaises(TypeError, math.ceil, t, 0) + if float.__getformat__("double").startswith("IEEE"): + def testCopysign(self): + self.assertRaises(TypeError, math.copysign) + # copysign should let us distinguish signs of zeros + self.assertEquals(copysign(1., 0.), 1.) + self.assertEquals(copysign(1., -0.), -1.) + self.assertEquals(copysign(INF, 0.), INF) + self.assertEquals(copysign(INF, -0.), NINF) + self.assertEquals(copysign(NINF, 0.), INF) + self.assertEquals(copysign(NINF, -0.), NINF) + # and of infinities + self.assertEquals(copysign(1., INF), 1.) + self.assertEquals(copysign(1., NINF), -1.) + self.assertEquals(copysign(INF, INF), INF) + self.assertEquals(copysign(INF, NINF), NINF) + self.assertEquals(copysign(NINF, INF), INF) + self.assertEquals(copysign(NINF, NINF), NINF) + self.assert_(math.isnan(copysign(NAN, 1.))) + self.assert_(math.isnan(copysign(NAN, INF))) + self.assert_(math.isnan(copysign(NAN, NINF))) + self.assert_(math.isnan(copysign(NAN, NAN))) + # copysign(INF, NAN) may be INF or it may be NINF, since + # we don't know whether the sign bit of NAN is set on any + # given platform. + self.assert_(math.isinf(copysign(INF, NAN))) + # similarly, copysign(2., NAN) could be 2. or -2. + self.assertEquals(abs(copysign(2., NAN)), 2.) + def testCos(self): self.assertRaises(TypeError, math.cos) self.ftest('cos(-pi/2)', math.cos(-math.pi/2), 0) self.ftest('cos(0)', math.cos(0), 1) self.ftest('cos(pi/2)', math.cos(math.pi/2), 0) self.ftest('cos(pi)', math.cos(math.pi), -1) + try: + self.assert_(math.isnan(math.cos(INF))) + self.assert_(math.isnan(math.cos(NINF))) + except ValueError: + self.assertRaises(ValueError, math.cos, INF) + self.assertRaises(ValueError, math.cos, NINF) + self.assert_(math.isnan(math.cos(NAN))) def testCosh(self): self.assertRaises(TypeError, math.cosh) self.ftest('cosh(0)', math.cosh(0), 1) self.ftest('cosh(2)-2*cosh(1)**2', math.cosh(2)-2*math.cosh(1)**2, -1) # Thanks to Lambert + self.assertEquals(math.cosh(INF), INF) + self.assertEquals(math.cosh(NINF), INF) + self.assert_(math.isnan(math.cosh(NAN))) def testDegrees(self): self.assertRaises(TypeError, math.degrees) @@ -98,6 +214,9 @@ self.ftest('exp(-1)', math.exp(-1), 1/math.e) self.ftest('exp(0)', math.exp(0), 1) self.ftest('exp(1)', math.exp(1), math.e) + self.assertEquals(math.exp(INF), INF) + self.assertEquals(math.exp(NINF), 0.) + self.assert_(math.isnan(math.exp(NAN))) def testFabs(self): self.assertRaises(TypeError, math.fabs) @@ -121,6 +240,9 @@ # This fails on some platforms - so check it here self.ftest('floor(1.23e167)', math.floor(1.23e167), 1.23e167) self.ftest('floor(-1.23e167)', math.floor(-1.23e167), -1.23e167) + self.assertEquals(math.ceil(INF), INF) + self.assertEquals(math.ceil(NINF), NINF) + self.assert_(math.isnan(math.floor(NAN))) class TestFloor(object): def __float__(self): @@ -143,6 +265,19 @@ self.ftest('fmod(-10,1)', math.fmod(-10,1), 0) self.ftest('fmod(-10,0.5)', math.fmod(-10,0.5), 0) self.ftest('fmod(-10,1.5)', math.fmod(-10,1.5), -1) + self.assert_(math.isnan(math.fmod(NAN, 1.))) + self.assert_(math.isnan(math.fmod(1., NAN))) + self.assert_(math.isnan(math.fmod(NAN, NAN))) + self.assertRaises(ValueError, math.fmod, 1., 0.) + self.assertRaises(ValueError, math.fmod, INF, 1.) + self.assertRaises(ValueError, math.fmod, NINF, 1.) + self.assertRaises(ValueError, math.fmod, INF, 0.) + self.assertEquals(math.fmod(3.0, INF), 3.0) + self.assertEquals(math.fmod(-3.0, INF), -3.0) + self.assertEquals(math.fmod(3.0, NINF), 3.0) + self.assertEquals(math.fmod(-3.0, NINF), -3.0) + self.assertEquals(math.fmod(0.0, 3.0), 0.0) + self.assertEquals(math.fmod(0.0, NINF), 0.0) def testFrexp(self): self.assertRaises(TypeError, math.frexp) @@ -157,10 +292,20 @@ testfrexp('frexp(1)', math.frexp(1), (0.5, 1)) testfrexp('frexp(2)', math.frexp(2), (0.5, 2)) + self.assertEquals(math.frexp(INF)[0], INF) + self.assertEquals(math.frexp(NINF)[0], NINF) + self.assert_(math.isnan(math.frexp(NAN)[0])) + def testHypot(self): self.assertRaises(TypeError, math.hypot) self.ftest('hypot(0,0)', math.hypot(0,0), 0) self.ftest('hypot(3,4)', math.hypot(3,4), 5) + self.assertEqual(math.hypot(NAN, INF), INF) + self.assertEqual(math.hypot(INF, NAN), INF) + self.assertEqual(math.hypot(NAN, NINF), INF) + self.assertEqual(math.hypot(NINF, NAN), INF) + self.assert_(math.isnan(math.hypot(1.0, NAN))) + self.assert_(math.isnan(math.hypot(NAN, -2.0))) def testLdexp(self): self.assertRaises(TypeError, math.ldexp) @@ -168,6 +313,13 @@ self.ftest('ldexp(1,1)', math.ldexp(1,1), 2) self.ftest('ldexp(1,-1)', math.ldexp(1,-1), 0.5) self.ftest('ldexp(-1,1)', math.ldexp(-1,1), -2) + self.assertRaises(OverflowError, math.ldexp, 1., 1000000) + self.assertRaises(OverflowError, math.ldexp, -1., 1000000) + self.assertEquals(math.ldexp(1., -1000000), 0.) + self.assertEquals(math.ldexp(-1., -1000000), -0.) + self.assertEquals(math.ldexp(INF, 30), INF) + self.assertEquals(math.ldexp(NINF, -213), NINF) + self.assert_(math.isnan(math.ldexp(NAN, 0))) def testLog(self): self.assertRaises(TypeError, math.log) @@ -177,12 +329,31 @@ self.ftest('log(32,2)', math.log(32,2), 5) self.ftest('log(10**40, 10)', math.log(10**40, 10), 40) self.ftest('log(10**40, 10**20)', math.log(10**40, 10**20), 2) + self.assertEquals(math.log(INF), INF) + self.assertRaises(ValueError, math.log, NINF) + self.assert_(math.isnan(math.log(NAN))) + + def testLog1p(self): + self.assertRaises(TypeError, math.log1p) + self.ftest('log1p(1/e -1)', math.log1p(1/math.e-1), -1) + self.ftest('log1p(0)', math.log1p(0), 0) + self.ftest('log1p(e-1)', math.log1p(math.e-1), 1) + self.ftest('log1p(1)', math.log1p(1), math.log(2)) + self.assertEquals(math.log1p(INF), INF) + self.assertRaises(ValueError, math.log1p, NINF) + self.assert_(math.isnan(math.log1p(NAN))) + n= 2**90 + self.assertAlmostEquals(math.log1p(n), 62.383246250395075) + self.assertAlmostEquals(math.log1p(n), math.log1p(float(n))) def testLog10(self): self.assertRaises(TypeError, math.log10) self.ftest('log10(0.1)', math.log10(0.1), -1) self.ftest('log10(1)', math.log10(1), 0) self.ftest('log10(10)', math.log10(10), 1) + self.assertEquals(math.log(INF), INF) + self.assertRaises(ValueError, math.log10, NINF) + self.assert_(math.isnan(math.log10(NAN))) def testModf(self): self.assertRaises(TypeError, math.modf) @@ -195,12 +366,35 @@ testmodf('modf(1.5)', math.modf(1.5), (0.5, 1.0)) testmodf('modf(-1.5)', math.modf(-1.5), (-0.5, -1.0)) + self.assertEquals(math.modf(INF), (0.0, INF)) + self.assertEquals(math.modf(NINF), (-0.0, NINF)) + + modf_nan = math.modf(NAN) + self.assert_(math.isnan(modf_nan[0])) + self.assert_(math.isnan(modf_nan[1])) + def testPow(self): self.assertRaises(TypeError, math.pow) self.ftest('pow(0,1)', math.pow(0,1), 0) self.ftest('pow(1,0)', math.pow(1,0), 1) self.ftest('pow(2,1)', math.pow(2,1), 2) self.ftest('pow(2,-1)', math.pow(2,-1), 0.5) + self.assertEqual(math.pow(INF, 1), INF) + self.assertEqual(math.pow(NINF, 1), NINF) + self.assertEqual((math.pow(1, INF)), 1.) + self.assertEqual((math.pow(1, NINF)), 1.) + self.assert_(math.isnan(math.pow(NAN, 1))) + self.assert_(math.isnan(math.pow(2, NAN))) + self.assert_(math.isnan(math.pow(0, NAN))) + self.assertEqual(math.pow(1, NAN), 1) + self.assertEqual(1**NAN, 1) + self.assertEqual(1**INF, 1) + self.assertEqual(1**NINF, 1) + self.assertEqual(1**0, 1) + self.assertEqual(1.**NAN, 1) + self.assertEqual(1.**INF, 1) + self.assertEqual(1.**NINF, 1) + self.assertEqual(1.**0, 1) def testRadians(self): self.assertRaises(TypeError, math.radians) @@ -213,29 +407,52 @@ self.ftest('sin(0)', math.sin(0), 0) self.ftest('sin(pi/2)', math.sin(math.pi/2), 1) self.ftest('sin(-pi/2)', math.sin(-math.pi/2), -1) + try: + self.assert_(math.isnan(math.sin(INF))) + self.assert_(math.isnan(math.sin(NINF))) + except ValueError: + self.assertRaises(ValueError, math.sin, INF) + self.assertRaises(ValueError, math.sin, NINF) + self.assert_(math.isnan(math.sin(NAN))) def testSinh(self): self.assertRaises(TypeError, math.sinh) self.ftest('sinh(0)', math.sinh(0), 0) self.ftest('sinh(1)**2-cosh(1)**2', math.sinh(1)**2-math.cosh(1)**2, -1) self.ftest('sinh(1)+sinh(-1)', math.sinh(1)+math.sinh(-1), 0) + self.assertEquals(math.sinh(INF), INF) + self.assertEquals(math.sinh(-INF), -INF) + self.assert_(math.isnan(math.sinh(NAN))) def testSqrt(self): self.assertRaises(TypeError, math.sqrt) self.ftest('sqrt(0)', math.sqrt(0), 0) self.ftest('sqrt(1)', math.sqrt(1), 1) self.ftest('sqrt(4)', math.sqrt(4), 2) + self.assertEquals(math.sqrt(INF), INF) + self.assertRaises(ValueError, math.sqrt, NINF) + self.assert_(math.isnan(math.sqrt(NAN))) def testTan(self): self.assertRaises(TypeError, math.tan) self.ftest('tan(0)', math.tan(0), 0) self.ftest('tan(pi/4)', math.tan(math.pi/4), 1) self.ftest('tan(-pi/4)', math.tan(-math.pi/4), -1) + try: + self.assert_(math.isnan(math.tan(INF))) + self.assert_(math.isnan(math.tan(NINF))) + except: + self.assertRaises(ValueError, math.tan, INF) + self.assertRaises(ValueError, math.tan, NINF) + self.assert_(math.isnan(math.tan(NAN))) def testTanh(self): self.assertRaises(TypeError, math.tanh) self.ftest('tanh(0)', math.tanh(0), 0) self.ftest('tanh(1)+tanh(-1)', math.tanh(1)+math.tanh(-1), 0) + self.ftest('tanh(inf)', math.tanh(INF), 1) + self.ftest('tanh(-inf)', math.tanh(NINF), -1) + self.assert_(math.isnan(math.tanh(NAN))) def test_trunc(self): self.assertEqual(math.trunc(1), 1) @@ -329,9 +546,27 @@ else: self.fail("sqrt(-1) didn't raise ValueError") + def test_testfile(self): + if not float.__getformat__("double").startswith("IEEE"): + return + for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file): + # Skip if either the input or result is complex, or if + # flags is nonempty + if ai != 0. or ei != 0. or flags: + continue + if fn in ['rect', 'polar']: + # no real versions of rect, polar + continue + func = getattr(math, fn) + result = func(ar) + self.ftest("%s:%s(%r)" % (id, fn, ar), result, er) def test_main(): - run_unittest(MathTests) + from doctest import DocFileSuite + suite = unittest.TestSuite() + suite.addTest(unittest.makeSuite(MathTests)) + suite.addTest(DocFileSuite("ieee754.txt")) + run_unittest(suite) if __name__ == '__main__': test_main() Modified: python/trunk/Makefile.pre.in ============================================================================== --- python/trunk/Makefile.pre.in (original) +++ python/trunk/Makefile.pre.in Sat Apr 19 01:13:07 2008 @@ -277,6 +277,7 @@ Python/peephole.o \ Python/pyarena.o \ Python/pyfpe.o \ + Python/pymath.o \ Python/pystate.o \ Python/pythonrun.o \ Python/structmember.o \ @@ -627,6 +628,7 @@ Include/pydebug.h \ Include/pyerrors.h \ Include/pyfpe.h \ + Include/pymath.h \ Include/pygetopt.h \ Include/pymem.h \ Include/pyport.h \ Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Sat Apr 19 01:13:07 2008 @@ -18,6 +18,12 @@ Extensions Modules ------------------ +- Added phase(z) -> phi, polar(z) -> r, phi and rect(r, phi) -> z to the cmath + module. + +- Four new methods were added to the math and cmath modules: + acosh, asinh, atanh and log1p. + - zlib.decompressobj().flush(value) no longer crashes the interpreter when passed a value less than or equal to zero. @@ -108,6 +114,11 @@ C API ----- +- Added implementation of copysign, acosh, asinh, atanh and log1p + to the new files Include/pymath.h and Python/pymath.h for + platforms which provide the functions through their libm. The + files also contains several helpers and constants for math. + What's New in Python 2.6 alpha 2? ================================= Modified: python/trunk/Modules/cmathmodule.c ============================================================================== --- python/trunk/Modules/cmathmodule.c (original) +++ python/trunk/Modules/cmathmodule.c Sat Apr 19 01:13:07 2008 @@ -3,31 +3,172 @@ /* much code borrowed from mathmodule.c */ #include "Python.h" +/* we need DBL_MAX, DBL_MIN, DBL_EPSILON, DBL_MANT_DIG and FLT_RADIX from + float.h. We assume that FLT_RADIX is either 2 or 16. */ +#include -#ifndef M_PI -#define M_PI (3.141592653589793239) +#if (FLT_RADIX != 2 && FLT_RADIX != 16) +#error "Modules/cmathmodule.c expects FLT_RADIX to be 2 or 16" #endif -/* First, the C functions that do the real work */ +#ifndef M_LN2 +#define M_LN2 (0.6931471805599453094) /* natural log of 2 */ +#endif + +#ifndef M_LN10 +#define M_LN10 (2.302585092994045684) /* natural log of 10 */ +#endif -/* constants */ -static Py_complex c_one = {1., 0.}; -static Py_complex c_half = {0.5, 0.}; -static Py_complex c_i = {0., 1.}; -static Py_complex c_halfi = {0., 0.5}; +/* + CM_LARGE_DOUBLE is used to avoid spurious overflow in the sqrt, log, + inverse trig and inverse hyperbolic trig functions. Its log is used in the + evaluation of exp, cos, cosh, sin, sinh, tan, and tanh to avoid unecessary + overflow. + */ + +#define CM_LARGE_DOUBLE (DBL_MAX/4.) +#define CM_SQRT_LARGE_DOUBLE (sqrt(CM_LARGE_DOUBLE)) +#define CM_LOG_LARGE_DOUBLE (log(CM_LARGE_DOUBLE)) +#define CM_SQRT_DBL_MIN (sqrt(DBL_MIN)) + +/* + CM_SCALE_UP is an odd integer chosen such that multiplication by + 2**CM_SCALE_UP is sufficient to turn a subnormal into a normal. + CM_SCALE_DOWN is (-(CM_SCALE_UP+1)/2). These scalings are used to compute + square roots accurately when the real and imaginary parts of the argument + are subnormal. +*/ + +#if FLT_RADIX==2 +#define CM_SCALE_UP (2*(DBL_MANT_DIG/2) + 1) +#elif FLT_RADIX==16 +#define CM_SCALE_UP (4*DBL_MANT_DIG+1) +#endif +#define CM_SCALE_DOWN (-(CM_SCALE_UP+1)/2) /* forward declarations */ -static Py_complex c_log(Py_complex); -static Py_complex c_prodi(Py_complex); +static Py_complex c_asinh(Py_complex); +static Py_complex c_atanh(Py_complex); +static Py_complex c_cosh(Py_complex); +static Py_complex c_sinh(Py_complex); static Py_complex c_sqrt(Py_complex); +static Py_complex c_tanh(Py_complex); static PyObject * math_error(void); +/* Code to deal with special values (infinities, NaNs, etc.). */ + +/* special_type takes a double and returns an integer code indicating + the type of the double as follows: +*/ + +enum special_types { + ST_NINF, /* 0, negative infinity */ + ST_NEG, /* 1, negative finite number (nonzero) */ + ST_NZERO, /* 2, -0. */ + ST_PZERO, /* 3, +0. */ + ST_POS, /* 4, positive finite number (nonzero) */ + ST_PINF, /* 5, positive infinity */ + ST_NAN, /* 6, Not a Number */ +}; + +static enum special_types +special_type(double d) +{ + if (Py_IS_FINITE(d)) { + if (d != 0) { + if (copysign(1., d) == 1.) + return ST_POS; + else + return ST_NEG; + } + else { + if (copysign(1., d) == 1.) + return ST_PZERO; + else + return ST_NZERO; + } + } + if (Py_IS_NAN(d)) + return ST_NAN; + if (copysign(1., d) == 1.) + return ST_PINF; + else + return ST_NINF; +} + +#define SPECIAL_VALUE(z, table) \ + if (!Py_IS_FINITE((z).real) || !Py_IS_FINITE((z).imag)) { \ + errno = 0; \ + return table[special_type((z).real)] \ + [special_type((z).imag)]; \ + } + +#define P Py_MATH_PI +#define P14 0.25*Py_MATH_PI +#define P12 0.5*Py_MATH_PI +#define P34 0.75*Py_MATH_PI +#ifdef MS_WINDOWS +/* On Windows HUGE_VAL is an extern variable and not a constant. Since the + special value arrays need a constant we have to roll our own infinity + and nan. */ +# define INF (DBL_MAX*DBL_MAX) +# define N (INF*0.) +#else +# define INF Py_HUGE_VAL +# define N Py_NAN +#endif /* MS_WINDOWS */ +#define U -9.5426319407711027e33 /* unlikely value, used as placeholder */ + +/* First, the C functions that do the real work. Each of the c_* + functions computes and returns the C99 Annex G recommended result + and also sets errno as follows: errno = 0 if no floating-point + exception is associated with the result; errno = EDOM if C99 Annex + G recommends raising divide-by-zero or invalid for this result; and + errno = ERANGE where the overflow floating-point signal should be + raised. +*/ + +static Py_complex acos_special_values[7][7] = { + {{P34,INF},{P,INF}, {P,INF}, {P,-INF}, {P,-INF}, {P34,-INF},{N,INF}}, + {{P12,INF},{U,U}, {U,U}, {U,U}, {U,U}, {P12,-INF},{N,N}}, + {{P12,INF},{U,U}, {P12,0.},{P12,-0.},{U,U}, {P12,-INF},{P12,N}}, + {{P12,INF},{U,U}, {P12,0.},{P12,-0.},{U,U}, {P12,-INF},{P12,N}}, + {{P12,INF},{U,U}, {U,U}, {U,U}, {U,U}, {P12,-INF},{N,N}}, + {{P14,INF},{0.,INF},{0.,INF},{0.,-INF},{0.,-INF},{P14,-INF},{N,INF}}, + {{N,INF}, {N,N}, {N,N}, {N,N}, {N,N}, {N,-INF}, {N,N}} +}; static Py_complex -c_acos(Py_complex x) +c_acos(Py_complex z) { - return c_neg(c_prodi(c_log(c_sum(x,c_prod(c_i, - c_sqrt(c_diff(c_one,c_prod(x,x)))))))); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, acos_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + /* avoid unnecessary overflow for large arguments */ + r.real = atan2(fabs(z.imag), z.real); + /* split into cases to make sure that the branch cut has the + correct continuity on systems with unsigned zeros */ + if (z.real < 0.) { + r.imag = -copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., z.imag); + } else { + r.imag = copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., -z.imag); + } + } else { + s1.real = 1.-z.real; + s1.imag = -z.imag; + s1 = c_sqrt(s1); + s2.real = 1.+z.real; + s2.imag = z.imag; + s2 = c_sqrt(s2); + r.real = 2.*atan2(s1.real, s2.real); + r.imag = asinh(s2.real*s1.imag - s2.imag*s1.real); + } + errno = 0; + return r; } PyDoc_STRVAR(c_acos_doc, @@ -36,14 +177,39 @@ "Return the arc cosine of x."); +static Py_complex acosh_special_values[7][7] = { + {{INF,-P34},{INF,-P}, {INF,-P}, {INF,P}, {INF,P}, {INF,P34},{INF,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {0.,-P12},{0.,P12},{U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {0.,-P12},{0.,P12},{U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12},{N,N}}, + {{INF,-P14},{INF,-0.},{INF,-0.},{INF,0.},{INF,0.},{INF,P14},{INF,N}}, + {{INF,N}, {N,N}, {N,N}, {N,N}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_acosh(Py_complex x) +c_acosh(Py_complex z) { - Py_complex z; - z = c_sqrt(c_half); - z = c_log(c_prod(z, c_sum(c_sqrt(c_sum(x,c_one)), - c_sqrt(c_diff(x,c_one))))); - return c_sum(z, z); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, acosh_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + /* avoid unnecessary overflow for large arguments */ + r.real = log(hypot(z.real/2., z.imag/2.)) + M_LN2*2.; + r.imag = atan2(z.imag, z.real); + } else { + s1.real = z.real - 1.; + s1.imag = z.imag; + s1 = c_sqrt(s1); + s2.real = z.real + 1.; + s2.imag = z.imag; + s2 = c_sqrt(s2); + r.real = asinh(s1.real*s2.real + s1.imag*s2.imag); + r.imag = 2.*atan2(s1.imag, s2.real); + } + errno = 0; + return r; } PyDoc_STRVAR(c_acosh_doc, @@ -53,14 +219,16 @@ static Py_complex -c_asin(Py_complex x) +c_asin(Py_complex z) { - /* -i * log[(sqrt(1-x**2) + i*x] */ - const Py_complex squared = c_prod(x, x); - const Py_complex sqrt_1_minus_x_sq = c_sqrt(c_diff(c_one, squared)); - return c_neg(c_prodi(c_log( - c_sum(sqrt_1_minus_x_sq, c_prodi(x)) - ) ) ); + /* asin(z) = -i asinh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_asinh(s); + r.real = s.imag; + r.imag = -s.real; + return r; } PyDoc_STRVAR(c_asin_doc, @@ -69,14 +237,44 @@ "Return the arc sine of x."); +static Py_complex asinh_special_values[7][7] = { + {{-INF,-P14},{-INF,-0.},{-INF,-0.},{-INF,0.},{-INF,0.},{-INF,P14},{-INF,N}}, + {{-INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {-INF,P12},{N,N}}, + {{-INF,-P12},{U,U}, {-0.,-0.}, {-0.,0.}, {U,U}, {-INF,P12},{N,N}}, + {{INF,-P12}, {U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12}, {U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P14}, {INF,-0.}, {INF,-0.}, {INF,0.}, {INF,0.}, {INF,P14}, {INF,N}}, + {{INF,N}, {N,N}, {N,-0.}, {N,0.}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_asinh(Py_complex x) +c_asinh(Py_complex z) { - Py_complex z; - z = c_sqrt(c_half); - z = c_log(c_prod(z, c_sum(c_sqrt(c_sum(x, c_i)), - c_sqrt(c_diff(x, c_i))))); - return c_sum(z, z); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, asinh_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + if (z.imag >= 0.) { + r.real = copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., z.real); + } else { + r.real = -copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., -z.real); + } + r.imag = atan2(z.imag, fabs(z.real)); + } else { + s1.real = 1.+z.imag; + s1.imag = -z.real; + s1 = c_sqrt(s1); + s2.real = 1.-z.imag; + s2.imag = z.real; + s2 = c_sqrt(s2); + r.real = asinh(s1.real*s2.imag-s2.real*s1.imag); + r.imag = atan2(z.imag, s1.real*s2.real-s1.imag*s2.imag); + } + errno = 0; + return r; } PyDoc_STRVAR(c_asinh_doc, @@ -86,9 +284,37 @@ static Py_complex -c_atan(Py_complex x) +c_atan(Py_complex z) { - return c_prod(c_halfi,c_log(c_quot(c_sum(c_i,x),c_diff(c_i,x)))); + /* atan(z) = -i atanh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_atanh(s); + r.real = s.imag; + r.imag = -s.real; + return r; +} + +/* Windows screws up atan2 for inf and nan */ +static double +c_atan2(Py_complex z) +{ + if (Py_IS_NAN(z.real) || Py_IS_NAN(z.imag)) + return Py_NAN; + if (Py_IS_INFINITY(z.imag)) { + if (Py_IS_INFINITY(z.real)) { + if (copysign(1., z.real) == 1.) + /* atan2(+-inf, +inf) == +-pi/4 */ + return copysign(0.25*Py_MATH_PI, z.imag); + else + /* atan2(+-inf, -inf) == +-pi*3/4 */ + return copysign(0.75*Py_MATH_PI, z.imag); + } + /* atan2(+-inf, x) == +-pi/2 for finite x */ + return copysign(0.5*Py_MATH_PI, z.imag); + } + return atan2(z.imag, z.real); } PyDoc_STRVAR(c_atan_doc, @@ -97,10 +323,61 @@ "Return the arc tangent of x."); +static Py_complex atanh_special_values[7][7] = { + {{-0.,-P12},{-0.,-P12},{-0.,-P12},{-0.,P12},{-0.,P12},{-0.,P12},{-0.,N}}, + {{-0.,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {-0.,P12},{N,N}}, + {{-0.,-P12},{U,U}, {-0.,-0.}, {-0.,0.}, {U,U}, {-0.,P12},{-0.,N}}, + {{0.,-P12}, {U,U}, {0.,-0.}, {0.,0.}, {U,U}, {0.,P12}, {0.,N}}, + {{0.,-P12}, {U,U}, {U,U}, {U,U}, {U,U}, {0.,P12}, {N,N}}, + {{0.,-P12}, {0.,-P12}, {0.,-P12}, {0.,P12}, {0.,P12}, {0.,P12}, {0.,N}}, + {{0.,-P12}, {N,N}, {N,N}, {N,N}, {N,N}, {0.,P12}, {N,N}} +}; + static Py_complex -c_atanh(Py_complex x) +c_atanh(Py_complex z) { - return c_prod(c_half,c_log(c_quot(c_sum(c_one,x),c_diff(c_one,x)))); + Py_complex r; + double ay, h; + + SPECIAL_VALUE(z, atanh_special_values); + + /* Reduce to case where z.real >= 0., using atanh(z) = -atanh(-z). */ + if (z.real < 0.) { + return c_neg(c_atanh(c_neg(z))); + } + + ay = fabs(z.imag); + if (z.real > CM_SQRT_LARGE_DOUBLE || ay > CM_SQRT_LARGE_DOUBLE) { + /* + if abs(z) is large then we use the approximation + atanh(z) ~ 1/z +/- i*pi/2 (+/- depending on the sign + of z.imag) + */ + h = hypot(z.real/2., z.imag/2.); /* safe from overflow */ + r.real = z.real/4./h/h; + /* the two negations in the next line cancel each other out + except when working with unsigned zeros: they're there to + ensure that the branch cut has the correct continuity on + systems that don't support signed zeros */ + r.imag = -copysign(Py_MATH_PI/2., -z.imag); + errno = 0; + } else if (z.real == 1. && ay < CM_SQRT_DBL_MIN) { + /* C99 standard says: atanh(1+/-0.) should be inf +/- 0i */ + if (ay == 0.) { + r.real = INF; + r.imag = z.imag; + errno = EDOM; + } else { + r.real = -log(sqrt(ay)/sqrt(hypot(ay, 2.))); + r.imag = copysign(atan2(2., -ay)/2, z.imag); + errno = 0; + } + } else { + r.real = log1p(4.*z.real/((1-z.real)*(1-z.real) + ay*ay))/4.; + r.imag = -atan2(-2.*z.imag, (1-z.real)*(1+z.real) - ay*ay)/2.; + errno = 0; + } + return r; } PyDoc_STRVAR(c_atanh_doc, @@ -110,11 +387,13 @@ static Py_complex -c_cos(Py_complex x) +c_cos(Py_complex z) { + /* cos(z) = cosh(iz) */ Py_complex r; - r.real = cos(x.real)*cosh(x.imag); - r.imag = -sin(x.real)*sinh(x.imag); + r.real = -z.imag; + r.imag = z.real; + r = c_cosh(r); return r; } @@ -124,12 +403,64 @@ "Return the cosine of x."); +/* cosh(infinity + i*y) needs to be dealt with specially */ +static Py_complex cosh_special_values[7][7] = { + {{INF,N},{U,U},{INF,0.}, {INF,-0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,0.}, {U,U},{1.,0.}, {1.,-0.}, {U,U},{N,0.}, {N,0.}}, + {{N,0.}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,0.}, {N,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_cosh(Py_complex x) +c_cosh(Py_complex z) { Py_complex r; - r.real = cos(x.imag)*cosh(x.real); - r.imag = sin(x.imag)*sinh(x.real); + double x_minus_one; + + /* special treatment for cosh(+/-inf + iy) if y is not a NaN */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) && + (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = copysign(INF, cos(z.imag)); + r.imag = -copysign(INF, sin(z.imag)); + } + } + else { + r = cosh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN */ + if (Py_IS_INFINITY(z.imag) && !Py_IS_NAN(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + /* deal correctly with cases where cosh(z.real) overflows but + cosh(z) does not. */ + x_minus_one = z.real - copysign(1., z.real); + r.real = cos(z.imag) * cosh(x_minus_one) * Py_MATH_E; + r.imag = sin(z.imag) * sinh(x_minus_one) * Py_MATH_E; + } else { + r.real = cos(z.imag) * cosh(z.real); + r.imag = sin(z.imag) * sinh(z.real); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -139,13 +470,65 @@ "Return the hyperbolic cosine of x."); +/* exp(infinity + i*y) and exp(-infinity + i*y) need special treatment for + finite y */ +static Py_complex exp_special_values[7][7] = { + {{0.,0.},{U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,0.},{0.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_exp(Py_complex x) +c_exp(Py_complex z) { Py_complex r; - double l = exp(x.real); - r.real = l*cos(x.imag); - r.imag = l*sin(x.imag); + double l; + + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = copysign(0., cos(z.imag)); + r.imag = copysign(0., sin(z.imag)); + } + } + else { + r = exp_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN and not -infinity */ + if (Py_IS_INFINITY(z.imag) && + (Py_IS_FINITE(z.real) || + (Py_IS_INFINITY(z.real) && z.real > 0))) + errno = EDOM; + else + errno = 0; + return r; + } + + if (z.real > CM_LOG_LARGE_DOUBLE) { + l = exp(z.real-1.); + r.real = l*cos(z.imag)*Py_MATH_E; + r.imag = l*sin(z.imag)*Py_MATH_E; + } else { + l = exp(z.real); + r.real = l*cos(z.imag); + r.imag = l*sin(z.imag); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -155,24 +538,97 @@ "Return the exponential value e**x."); +static Py_complex log_special_values[7][7] = { + {{INF,-P34},{INF,-P}, {INF,-P}, {INF,P}, {INF,P}, {INF,P34}, {INF,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {-INF,-P}, {-INF,P}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {-INF,-0.},{-INF,0.},{U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P14},{INF,-0.},{INF,-0.}, {INF,0.}, {INF,0.},{INF,P14}, {INF,N}}, + {{INF,N}, {N,N}, {N,N}, {N,N}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_log(Py_complex x) +c_log(Py_complex z) { + /* + The usual formula for the real part is log(hypot(z.real, z.imag)). + There are four situations where this formula is potentially + problematic: + + (1) the absolute value of z is subnormal. Then hypot is subnormal, + so has fewer than the usual number of bits of accuracy, hence may + have large relative error. This then gives a large absolute error + in the log. This can be solved by rescaling z by a suitable power + of 2. + + (2) the absolute value of z is greater than DBL_MAX (e.g. when both + z.real and z.imag are within a factor of 1/sqrt(2) of DBL_MAX) + Again, rescaling solves this. + + (3) the absolute value of z is close to 1. In this case it's + difficult to achieve good accuracy, at least in part because a + change of 1ulp in the real or imaginary part of z can result in a + change of billions of ulps in the correctly rounded answer. + + (4) z = 0. The simplest thing to do here is to call the + floating-point log with an argument of 0, and let its behaviour + (returning -infinity, signaling a floating-point exception, setting + errno, or whatever) determine that of c_log. So the usual formula + is fine here. + + */ + Py_complex r; - double l = hypot(x.real,x.imag); - r.imag = atan2(x.imag, x.real); - r.real = log(l); + double ax, ay, am, an, h; + + SPECIAL_VALUE(z, log_special_values); + + ax = fabs(z.real); + ay = fabs(z.imag); + + if (ax > CM_LARGE_DOUBLE || ay > CM_LARGE_DOUBLE) { + r.real = log(hypot(ax/2., ay/2.)) + M_LN2; + } else if (ax < DBL_MIN && ay < DBL_MIN) { + if (ax > 0. || ay > 0.) { + /* catch cases where hypot(ax, ay) is subnormal */ + r.real = log(hypot(ldexp(ax, DBL_MANT_DIG), + ldexp(ay, DBL_MANT_DIG))) - DBL_MANT_DIG*M_LN2; + } + else { + /* log(+/-0. +/- 0i) */ + r.real = -INF; + r.imag = atan2(z.imag, z.real); + errno = EDOM; + return r; + } + } else { + h = hypot(ax, ay); + if (0.71 <= h && h <= 1.73) { + am = ax > ay ? ax : ay; /* max(ax, ay) */ + an = ax > ay ? ay : ax; /* min(ax, ay) */ + r.real = log1p((am-1)*(am+1)+an*an)/2.; + } else { + r.real = log(h); + } + } + r.imag = atan2(z.imag, z.real); + errno = 0; return r; } static Py_complex -c_log10(Py_complex x) +c_log10(Py_complex z) { Py_complex r; - double l = hypot(x.real,x.imag); - r.imag = atan2(x.imag, x.real)/log(10.); - r.real = log10(l); + int errno_save; + + r = c_log(z); + errno_save = errno; /* just in case the divisions affect errno */ + r.real = r.real / M_LN10; + r.imag = r.imag / M_LN10; + errno = errno_save; return r; } @@ -182,23 +638,16 @@ "Return the base-10 logarithm of x."); -/* internal function not available from Python */ static Py_complex -c_prodi(Py_complex x) +c_sin(Py_complex z) { - Py_complex r; - r.real = -x.imag; - r.imag = x.real; - return r; -} - - -static Py_complex -c_sin(Py_complex x) -{ - Py_complex r; - r.real = sin(x.real) * cosh(x.imag); - r.imag = cos(x.real) * sinh(x.imag); + /* sin(z) = -i sin(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_sinh(s); + r.real = s.imag; + r.imag = -s.real; return r; } @@ -208,12 +657,63 @@ "Return the sine of x."); +/* sinh(infinity + i*y) needs to be dealt with specially */ +static Py_complex sinh_special_values[7][7] = { + {{INF,N},{U,U},{-INF,-0.},{-INF,0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{0.,N}, {U,U},{-0.,-0.}, {-0.,0.}, {U,U},{0.,N}, {0.,N}}, + {{0.,N}, {U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,N}, {0.,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.}, {INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_sinh(Py_complex x) +c_sinh(Py_complex z) { Py_complex r; - r.real = cos(x.imag) * sinh(x.real); - r.imag = sin(x.imag) * cosh(x.real); + double x_minus_one; + + /* special treatment for sinh(+/-inf + iy) if y is finite and + nonzero */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = -copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + } + else { + r = sinh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN */ + if (Py_IS_INFINITY(z.imag) && !Py_IS_NAN(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + x_minus_one = z.real - copysign(1., z.real); + r.real = cos(z.imag) * sinh(x_minus_one) * Py_MATH_E; + r.imag = sin(z.imag) * cosh(x_minus_one) * Py_MATH_E; + } else { + r.real = cos(z.imag) * sinh(z.real); + r.imag = sin(z.imag) * cosh(z.real); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -223,29 +723,80 @@ "Return the hyperbolic sine of x."); +static Py_complex sqrt_special_values[7][7] = { + {{INF,-INF},{0.,-INF},{0.,-INF},{0.,INF},{0.,INF},{INF,INF},{N,INF}}, + {{INF,-INF},{U,U}, {U,U}, {U,U}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {U,U}, {U,U}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{INF,-0.},{INF,-0.},{INF,0.},{INF,0.},{INF,INF},{INF,N}}, + {{INF,-INF},{N,N}, {N,N}, {N,N}, {N,N}, {INF,INF},{N,N}} +}; + static Py_complex -c_sqrt(Py_complex x) +c_sqrt(Py_complex z) { + /* + Method: use symmetries to reduce to the case when x = z.real and y + = z.imag are nonnegative. Then the real part of the result is + given by + + s = sqrt((x + hypot(x, y))/2) + + and the imaginary part is + + d = (y/2)/s + + If either x or y is very large then there's a risk of overflow in + computation of the expression x + hypot(x, y). We can avoid this + by rewriting the formula for s as: + + s = 2*sqrt(x/8 + hypot(x/8, y/8)) + + This costs us two extra multiplications/divisions, but avoids the + overhead of checking for x and y large. + + If both x and y are subnormal then hypot(x, y) may also be + subnormal, so will lack full precision. We solve this by rescaling + x and y by a sufficiently large power of 2 to ensure that x and y + are normal. + */ + + Py_complex r; double s,d; - if (x.real == 0. && x.imag == 0.) - r = x; - else { - s = sqrt(0.5*(fabs(x.real) + hypot(x.real,x.imag))); - d = 0.5*x.imag/s; - if (x.real > 0.) { - r.real = s; - r.imag = d; - } - else if (x.imag >= 0.) { - r.real = d; - r.imag = s; - } - else { - r.real = -d; - r.imag = -s; - } + double ax, ay; + + SPECIAL_VALUE(z, sqrt_special_values); + + if (z.real == 0. && z.imag == 0.) { + r.real = 0.; + r.imag = z.imag; + return r; } + + ax = fabs(z.real); + ay = fabs(z.imag); + + if (ax < DBL_MIN && ay < DBL_MIN && (ax > 0. || ay > 0.)) { + /* here we catch cases where hypot(ax, ay) is subnormal */ + ax = ldexp(ax, CM_SCALE_UP); + s = ldexp(sqrt(ax + hypot(ax, ldexp(ay, CM_SCALE_UP))), + CM_SCALE_DOWN); + } else { + ax /= 8.; + s = 2.*sqrt(ax + hypot(ax, ay/8.)); + } + d = ay/(2.*s); + + if (z.real >= 0.) { + r.real = s; + r.imag = copysign(d, z.imag); + } else { + r.real = d; + r.imag = copysign(s, z.imag); + } + errno = 0; return r; } @@ -256,23 +807,15 @@ static Py_complex -c_tan(Py_complex x) +c_tan(Py_complex z) { - Py_complex r; - double sr,cr,shi,chi; - double rs,is,rc,ic; - double d; - sr = sin(x.real); - cr = cos(x.real); - shi = sinh(x.imag); - chi = cosh(x.imag); - rs = sr * chi; - is = cr * shi; - rc = cr * chi; - ic = -sr * shi; - d = rc*rc + ic * ic; - r.real = (rs*rc + is*ic) / d; - r.imag = (is*rc - rs*ic) / d; + /* tan(z) = -i tanh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_tanh(s); + r.real = s.imag; + r.imag = -s.real; return r; } @@ -282,24 +825,78 @@ "Return the tangent of x."); +/* tanh(infinity + i*y) needs to be dealt with specially */ +static Py_complex tanh_special_values[7][7] = { + {{-1.,0.},{U,U},{-1.,-0.},{-1.,0.},{U,U},{-1.,0.},{-1.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{-0.,-0.},{-0.,0.},{U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{0.,-0.}, {0.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{1.,0.}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{1.,0.}, {1.,0.}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_tanh(Py_complex x) +c_tanh(Py_complex z) { + /* Formula: + + tanh(x+iy) = (tanh(x)(1+tan(y)^2) + i tan(y)(1-tanh(x))^2) / + (1+tan(y)^2 tanh(x)^2) + + To avoid excessive roundoff error, 1-tanh(x)^2 is better computed + as 1/cosh(x)^2. When abs(x) is large, we approximate 1-tanh(x)^2 + by 4 exp(-2*x) instead, to avoid possible overflow in the + computation of cosh(x). + + */ + Py_complex r; - double si,ci,shr,chr; - double rs,is,rc,ic; - double d; - si = sin(x.imag); - ci = cos(x.imag); - shr = sinh(x.real); - chr = cosh(x.real); - rs = ci * shr; - is = si * chr; - rc = ci * chr; - ic = si * shr; - d = rc*rc + ic*ic; - r.real = (rs*rc + is*ic) / d; - r.imag = (is*rc - rs*ic) / d; + double tx, ty, cx, txty, denom; + + /* special treatment for tanh(+/-inf + iy) if y is finite and + nonzero */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = 1.0; + r.imag = copysign(0., + 2.*sin(z.imag)*cos(z.imag)); + } + else { + r.real = -1.0; + r.imag = copysign(0., + 2.*sin(z.imag)*cos(z.imag)); + } + } + else { + r = tanh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if z.imag is +/-infinity and + z.real is finite */ + if (Py_IS_INFINITY(z.imag) && Py_IS_FINITE(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + /* danger of overflow in 2.*z.imag !*/ + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + r.real = copysign(1., z.real); + r.imag = 4.*sin(z.imag)*cos(z.imag)*exp(-2.*fabs(z.real)); + } else { + tx = tanh(z.real); + ty = tan(z.imag); + cx = 1./cosh(z.real); + txty = tx*ty; + denom = 1. + txty*txty; + r.real = tx*(1.+ty*ty)/denom; + r.imag = ((ty/denom)*cx)*cx; + } + errno = 0; return r; } @@ -308,6 +905,7 @@ "\n" "Return the hyperbolic tangent of x."); + static PyObject * cmath_log(PyObject *self, PyObject *args) { @@ -325,7 +923,6 @@ PyFPE_END_PROTECT(x) if (errno != 0) return math_error(); - Py_ADJUST_ERANGE2(x.real, x.imag); return PyComplex_FromCComplex(x); } @@ -351,18 +948,24 @@ static PyObject * math_1(PyObject *args, Py_complex (*func)(Py_complex)) { - Py_complex x; + Py_complex x,r ; if (!PyArg_ParseTuple(args, "D", &x)) return NULL; errno = 0; - PyFPE_START_PROTECT("complex function", return 0) - x = (*func)(x); - PyFPE_END_PROTECT(x) - Py_ADJUST_ERANGE2(x.real, x.imag); - if (errno != 0) - return math_error(); - else - return PyComplex_FromCComplex(x); + PyFPE_START_PROTECT("complex function", return 0); + r = (*func)(x); + PyFPE_END_PROTECT(r); + if (errno == EDOM) { + PyErr_SetString(PyExc_ValueError, "math domain error"); + return NULL; + } + else if (errno == ERANGE) { + PyErr_SetString(PyExc_OverflowError, "math range error"); + return NULL; + } + else { + return PyComplex_FromCComplex(r); + } } #define FUNC1(stubname, func) \ @@ -386,6 +989,151 @@ FUNC1(cmath_tan, c_tan) FUNC1(cmath_tanh, c_tanh) +static PyObject * +cmath_phase(PyObject *self, PyObject *args) +{ + Py_complex z; + double phi; + if (!PyArg_ParseTuple(args, "D:phase", &z)) + return NULL; + errno = 0; + PyFPE_START_PROTECT("arg function", return 0) + phi = c_atan2(z); + PyFPE_END_PROTECT(r) + if (errno != 0) + return math_error(); + else + return PyFloat_FromDouble(phi); +} + +PyDoc_STRVAR(cmath_phase_doc, +"phase(z) -> float\n\n\ +Return argument, also known as the phase angle, of a complex."); + +static PyObject * +cmath_polar(PyObject *self, PyObject *args) +{ + Py_complex z; + double r, phi; + if (!PyArg_ParseTuple(args, "D:polar", &z)) + return NULL; + PyFPE_START_PROTECT("polar function", return 0) + phi = c_atan2(z); /* should not cause any exception */ + r = c_abs(z); /* sets errno to ERANGE on overflow; otherwise 0 */ + PyFPE_END_PROTECT(r) + if (errno != 0) + return math_error(); + else + return Py_BuildValue("dd", r, phi); +} + +PyDoc_STRVAR(cmath_polar_doc, +"polar(z) -> r: float, phi: float\n\n\ +Convert a complex from rectangular coordinates to polar coordinates. r is\n\ +the distance from 0 and phi the phase angle."); + +/* + rect() isn't covered by the C99 standard, but it's not too hard to + figure out 'spirit of C99' rules for special value handing: + + rect(x, t) should behave like exp(log(x) + it) for positive-signed x + rect(x, t) should behave like -exp(log(-x) + it) for negative-signed x + rect(nan, t) should behave like exp(nan + it), except that rect(nan, 0) + gives nan +- i0 with the sign of the imaginary part unspecified. + +*/ + +static Py_complex rect_special_values[7][7] = { + {{INF,N},{U,U},{-INF,0.},{-INF,-0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{0.,0.},{U,U},{-0.,0.}, {-0.,-0.}, {U,U},{0.,0.},{0.,0.}}, + {{0.,0.},{U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,0.},{0.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + +static PyObject * +cmath_rect(PyObject *self, PyObject *args) +{ + Py_complex z; + double r, phi; + if (!PyArg_ParseTuple(args, "dd:rect", &r, &phi)) + return NULL; + errno = 0; + PyFPE_START_PROTECT("rect function", return 0) + + /* deal with special values */ + if (!Py_IS_FINITE(r) || !Py_IS_FINITE(phi)) { + /* if r is +/-infinity and phi is finite but nonzero then + result is (+-INF +-INF i), but we need to compute cos(phi) + and sin(phi) to figure out the signs. */ + if (Py_IS_INFINITY(r) && (Py_IS_FINITE(phi) + && (phi != 0.))) { + if (r > 0) { + z.real = copysign(INF, cos(phi)); + z.imag = copysign(INF, sin(phi)); + } + else { + z.real = -copysign(INF, cos(phi)); + z.imag = -copysign(INF, sin(phi)); + } + } + else { + z = rect_special_values[special_type(r)] + [special_type(phi)]; + } + /* need to set errno = EDOM if r is a nonzero number and phi + is infinite */ + if (r != 0. && !Py_IS_NAN(r) && Py_IS_INFINITY(phi)) + errno = EDOM; + else + errno = 0; + } + else { + z.real = r * cos(phi); + z.imag = r * sin(phi); + errno = 0; + } + + PyFPE_END_PROTECT(z) + if (errno != 0) + return math_error(); + else + return PyComplex_FromCComplex(z); +} + +PyDoc_STRVAR(cmath_rect_doc, +"rect(r, phi) -> z: complex\n\n\ +Convert from polar coordinates to rectangular coordinates."); + +static PyObject * +cmath_isnan(PyObject *self, PyObject *args) +{ + Py_complex z; + if (!PyArg_ParseTuple(args, "D:isnan", &z)) + return NULL; + return PyBool_FromLong(Py_IS_NAN(z.real) || Py_IS_NAN(z.imag)); +} + +PyDoc_STRVAR(cmath_isnan_doc, +"isnan(z) -> bool\n\ +Checks if the real or imaginary part of z not a number (NaN)"); + +static PyObject * +cmath_isinf(PyObject *self, PyObject *args) +{ + Py_complex z; + if (!PyArg_ParseTuple(args, "D:isnan", &z)) + return NULL; + return PyBool_FromLong(Py_IS_INFINITY(z.real) || + Py_IS_INFINITY(z.imag)); +} + +PyDoc_STRVAR(cmath_isinf_doc, +"isinf(z) -> bool\n\ +Checks if the real or imaginary part of z is infinite."); + PyDoc_STRVAR(module_doc, "This module is always available. It provides access to mathematical\n" @@ -401,8 +1149,13 @@ {"cos", cmath_cos, METH_VARARGS, c_cos_doc}, {"cosh", cmath_cosh, METH_VARARGS, c_cosh_doc}, {"exp", cmath_exp, METH_VARARGS, c_exp_doc}, + {"isinf", cmath_isinf, METH_VARARGS, cmath_isinf_doc}, + {"isnan", cmath_isnan, METH_VARARGS, cmath_isnan_doc}, {"log", cmath_log, METH_VARARGS, cmath_log_doc}, {"log10", cmath_log10, METH_VARARGS, c_log10_doc}, + {"phase", cmath_phase, METH_VARARGS, cmath_phase_doc}, + {"polar", cmath_polar, METH_VARARGS, cmath_polar_doc}, + {"rect", cmath_rect, METH_VARARGS, cmath_rect_doc}, {"sin", cmath_sin, METH_VARARGS, c_sin_doc}, {"sinh", cmath_sinh, METH_VARARGS, c_sinh_doc}, {"sqrt", cmath_sqrt, METH_VARARGS, c_sqrt_doc}, @@ -421,6 +1174,6 @@ return; PyModule_AddObject(m, "pi", - PyFloat_FromDouble(atan(1.0) * 4.0)); - PyModule_AddObject(m, "e", PyFloat_FromDouble(exp(1.0))); + PyFloat_FromDouble(Py_MATH_PI)); + PyModule_AddObject(m, "e", PyFloat_FromDouble(Py_MATH_E)); } Modified: python/trunk/Modules/mathmodule.c ============================================================================== --- python/trunk/Modules/mathmodule.c (original) +++ python/trunk/Modules/mathmodule.c Sat Apr 19 01:13:07 2008 @@ -1,17 +1,60 @@ /* Math module -- standard C math library functions, pi and e */ +/* Here are some comments from Tim Peters, extracted from the + discussion attached to http://bugs.python.org/issue1640. They + describe the general aims of the math module with respect to + special values, IEEE-754 floating-point exceptions, and Python + exceptions. + +These are the "spirit of 754" rules: + +1. If the mathematical result is a real number, but of magnitude too +large to approximate by a machine float, overflow is signaled and the +result is an infinity (with the appropriate sign). + +2. If the mathematical result is a real number, but of magnitude too +small to approximate by a machine float, underflow is signaled and the +result is a zero (with the appropriate sign). + +3. At a singularity (a value x such that the limit of f(y) as y +approaches x exists and is an infinity), "divide by zero" is signaled +and the result is an infinity (with the appropriate sign). This is +complicated a little by that the left-side and right-side limits may +not be the same; e.g., 1/x approaches +inf or -inf as x approaches 0 +from the positive or negative directions. In that specific case, the +sign of the zero determines the result of 1/0. + +4. At a point where a function has no defined result in the extended +reals (i.e., the reals plus an infinity or two), invalid operation is +signaled and a NaN is returned. + +And these are what Python has historically /tried/ to do (but not +always successfully, as platform libm behavior varies a lot): + +For #1, raise OverflowError. + +For #2, return a zero (with the appropriate sign if that happens by +accident ;-)). + +For #3 and #4, raise ValueError. It may have made sense to raise +Python's ZeroDivisionError in #3, but historically that's only been +raised for division by zero and mod by zero. + +*/ + +/* + In general, on an IEEE-754 platform the aim is to follow the C99 + standard, including Annex 'F', whenever possible. Where the + standard recommends raising the 'divide-by-zero' or 'invalid' + floating-point exceptions, Python should raise a ValueError. Where + the standard recommends raising 'overflow', Python should raise an + OverflowError. In all other circumstances a value should be + returned. + */ + #include "Python.h" #include "longintrepr.h" /* just for SHIFT */ -#ifndef _MSC_VER -#ifndef __STDC__ -extern double fmod (double, double); -extern double frexp (double, int *); -extern double ldexp (double, int); -extern double modf (double, double *); -#endif /* __STDC__ */ -#endif /* _MSC_VER */ - #ifdef _OSF_SOURCE /* OSF1 5.1 doesn't make this available with XOPEN_SOURCE_EXTENDED defined */ extern double copysign(double, double); @@ -52,28 +95,97 @@ return result; } +/* + math_1 is used to wrap a libm function f that takes a double + arguments and returns a double. + + The error reporting follows these rules, which are designed to do + the right thing on C89/C99 platforms and IEEE 754/non IEEE 754 + platforms. + + - a NaN result from non-NaN inputs causes ValueError to be raised + - an infinite result from finite inputs causes OverflowError to be + raised if can_overflow is 1, or raises ValueError if can_overflow + is 0. + - if the result is finite and errno == EDOM then ValueError is + raised + - if the result is finite and nonzero and errno == ERANGE then + OverflowError is raised + + The last rule is used to catch overflow on platforms which follow + C89 but for which HUGE_VAL is not an infinity. + + For the majority of one-argument functions these rules are enough + to ensure that Python's functions behave as specified in 'Annex F' + of the C99 standard, with the 'invalid' and 'divide-by-zero' + floating-point exceptions mapping to Python's ValueError and the + 'overflow' floating-point exception mapping to OverflowError. + math_1 only works for functions that don't have singularities *and* + the possibility of overflow; fortunately, that covers everything we + care about right now. +*/ + static PyObject * -math_1(PyObject *arg, double (*func) (double)) +math_1(PyObject *arg, double (*func) (double), int can_overflow) { - double x = PyFloat_AsDouble(arg); + double x, r; + x = PyFloat_AsDouble(arg); if (x == -1.0 && PyErr_Occurred()) return NULL; errno = 0; - PyFPE_START_PROTECT("in math_1", return 0) - x = (*func)(x); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_1", return 0); + r = (*func)(x); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x)) + errno = can_overflow ? ERANGE : EDOM; + else + errno = 0; + } + if (errno && is_error(r)) return NULL; else - return PyFloat_FromDouble(x); + return PyFloat_FromDouble(r); } +/* + math_2 is used to wrap a libm function f that takes two double + arguments and returns a double. + + The error reporting follows these rules, which are designed to do + the right thing on C89/C99 platforms and IEEE 754/non IEEE 754 + platforms. + + - a NaN result from non-NaN inputs causes ValueError to be raised + - an infinite result from finite inputs causes OverflowError to be + raised. + - if the result is finite and errno == EDOM then ValueError is + raised + - if the result is finite and nonzero and errno == ERANGE then + OverflowError is raised + + The last rule is used to catch overflow on platforms which follow + C89 but for which HUGE_VAL is not an infinity. + + For most two-argument functions (copysign, fmod, hypot, atan2) + these rules are enough to ensure that Python's functions behave as + specified in 'Annex F' of the C99 standard, with the 'invalid' and + 'divide-by-zero' floating-point exceptions mapping to Python's + ValueError and the 'overflow' floating-point exception mapping to + OverflowError. +*/ + static PyObject * math_2(PyObject *args, double (*func) (double, double), char *funcname) { PyObject *ox, *oy; - double x, y; + double x, y, r; if (! PyArg_UnpackTuple(args, funcname, 2, 2, &ox, &oy)) return NULL; x = PyFloat_AsDouble(ox); @@ -81,19 +193,30 @@ if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) return NULL; errno = 0; - PyFPE_START_PROTECT("in math_2", return 0) - x = (*func)(x, y); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_2", return 0); + r = (*func)(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + if (errno && is_error(r)) return NULL; else - return PyFloat_FromDouble(x); + return PyFloat_FromDouble(r); } -#define FUNC1(funcname, func, docstring) \ +#define FUNC1(funcname, func, can_overflow, docstring) \ static PyObject * math_##funcname(PyObject *self, PyObject *args) { \ - return math_1(args, func); \ + return math_1(args, func, can_overflow); \ }\ PyDoc_STRVAR(math_##funcname##_doc, docstring); @@ -103,55 +226,49 @@ }\ PyDoc_STRVAR(math_##funcname##_doc, docstring); -FUNC1(acos, acos, +FUNC1(acos, acos, 0, "acos(x)\n\nReturn the arc cosine (measured in radians) of x.") -FUNC1(asin, asin, +FUNC1(acosh, acosh, 0, + "acosh(x)\n\nReturn the hyperbolic arc cosine (measured in radians) of x.") +FUNC1(asin, asin, 0, "asin(x)\n\nReturn the arc sine (measured in radians) of x.") -FUNC1(atan, atan, +FUNC1(asinh, asinh, 0, + "asinh(x)\n\nReturn the hyperbolic arc sine (measured in radians) of x.") +FUNC1(atan, atan, 0, "atan(x)\n\nReturn the arc tangent (measured in radians) of x.") FUNC2(atan2, atan2, "atan2(y, x)\n\nReturn the arc tangent (measured in radians) of y/x.\n" "Unlike atan(y/x), the signs of both x and y are considered.") -FUNC1(ceil, ceil, +FUNC1(atanh, atanh, 0, + "atanh(x)\n\nReturn the hyperbolic arc tangent (measured in radians) of x.") +FUNC1(ceil, ceil, 0, "ceil(x)\n\nReturn the ceiling of x as a float.\n" "This is the smallest integral value >= x.") -FUNC1(cos, cos, +FUNC2(copysign, copysign, + "copysign(x,y)\n\nReturn x with the sign of y.") +FUNC1(cos, cos, 0, "cos(x)\n\nReturn the cosine of x (measured in radians).") -FUNC1(cosh, cosh, +FUNC1(cosh, cosh, 1, "cosh(x)\n\nReturn the hyperbolic cosine of x.") - -#ifdef MS_WINDOWS -# define copysign _copysign -# define HAVE_COPYSIGN 1 -#endif -#ifdef HAVE_COPYSIGN -FUNC2(copysign, copysign, - "copysign(x,y)\n\nReturn x with the sign of y."); -#endif - -FUNC1(exp, exp, +FUNC1(exp, exp, 1, "exp(x)\n\nReturn e raised to the power of x.") -FUNC1(fabs, fabs, +FUNC1(fabs, fabs, 0, "fabs(x)\n\nReturn the absolute value of the float x.") -FUNC1(floor, floor, +FUNC1(floor, floor, 0, "floor(x)\n\nReturn the floor of x as a float.\n" "This is the largest integral value <= x.") -FUNC2(fmod, fmod, - "fmod(x,y)\n\nReturn fmod(x, y), according to platform C." - " x % y may differ.") -FUNC2(hypot, hypot, - "hypot(x,y)\n\nReturn the Euclidean distance, sqrt(x*x + y*y).") -FUNC2(pow, pow, - "pow(x,y)\n\nReturn x**y (x to the power of y).") -FUNC1(sin, sin, +FUNC1(log1p, log1p, 1, + "log1p(x)\n\nReturn the natural logarithm of 1+x (base e).\n\ + The result is computed in a way which is accurate for x near zero.") +FUNC1(sin, sin, 0, "sin(x)\n\nReturn the sine of x (measured in radians).") -FUNC1(sinh, sinh, +FUNC1(sinh, sinh, 1, "sinh(x)\n\nReturn the hyperbolic sine of x.") -FUNC1(sqrt, sqrt, +FUNC1(sqrt, sqrt, 0, "sqrt(x)\n\nReturn the square root of x.") -FUNC1(tan, tan, +FUNC1(tan, tan, 0, "tan(x)\n\nReturn the tangent of x (measured in radians).") -FUNC1(tanh, tanh, +FUNC1(tanh, tanh, 0, "tanh(x)\n\nReturn the hyperbolic tangent of x.") static PyObject * @@ -172,13 +289,17 @@ double x = PyFloat_AsDouble(arg); if (x == -1.0 && PyErr_Occurred()) return NULL; - errno = 0; - x = frexp(x, &i); - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) - return NULL; - else - return Py_BuildValue("(di)", x, i); + /* deal with special cases directly, to sidestep platform + differences */ + if (Py_IS_NAN(x) || Py_IS_INFINITY(x) || !x) { + i = 0; + } + else { + PyFPE_START_PROTECT("in math_frexp", return 0); + x = frexp(x, &i); + PyFPE_END_PROTECT(x); + } + return Py_BuildValue("(di)", x, i); } PyDoc_STRVAR(math_frexp_doc, @@ -191,19 +312,24 @@ static PyObject * math_ldexp(PyObject *self, PyObject *args) { - double x; + double x, r; int exp; if (! PyArg_ParseTuple(args, "di:ldexp", &x, &exp)) return NULL; errno = 0; - PyFPE_START_PROTECT("ldexp", return 0) - x = ldexp(x, exp); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_ldexp", return 0) + r = ldexp(x, exp); + PyFPE_END_PROTECT(r) + if (Py_IS_FINITE(x) && Py_IS_INFINITY(r)) + errno = ERANGE; + /* Windows MSVC8 sets errno = EDOM on ldexp(NaN, i); + we unset it to avoid raising a ValueError here. */ + if (errno == EDOM) + errno = 0; + if (errno && is_error(r)) return NULL; else - return PyFloat_FromDouble(x); + return PyFloat_FromDouble(r); } PyDoc_STRVAR(math_ldexp_doc, @@ -216,12 +342,10 @@ if (x == -1.0 && PyErr_Occurred()) return NULL; errno = 0; + PyFPE_START_PROTECT("in math_modf", return 0); x = modf(x, &y); - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) - return NULL; - else - return Py_BuildValue("(dd)", x, y); + PyFPE_END_PROTECT(x); + return Py_BuildValue("(dd)", x, y); } PyDoc_STRVAR(math_modf_doc, @@ -260,7 +384,7 @@ } /* Else let libm handle it by itself. */ - return math_1(arg, func); + return math_1(arg, func, 0); } static PyObject * @@ -303,6 +427,141 @@ PyDoc_STRVAR(math_log10_doc, "log10(x) -> the base 10 logarithm of x."); +static PyObject * +math_fmod(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + if (! PyArg_UnpackTuple(args, "fmod", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* fmod(x, +/-Inf) returns x for finite x. */ + if (Py_IS_INFINITY(y) && Py_IS_FINITE(x)) + return PyFloat_FromDouble(x); + errno = 0; + PyFPE_START_PROTECT("in math_fmod", return 0); + r = fmod(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_fmod_doc, +"fmod(x,y)\n\nReturn fmod(x, y), according to platform C." +" x % y may differ."); + +static PyObject * +math_hypot(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + if (! PyArg_UnpackTuple(args, "hypot", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* hypot(x, +/-Inf) returns Inf, even if x is a NaN. */ + if (Py_IS_INFINITY(x)) + return PyFloat_FromDouble(fabs(x)); + if (Py_IS_INFINITY(y)) + return PyFloat_FromDouble(fabs(y)); + errno = 0; + PyFPE_START_PROTECT("in math_hypot", return 0); + r = hypot(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_hypot_doc, +"hypot(x,y)\n\nReturn the Euclidean distance, sqrt(x*x + y*y)."); + +/* pow can't use math_2, but needs its own wrapper: the problem is + that an infinite result can arise either as a result of overflow + (in which case OverflowError should be raised) or as a result of + e.g. 0.**-5. (for which ValueError needs to be raised.) +*/ + +static PyObject * +math_pow(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + + if (! PyArg_UnpackTuple(args, "pow", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* 1**x and x**0 return 1., even if x is a NaN or infinity. */ + if (x == 1.0 || y == 0.0) + return PyFloat_FromDouble(1.); + errno = 0; + PyFPE_START_PROTECT("in math_pow", return 0); + r = pow(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + /* an infinite result arises either from: + + (A) (+/-0.)**negative, + (B) overflow of x**y with both x and y finite (and x nonzero) + (C) (+/-inf)**positive, or + (D) x**inf with |x| > 1, or x**-inf with |x| < 1. + + In case (A) we want ValueError to be raised. In case (B) + OverflowError should be raised. In cases (C) and (D) the infinite + result should be returned. + */ + else if (Py_IS_INFINITY(r)) { + if (x == 0.) + errno = EDOM; + else if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_pow_doc, +"pow(x,y)\n\nReturn x**y (x to the power of y)."); + static const double degToRad = Py_MATH_PI / 180.0; static const double radToDeg = 180.0 / Py_MATH_PI; @@ -356,16 +615,16 @@ "isinf(x) -> bool\n\ Checks if float x is infinite (positive or negative)"); - static PyMethodDef math_methods[] = { {"acos", math_acos, METH_O, math_acos_doc}, + {"acosh", math_acosh, METH_O, math_acosh_doc}, {"asin", math_asin, METH_O, math_asin_doc}, + {"asinh", math_asinh, METH_O, math_asinh_doc}, {"atan", math_atan, METH_O, math_atan_doc}, {"atan2", math_atan2, METH_VARARGS, math_atan2_doc}, + {"atanh", math_atanh, METH_O, math_atanh_doc}, {"ceil", math_ceil, METH_O, math_ceil_doc}, -#ifdef HAVE_COPYSIGN {"copysign", math_copysign, METH_VARARGS, math_copysign_doc}, -#endif {"cos", math_cos, METH_O, math_cos_doc}, {"cosh", math_cosh, METH_O, math_cosh_doc}, {"degrees", math_degrees, METH_O, math_degrees_doc}, @@ -379,6 +638,7 @@ {"isnan", math_isnan, METH_O, math_isnan_doc}, {"ldexp", math_ldexp, METH_VARARGS, math_ldexp_doc}, {"log", math_log, METH_VARARGS, math_log_doc}, + {"log1p", math_log1p, METH_O, math_log1p_doc}, {"log10", math_log10, METH_O, math_log10_doc}, {"modf", math_modf, METH_O, math_modf_doc}, {"pow", math_pow, METH_VARARGS, math_pow_doc}, @@ -400,27 +660,15 @@ PyMODINIT_FUNC initmath(void) { - PyObject *m, *d, *v; + PyObject *m; m = Py_InitModule3("math", math_methods, module_doc); if (m == NULL) goto finally; - d = PyModule_GetDict(m); - if (d == NULL) - goto finally; - if (!(v = PyFloat_FromDouble(Py_MATH_PI))) - goto finally; - if (PyDict_SetItemString(d, "pi", v) < 0) - goto finally; - Py_DECREF(v); - - if (!(v = PyFloat_FromDouble(Py_MATH_E))) - goto finally; - if (PyDict_SetItemString(d, "e", v) < 0) - goto finally; - Py_DECREF(v); + PyModule_AddObject(m, "pi", PyFloat_FromDouble(Py_MATH_PI)); + PyModule_AddObject(m, "e", PyFloat_FromDouble(Py_MATH_E)); - finally: + finally: return; } Modified: python/trunk/Objects/complexobject.c ============================================================================== --- python/trunk/Objects/complexobject.c (original) +++ python/trunk/Objects/complexobject.c Sat Apr 19 01:13:07 2008 @@ -187,6 +187,38 @@ } +double +c_abs(Py_complex z) +{ + /* sets errno = ERANGE on overflow; otherwise errno = 0 */ + double result; + + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + /* C99 rules: if either the real or the imaginary part is an + infinity, return infinity, even if the other part is a + NaN. */ + if (Py_IS_INFINITY(z.real)) { + result = fabs(z.real); + errno = 0; + return result; + } + if (Py_IS_INFINITY(z.imag)) { + result = fabs(z.imag); + errno = 0; + return result; + } + /* either the real or imaginary part is a NaN, + and neither is infinite. Result should be NaN. */ + return Py_NAN; + } + result = hypot(z.real, z.imag); + if (!Py_IS_FINITE(result)) + errno = ERANGE; + else + errno = 0; + return result; +} + static PyObject * complex_subtype_from_c_complex(PyTypeObject *type, Py_complex cval) { @@ -329,8 +361,7 @@ if (!Py_IS_FINITE(v->cval.imag)) { if (Py_IS_NAN(v->cval.imag)) strncpy(buf, "nan*j", 6); - /* else if (copysign(1, v->cval.imag) == 1) */ - else if (v->cval.imag > 0) + else if (copysign(1, v->cval.imag) == 1) strncpy(buf, "inf*j", 6); else strncpy(buf, "-inf*j", 7); @@ -492,6 +523,7 @@ complex_div(PyComplexObject *v, PyComplexObject *w) { Py_complex quot; + PyFPE_START_PROTECT("complex_div", return 0) errno = 0; quot = c_quot(v->cval,w->cval); @@ -655,9 +687,16 @@ complex_abs(PyComplexObject *v) { double result; + PyFPE_START_PROTECT("complex_abs", return 0) - result = hypot(v->cval.real,v->cval.imag); + result = c_abs(v->cval); PyFPE_END_PROTECT(result) + + if (errno == ERANGE) { + PyErr_SetString(PyExc_OverflowError, + "absolute value too large"); + return NULL; + } return PyFloat_FromDouble(result); } @@ -786,9 +825,29 @@ return Py_BuildValue("(D)", &v->cval); } +#if 0 +static PyObject * +complex_is_finite(PyObject *self) +{ + Py_complex c; + c = ((PyComplexObject *)self)->cval; + return PyBool_FromLong((long)(Py_IS_FINITE(c.real) && + Py_IS_FINITE(c.imag))); +} + +PyDoc_STRVAR(complex_is_finite_doc, +"complex.is_finite() -> bool\n" +"\n" +"Returns True if the real and the imaginary part is finite."); +#endif + static PyMethodDef complex_methods[] = { {"conjugate", (PyCFunction)complex_conjugate, METH_NOARGS, complex_conjugate_doc}, +#if 0 + {"is_finite", (PyCFunction)complex_is_finite, METH_NOARGS, + complex_is_finite_doc}, +#endif {"__getnewargs__", (PyCFunction)complex_getnewargs, METH_NOARGS}, {NULL, NULL} /* sentinel */ }; Deleted: python/trunk/Objects/doubledigits.c ============================================================================== --- python/trunk/Objects/doubledigits.c Sat Apr 19 01:13:07 2008 +++ (empty file) @@ -1,601 +0,0 @@ -/* Free-format floating point printer - * - * Based on "Floating-Point Printer Sample Code", by Robert G. Burger, - * http://www.cs.indiana.edu/~burger/fp/index.html - */ - -#include "Python.h" - -#if defined(__alpha) || defined(__i386) || defined(_M_IX86) || defined(_M_X64) || defined(_M_IA64) -#define LITTLE_ENDIAN_IEEE_DOUBLE -#elif !(defined(__ppc__) || defined(sparc) || defined(__sgi) || defined(_IBMR2) || defined(hpux)) -#error unknown machine type -#endif - -#if defined(_M_IX86) -#define UNSIGNED64 unsigned __int64 -#elif defined(__alpha) -#define UNSIGNED64 unsigned long -#else -#define UNSIGNED64 unsigned long long -#endif - -#ifndef U32 -#define U32 unsigned int -#endif - -/* exponent stored + 1024, hidden bit to left of decimal point */ -#define bias 1023 -#define bitstoright 52 -#define m1mask 0xf -#define hidden_bit 0x100000 -#ifdef LITTLE_ENDIAN_IEEE_DOUBLE -struct dblflt { - unsigned int m4: 16; - unsigned int m3: 16; - unsigned int m2: 16; - unsigned int m1: 4; - unsigned int e: 11; - unsigned int s: 1; -}; -#else -/* Big Endian IEEE Double Floats */ -struct dblflt { - unsigned int s: 1; - unsigned int e: 11; - unsigned int m1: 4; - unsigned int m2: 16; - unsigned int m3: 16; - unsigned int m4: 16; -}; -#endif -#define float_radix 2.147483648e9 - - -typedef UNSIGNED64 Bigit; -#define BIGSIZE 24 -#define MIN_E -1074 -#define MAX_FIVE 325 -#define B_P1 ((Bigit)1 << 52) - -typedef struct { - int l; - Bigit d[BIGSIZE]; -} Bignum; - -static Bignum R, S, MP, MM, five[MAX_FIVE]; -static Bignum S2, S3, S4, S5, S6, S7, S8, S9; -static int ruf, k, s_n, use_mp, qr_shift, sl, slr; - -static void mul10(Bignum *x); -static void big_short_mul(Bignum *x, Bigit y, Bignum *z); -/* -static void print_big(Bignum *x); -*/ -static int estimate(int n); -static void one_shift_left(int y, Bignum *z); -static void short_shift_left(Bigit x, int y, Bignum *z); -static void big_shift_left(Bignum *x, int y, Bignum *z); -static int big_comp(Bignum *x, Bignum *y); -static int sub_big(Bignum *x, Bignum *y, Bignum *z); -static void add_big(Bignum *x, Bignum *y, Bignum *z); -static int add_cmp(void); -static int qr(void); - -/*static int _PyFloat_Digits(char *buf, double v, int *signum);*/ -/*static void _PyFloat_DigitsInit(void);*/ - -#define ADD(x, y, z, k) {\ - Bigit x_add, z_add;\ - x_add = (x);\ - if ((k))\ - z_add = x_add + (y) + 1, (k) = (z_add <= x_add);\ - else\ - z_add = x_add + (y), (k) = (z_add < x_add);\ - (z) = z_add;\ -} - -#define SUB(x, y, z, b) {\ - Bigit x_sub, y_sub;\ - x_sub = (x); y_sub = (y);\ - if ((b))\ - (z) = x_sub - y_sub - 1, b = (y_sub >= x_sub);\ - else\ - (z) = x_sub - y_sub, b = (y_sub > x_sub);\ -} - -#define MUL(x, y, z, k) {\ - Bigit x_mul, low, high;\ - x_mul = (x);\ - low = (x_mul & 0xffffffff) * (y) + (k);\ - high = (x_mul >> 32) * (y) + (low >> 32);\ - (k) = high >> 32;\ - (z) = (low & 0xffffffff) | (high << 32);\ -} - -#define SLL(x, y, z, k) {\ - Bigit x_sll = (x);\ - (z) = (x_sll << (y)) | (k);\ - (k) = x_sll >> (64 - (y));\ -} - -static void -mul10(Bignum *x) -{ - int i, l; - Bigit *p, k; - - l = x->l; - for (i = l, p = &x->d[0], k = 0; i >= 0; i--) - MUL(*p, 10, *p++, k); - if (k != 0) - *p = k, x->l = l+1; -} - -static void -big_short_mul(Bignum *x, Bigit y, Bignum *z) -{ - int i, xl, zl; - Bigit *xp, *zp, k; - U32 high, low; - - xl = x->l; - xp = &x->d[0]; - zl = xl; - zp = &z->d[0]; - high = y >> 32; - low = y & 0xffffffff; - for (i = xl, k = 0; i >= 0; i--, xp++, zp++) { - Bigit xlow, xhigh, z0, t, c, z1; - xlow = *xp & 0xffffffff; - xhigh = *xp >> 32; - z0 = (xlow * low) + k; /* Cout is (z0 < k) */ - t = xhigh * low; - z1 = (xlow * high) + t; - c = (z1 < t); - t = z0 >> 32; - z1 += t; - c += (z1 < t); - *zp = (z1 << 32) | (z0 & 0xffffffff); - k = (xhigh * high) + (c << 32) + (z1 >> 32) + (z0 < k); - } - if (k != 0) - *zp = k, zl++; - z->l = zl; -} - -/* -static void -print_big(Bignum *x) -{ - int i; - Bigit *p; - - printf("#x"); - i = x->l; - p = &x->d[i]; - for (p = &x->d[i]; i >= 0; i--) { - Bigit b = *p--; - printf("%08x%08x", (int)(b >> 32), (int)(b & 0xffffffff)); - } -} -*/ - -static int -estimate(int n) -{ - if (n < 0) - return (int)(n*0.3010299956639812); - else - return 1+(int)(n*0.3010299956639811); -} - -static void -one_shift_left(int y, Bignum *z) -{ - int n, m, i; - Bigit *zp; - - n = y / 64; - m = y % 64; - zp = &z->d[0]; - for (i = n; i > 0; i--) *zp++ = 0; - *zp = (Bigit)1 << m; - z->l = n; -} - -static void -short_shift_left(Bigit x, int y, Bignum *z) -{ - int n, m, i, zl; - Bigit *zp; - - n = y / 64; - m = y % 64; - zl = n; - zp = &(z->d[0]); - for (i = n; i > 0; i--) *zp++ = 0; - if (m == 0) - *zp = x; - else { - Bigit high = x >> (64 - m); - *zp = x << m; - if (high != 0) - *++zp = high, zl++; - } - z->l = zl; -} - -static void -big_shift_left(Bignum *x, int y, Bignum *z) -{ - int n, m, i, xl, zl; - Bigit *xp, *zp, k; - - n = y / 64; - m = y % 64; - xl = x->l; - xp = &(x->d[0]); - zl = xl + n; - zp = &(z->d[0]); - for (i = n; i > 0; i--) *zp++ = 0; - if (m == 0) - for (i = xl; i >= 0; i--) *zp++ = *xp++; - else { - for (i = xl, k = 0; i >= 0; i--) - SLL(*xp++, m, *zp++, k); - if (k != 0) - *zp = k, zl++; - } - z->l = zl; -} - - -static int -big_comp(Bignum *x, Bignum *y) -{ - int i, xl, yl; - Bigit *xp, *yp; - - xl = x->l; - yl = y->l; - if (xl > yl) return 1; - if (xl < yl) return -1; - xp = &x->d[xl]; - yp = &y->d[xl]; - for (i = xl; i >= 0; i--, xp--, yp--) { - Bigit a = *xp; - Bigit b = *yp; - - if (a > b) return 1; - else if (a < b) return -1; - } - return 0; -} - -static int -sub_big(Bignum *x, Bignum *y, Bignum *z) -{ - int xl, yl, zl, b, i; - Bigit *xp, *yp, *zp; - - xl = x->l; - yl = y->l; - if (yl > xl) return 1; - xp = &x->d[0]; - yp = &y->d[0]; - zp = &z->d[0]; - - for (i = yl, b = 0; i >= 0; i--) - SUB(*xp++, *yp++, *zp++, b); - for (i = xl-yl; b && i > 0; i--) { - Bigit x_sub; - x_sub = *xp++; - *zp++ = x_sub - 1; - b = (x_sub == 0); - } - for (; i > 0; i--) *zp++ = *xp++; - if (b) return 1; - zl = xl; - while (*--zp == 0) zl--; - z->l = zl; - return 0; -} - -static void -add_big(Bignum *x, Bignum *y, Bignum *z) -{ - int xl, yl, k, i; - Bigit *xp, *yp, *zp; - - xl = x->l; - yl = y->l; - if (yl > xl) { - int tl; - Bignum *tn; - tl = xl; xl = yl; yl = tl; - tn = x; x = y; y = tn; - } - - xp = &x->d[0]; - yp = &y->d[0]; - zp = &z->d[0]; - - for (i = yl, k = 0; i >= 0; i--) - ADD(*xp++, *yp++, *zp++, k); - for (i = xl-yl; k && i > 0; i--) { - Bigit z_add; - z_add = *xp++ + 1; - k = (z_add == 0); - *zp++ = z_add; - } - for (; i > 0; i--) *zp++ = *xp++; - if (k) - *zp = 1, z->l = xl+1; - else - z->l = xl; -} - -static int -add_cmp() -{ - int rl, ml, sl, suml; - static Bignum sum; - - rl = R.l; - ml = (use_mp ? MP.l : MM.l); - sl = S.l; - - suml = rl >= ml ? rl : ml; - if ((sl > suml+1) || ((sl == suml+1) && (S.d[sl] > 1))) return -1; - if (sl < suml) return 1; - - add_big(&R, (use_mp ? &MP : &MM), &sum); - return big_comp(&sum, &S); -} - -static int -qr() -{ - if (big_comp(&R, &S5) < 0) - if (big_comp(&R, &S2) < 0) - if (big_comp(&R, &S) < 0) - return 0; - else { - sub_big(&R, &S, &R); - return 1; - } - else if (big_comp(&R, &S3) < 0) { - sub_big(&R, &S2, &R); - return 2; - } - else if (big_comp(&R, &S4) < 0) { - sub_big(&R, &S3, &R); - return 3; - } - else { - sub_big(&R, &S4, &R); - return 4; - } - else if (big_comp(&R, &S7) < 0) - if (big_comp(&R, &S6) < 0) { - sub_big(&R, &S5, &R); - return 5; - } - else { - sub_big(&R, &S6, &R); - return 6; - } - else if (big_comp(&R, &S9) < 0) - if (big_comp(&R, &S8) < 0) { - sub_big(&R, &S7, &R); - return 7; - } - else { - sub_big(&R, &S8, &R); - return 8; - } - else { - sub_big(&R, &S9, &R); - return 9; - } -} - -#define OUTDIG(d) { *buf++ = (d) + '0'; *buf = 0; return k; } - -int -_PyFloat_Digits(char *buf, double v, int *signum) -{ - struct dblflt *x; - int sign, e, f_n, m_n, i, d, tc1, tc2; - Bigit f; - - /* decompose float into sign, mantissa & exponent */ - x = (struct dblflt *)&v; - sign = x->s; - e = x->e; - f = (Bigit)(x->m1 << 16 | x->m2) << 32 | (U32)(x->m3 << 16 | x->m4); - if (e != 0) { - e = e - bias - bitstoright; - f |= (Bigit)hidden_bit << 32; - } - else if (f != 0) - /* denormalized */ - e = 1 - bias - bitstoright; - - *signum = sign; - if (f == 0) { - *buf++ = '0'; - *buf = 0; - return 0; - } - - ruf = !(f & 1); /* ruf = (even? f) */ - - /* Compute the scaling factor estimate, k */ - if (e > MIN_E) - k = estimate(e+52); - else { - int n; - Bigit y; - - for (n = e+52, y = (Bigit)1 << 52; f < y; n--) y >>= 1; - k = estimate(n); - } - - if (e >= 0) - if (f != B_P1) - use_mp = 0, f_n = e+1, s_n = 1, m_n = e; - else - use_mp = 1, f_n = e+2, s_n = 2, m_n = e; - else - if ((e == MIN_E) || (f != B_P1)) - use_mp = 0, f_n = 1, s_n = 1-e, m_n = 0; - else - use_mp = 1, f_n = 2, s_n = 2-e, m_n = 0; - - /* Scale it! */ - if (k == 0) { - short_shift_left(f, f_n, &R); - one_shift_left(s_n, &S); - one_shift_left(m_n, &MM); - if (use_mp) one_shift_left(m_n+1, &MP); - qr_shift = 1; - } - else if (k > 0) { - s_n += k; - if (m_n >= s_n) - f_n -= s_n, m_n -= s_n, s_n = 0; - else - f_n -= m_n, s_n -= m_n, m_n = 0; - short_shift_left(f, f_n, &R); - big_shift_left(&five[k-1], s_n, &S); - one_shift_left(m_n, &MM); - if (use_mp) one_shift_left(m_n+1, &MP); - qr_shift = 0; - } - else { - Bignum *power = &five[-k-1]; - - s_n += k; - big_short_mul(power, f, &S); - big_shift_left(&S, f_n, &R); - one_shift_left(s_n, &S); - big_shift_left(power, m_n, &MM); - if (use_mp) big_shift_left(power, m_n+1, &MP); - qr_shift = 1; - } - - /* fixup */ - if (add_cmp() <= -ruf) { - k--; - mul10(&R); - mul10(&MM); - if (use_mp) mul10(&MP); - } - - /* - printf("\nk = %d\n", k); - printf("R = "); print_big(&R); - printf("\nS = "); print_big(&S); - printf("\nM- = "); print_big(&MM); - if (use_mp) printf("\nM+ = "), print_big(&MP); - putchar('\n'); - fflush(0); - */ - - if (qr_shift) { - sl = s_n / 64; - slr = s_n % 64; - } - else { - big_shift_left(&S, 1, &S2); - add_big(&S2, &S, &S3); - big_shift_left(&S2, 1, &S4); - add_big(&S4, &S, &S5); - add_big(&S4, &S2, &S6); - add_big(&S4, &S3, &S7); - big_shift_left(&S4, 1, &S8); - add_big(&S8, &S, &S9); - } - -again: - if (qr_shift) { /* Take advantage of the fact that S = (ash 1 s_n) */ - if (R.l < sl) - d = 0; - else if (R.l == sl) { - Bigit *p; - - p = &R.d[sl]; - d = *p >> slr; - *p &= ((Bigit)1 << slr) - 1; - for (i = sl; (i > 0) && (*p == 0); i--) p--; - R.l = i; - } - else { - Bigit *p; - - p = &R.d[sl+1]; - d = *p << (64 - slr) | *(p-1) >> slr; - p--; - *p &= ((Bigit)1 << slr) - 1; - for (i = sl; (i > 0) && (*p == 0); i--) p--; - R.l = i; - } - } - else /* We need to do quotient-remainder */ - d = qr(); - - tc1 = big_comp(&R, &MM) < ruf; - tc2 = add_cmp() > -ruf; - if (!tc1) - if (!tc2) { - mul10(&R); - mul10(&MM); - if (use_mp) mul10(&MP); - *buf++ = d + '0'; - goto again; - } - else - OUTDIG(d+1) - else - if (!tc2) - OUTDIG(d) - else { - big_shift_left(&R, 1, &MM); - if (big_comp(&MM, &S) == -1) - OUTDIG(d) - else - OUTDIG(d+1) - } -} - -void -_PyFloat_DigitsInit() -{ - int n, i, l; - Bignum *b; - Bigit *xp, *zp, k; - - five[0].l = l = 0; - five[0].d[0] = 5; - for (n = MAX_FIVE-1, b = &five[0]; n > 0; n--) { - xp = &b->d[0]; - b++; - zp = &b->d[0]; - for (i = l, k = 0; i >= 0; i--) - MUL(*xp++, 5, *zp++, k); - if (k != 0) - *zp = k, l++; - b->l = l; - } - - /* - for (n = 1, b = &five[0]; n <= MAX_FIVE; n++) { - big_shift_left(b++, n, &R); - print_big(&R); - putchar('\n'); - } - fflush(0); - */ -} Modified: python/trunk/Objects/floatobject.c ============================================================================== --- python/trunk/Objects/floatobject.c (original) +++ python/trunk/Objects/floatobject.c Sat Apr 19 01:13:07 2008 @@ -16,10 +16,6 @@ #include "formatter_string.h" -#if !defined(__STDC__) -extern double fmod(double, double); -extern double pow(double, double); -#endif #ifdef _OSF_SOURCE /* OSF1 5.1 doesn't make this available with XOPEN_SOURCE_EXTENDED defined */ @@ -251,11 +247,11 @@ p++; } if (PyOS_strnicmp(p, "inf", 4) == 0) { - return PyFloat_FromDouble(sign * Py_HUGE_VAL); + Py_RETURN_INF(sign); } #ifdef Py_NAN if(PyOS_strnicmp(p, "nan", 4) == 0) { - return PyFloat_FromDouble(Py_NAN); + Py_RETURN_NAN; } #endif PyOS_snprintf(buffer, sizeof(buffer), @@ -405,110 +401,6 @@ format_float(buf, 100, v, precision); } -#ifdef Py_BROKEN_REPR -/* The following function is based on Tcl_PrintDouble, - * from tclUtil.c. - */ - -#define is_infinite(d) ( (d) > DBL_MAX || (d) < -DBL_MAX ) -#define is_nan(d) ((d) != (d)) - -static void -format_double_repr(char *dst, double value) -{ - char *p, c; - int exp; - int signum; - char buffer[30]; - - /* - * Handle NaN. - */ - - if (is_nan(value)) { - strcpy(dst, "nan"); - return; - } - - /* - * Handle infinities. - */ - - if (is_infinite(value)) { - if (value < 0) { - strcpy(dst, "-inf"); - } else { - strcpy(dst, "inf"); - } - return; - } - - /* - * Ordinary (normal and denormal) values. - */ - - exp = _PyFloat_Digits(buffer, value, &signum)+1; - if (signum) { - *dst++ = '-'; - } - p = buffer; - if (exp < -3 || exp > 17) { - /* - * E format for numbers < 1e-3 or >= 1e17. - */ - - *dst++ = *p++; - c = *p; - if (c != '\0') { - *dst++ = '.'; - while (c != '\0') { - *dst++ = c; - c = *++p; - } - } - sprintf(dst, "e%+d", exp-1); - } else { - /* - * F format for others. - */ - - if (exp <= 0) { - *dst++ = '0'; - } - c = *p; - while (exp-- > 0) { - if (c != '\0') { - *dst++ = c; - c = *++p; - } else { - *dst++ = '0'; - } - } - *dst++ = '.'; - if (c == '\0') { - *dst++ = '0'; - } else { - while (++exp < 0) { - *dst++ = '0'; - } - while (c != '\0') { - *dst++ = c; - c = *++p; - } - } - *dst++ = '\0'; - } -} - -static void -format_float_repr(char *buf, PyFloatObject *v) -{ - assert(PyFloat_Check(v)); - format_double_repr(buf, PyFloat_AS_DOUBLE(v)); -} - -#endif /* Py_BROKEN_REPR */ - /* Macro and helper that convert PyObject obj to a C double and store the value in dbl; this replaces the functionality of the coercion slot function. If conversion to double raises an exception, obj is @@ -593,13 +485,8 @@ static PyObject * float_repr(PyFloatObject *v) { -#ifdef Py_BROKEN_REPR - char buf[30]; - format_float_repr(buf, v); -#else char buf[100]; format_float(buf, sizeof(buf), v, PREC_REPR); -#endif return PyString_FromString(buf); } @@ -889,10 +776,13 @@ double a,b; CONVERT_TO_DOUBLE(v, a); CONVERT_TO_DOUBLE(w, b); +#ifdef Py_NAN if (b == 0.0) { - PyErr_SetString(PyExc_ZeroDivisionError, "float division"); + PyErr_SetString(PyExc_ZeroDivisionError, + "float division"); return NULL; } +#endif PyFPE_START_PROTECT("divide", return 0) a = a / b; PyFPE_END_PROTECT(a) @@ -908,10 +798,13 @@ if (Py_DivisionWarningFlag >= 2 && PyErr_Warn(PyExc_DeprecationWarning, "classic float division") < 0) return NULL; +#ifdef Py_NAN if (b == 0.0) { - PyErr_SetString(PyExc_ZeroDivisionError, "float division"); + PyErr_SetString(PyExc_ZeroDivisionError, + "float division"); return NULL; } +#endif PyFPE_START_PROTECT("divide", return 0) a = a / b; PyFPE_END_PROTECT(a) @@ -923,12 +816,15 @@ { double vx, wx; double mod; - CONVERT_TO_DOUBLE(v, vx); - CONVERT_TO_DOUBLE(w, wx); + CONVERT_TO_DOUBLE(v, vx); + CONVERT_TO_DOUBLE(w, wx); +#ifdef Py_NAN if (wx == 0.0) { - PyErr_SetString(PyExc_ZeroDivisionError, "float modulo"); + PyErr_SetString(PyExc_ZeroDivisionError, + "float modulo"); return NULL; } +#endif PyFPE_START_PROTECT("modulo", return 0) mod = fmod(vx, wx); /* note: checking mod*wx < 0 is incorrect -- underflows to @@ -1032,6 +928,9 @@ } return PyFloat_FromDouble(0.0); } + if (iv == 1.0) { /* 1**w is 1, even 1**inf and 1**nan */ + return PyFloat_FromDouble(1.0); + } if (iv < 0.0) { /* Whether this is an error is a mess, and bumps into libm * bugs so we have to figure it out ourselves. @@ -1123,6 +1022,57 @@ } static PyObject * +float_is_integer(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + PyObject *o; + + if (x == -1.0 && PyErr_Occurred()) + return NULL; + if (!Py_IS_FINITE(x)) + Py_RETURN_FALSE; + PyFPE_START_PROTECT("is_integer", return NULL) + o = (floor(x) == x) ? Py_True : Py_False; + PyFPE_END_PROTECT(x) + if (errno != 0) { + PyErr_SetFromErrno(errno == ERANGE ? PyExc_OverflowError : + PyExc_ValueError); + return NULL; + } + Py_INCREF(o); + return o; +} + +#if 0 +static PyObject * +float_is_inf(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_INFINITY(x)); +} + +static PyObject * +float_is_nan(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_NAN(x)); +} + +static PyObject * +float_is_finite(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_FINITE(x)); +} +#endif + +static PyObject * float_trunc(PyObject *v) { double x = PyFloat_AsDouble(v); @@ -1480,12 +1430,22 @@ static PyMethodDef float_methods[] = { - {"conjugate", (PyCFunction)float_float, METH_NOARGS, + {"conjugate", (PyCFunction)float_float, METH_NOARGS, "Returns self, the complex conjugate of any float."}, {"__trunc__", (PyCFunction)float_trunc, METH_NOARGS, "Returns the Integral closest to x between 0 and x."}, {"as_integer_ratio", (PyCFunction)float_as_integer_ratio, METH_NOARGS, float_as_integer_ratio_doc}, + {"is_integer", (PyCFunction)float_is_integer, METH_NOARGS, + "Returns True if the float is an integer."}, +#if 0 + {"is_inf", (PyCFunction)float_is_inf, METH_NOARGS, + "Returns True if the float is positive or negative infinite."}, + {"is_finite", (PyCFunction)float_is_finite, METH_NOARGS, + "Returns True if the float is finite, neither infinite nor NaN."}, + {"is_nan", (PyCFunction)float_is_nan, METH_NOARGS, + "Returns True if the float is not a number (NaN)."}, +#endif {"__getnewargs__", (PyCFunction)float_getnewargs, METH_NOARGS}, {"__getformat__", (PyCFunction)float_getformat, METH_O|METH_CLASS, float_getformat_doc}, @@ -1646,10 +1606,6 @@ double_format = detected_double_format; float_format = detected_float_format; -#ifdef Py_BROKEN_REPR - /* Initialize floating point repr */ - _PyFloat_DigitsInit(); -#endif /* Init float info */ if (FloatInfoType.tp_name == 0) PyStructSequence_InitType(&FloatInfoType, &floatinfo_desc); Modified: python/trunk/Objects/intobject.c ============================================================================== --- python/trunk/Objects/intobject.c (original) +++ python/trunk/Objects/intobject.c Sat Apr 19 01:13:07 2008 @@ -1143,9 +1143,21 @@ return NULL; } +#if 0 +static PyObject * +int_is_finite(PyObject *v) +{ + Py_RETURN_TRUE; +} +#endif + static PyMethodDef int_methods[] = { {"conjugate", (PyCFunction)int_int, METH_NOARGS, "Returns self, the complex conjugate of any int."}, +#if 0 + {"is_finite", (PyCFunction)int_is_finite, METH_NOARGS, + "Returns always True."}, +#endif {"__trunc__", (PyCFunction)int_int, METH_NOARGS, "Truncating an Integral returns itself."}, {"__getnewargs__", (PyCFunction)int_getnewargs, METH_NOARGS}, Modified: python/trunk/Objects/longobject.c ============================================================================== --- python/trunk/Objects/longobject.c (original) +++ python/trunk/Objects/longobject.c Sat Apr 19 01:13:07 2008 @@ -3441,9 +3441,21 @@ return NULL; } +#if 0 +static PyObject * +long_is_finite(PyObject *v) +{ + Py_RETURN_TRUE; +} +#endif + static PyMethodDef long_methods[] = { {"conjugate", (PyCFunction)long_long, METH_NOARGS, "Returns self, the complex conjugate of any long."}, +#if 0 + {"is_finite", (PyCFunction)long_is_finite, METH_NOARGS, + "Returns always True."}, +#endif {"__trunc__", (PyCFunction)long_long, METH_NOARGS, "Truncating an Integral returns itself."}, {"__getnewargs__", (PyCFunction)long_getnewargs, METH_NOARGS}, Modified: python/trunk/PC/pyconfig.h ============================================================================== --- python/trunk/PC/pyconfig.h (original) +++ python/trunk/PC/pyconfig.h Sat Apr 19 01:13:07 2008 @@ -211,12 +211,13 @@ #endif /* MS_WIN32 && !MS_WIN64 */ typedef int pid_t; -#define hypot _hypot #include #define Py_IS_NAN _isnan #define Py_IS_INFINITY(X) (!_finite(X) && !_isnan(X)) #define Py_IS_FINITE(X) _finite(X) +#define copysign _copysign +#define hypot _hypot #endif /* _MSC_VER */ @@ -396,7 +397,7 @@ /* Fairly standard from here! */ /* Define to 1 if you have the `copysign' function. */ -/* #define HAVE_COPYSIGN 1*/ +#define HAVE_COPYSIGN 1 /* Define to 1 if you have the `isinf' function. */ #define HAVE_ISINF 1 Deleted: python/trunk/Python/hypot.c ============================================================================== --- python/trunk/Python/hypot.c Sat Apr 19 01:13:07 2008 +++ (empty file) @@ -1,25 +0,0 @@ -/* hypot() replacement */ - -#include "Python.h" - -#ifndef HAVE_HYPOT -double hypot(double x, double y) -{ - double yx; - - x = fabs(x); - y = fabs(y); - if (x < y) { - double temp = x; - x = y; - y = temp; - } - if (x == 0.) - return 0.; - else { - yx = y/x; - return x*sqrt(1.+yx*yx); - } -} -#endif /* HAVE_HYPOT */ - Modified: python/trunk/configure ============================================================================== --- python/trunk/configure (original) +++ python/trunk/configure Sat Apr 19 01:13:07 2008 @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 61992 . +# From configure.in Revision: 62145 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for python 2.6. # From buildbot at python.org Sat Apr 19 01:21:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 23:21:25 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080418232125.A56D41E4014@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/359 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 01:27:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 23:27:46 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080418232747.1DC901E4007@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1291 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 01:31:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 18 Apr 2008 23:31:18 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080418233118.96C601E401B@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1158 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 01:31:34 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Sat, 19 Apr 2008 01:31:34 +0200 (CEST) Subject: [Python-checkins] r62381 - in python/trunk/Lib/test: regrtest.py test_frozen.py test_pkg.py test_pkgutil.py test_profile.py test_structmembers.py test_warnings.py Message-ID: <20080418233134.764891E4014@bag.python.org> Author: amaury.forgeotdarc Date: Sat Apr 19 01:31:33 2008 New Revision: 62381 Log: Some tests did not pass on repeated calls (regrtest -R::) Perform additional cleanup, mostly deleting from sys.modules, or clearing the warnings registry. Modified: python/trunk/Lib/test/regrtest.py python/trunk/Lib/test/test_frozen.py python/trunk/Lib/test/test_pkg.py python/trunk/Lib/test/test_pkgutil.py python/trunk/Lib/test/test_profile.py python/trunk/Lib/test/test_structmembers.py python/trunk/Lib/test/test_warnings.py Modified: python/trunk/Lib/test/regrtest.py ============================================================================== --- python/trunk/Lib/test/regrtest.py (original) +++ python/trunk/Lib/test/regrtest.py Sat Apr 19 01:31:33 2008 @@ -683,6 +683,11 @@ import struct, filecmp from distutils.dir_util import _path_created + # Clear the warnings registry, so they can be displayed again + for mod in sys.modules.values(): + if hasattr(mod, '__warningregistry__'): + del mod.__warningregistry__ + # Restore some original values. warnings.filters[:] = fs copy_reg.dispatch_table.clear() Modified: python/trunk/Lib/test/test_frozen.py ============================================================================== --- python/trunk/Lib/test/test_frozen.py (original) +++ python/trunk/Lib/test/test_frozen.py Sat Apr 19 01:31:33 2008 @@ -35,6 +35,10 @@ self.assertEquals(stdout.getvalue(), 'Hello world...\nHello world...\nHello world...\n') + del sys.modules['__hello__'] + del sys.modules['__phello__'] + del sys.modules['__phello__.spam'] + def test_main(): run_unittest(FrozenTests) Modified: python/trunk/Lib/test/test_pkg.py ============================================================================== --- python/trunk/Lib/test/test_pkg.py (original) +++ python/trunk/Lib/test/test_pkg.py Sat Apr 19 01:31:33 2008 @@ -46,12 +46,20 @@ def setUp(self): self.root = None + self.pkgname = None self.syspath = list(sys.path) def tearDown(self): sys.path[:] = self.syspath cleanout(self.root) + # delete all modules concerning the tested hiearchy + if self.pkgname: + modules = [name for name in sys.modules + if self.pkgname in name.split('.')] + for name in modules: + del sys.modules[name] + def run_code(self, code): exec(textwrap.dedent(code), globals(), {"self": self}) @@ -74,6 +82,8 @@ f.write('\n') f.close() self.root = root + # package name is the name of the first item + self.pkgname = descr[0][0] def test_1(self): hier = [("t1", None), ("t1 __init__"+os.extsep+"py", "")] @@ -223,8 +233,8 @@ def test_7(self): hier = [ - ("t7"+os.extsep+"py", ""), ("t7", None), + ("t7"+os.extsep+"py", ""), ("t7 __init__"+os.extsep+"py", ""), ("t7 sub"+os.extsep+"py", "raise RuntimeError('Shouldnt load sub.py')"), Modified: python/trunk/Lib/test/test_pkgutil.py ============================================================================== --- python/trunk/Lib/test/test_pkgutil.py (original) +++ python/trunk/Lib/test/test_pkgutil.py Sat Apr 19 01:31:33 2008 @@ -48,6 +48,8 @@ res2 = pkgutil.get_data(pkg, 'sub/res.txt') self.assertEqual(res2, RESOURCE_DATA) + del sys.modules[pkg] + def test_getdata_zipfile(self): zip = 'test_getdata_zipfile.zip' pkg = 'test_getdata_zipfile' @@ -74,6 +76,8 @@ self.assertEqual(res2, RESOURCE_DATA) del sys.path[0] + del sys.modules[pkg] + class PkgutilPEP302Tests(unittest.TestCase): class MyTestLoader(object): Modified: python/trunk/Lib/test/test_profile.py ============================================================================== --- python/trunk/Lib/test/test_profile.py (original) +++ python/trunk/Lib/test/test_profile.py Sat Apr 19 01:31:33 2008 @@ -21,8 +21,9 @@ def do_profiling(cls): results = [] prof = cls.profilerclass(timer, 0.001) + start_timer = timer() prof.runctx("testfunc()", globals(), locals()) - results.append(timer()) + results.append(timer() - start_timer) for methodname in cls.methodnames: s = StringIO() stats = pstats.Stats(prof, stream=s) @@ -33,7 +34,7 @@ def test_cprofile(self): results = self.do_profiling() - self.assertEqual(results[0], 43000) + self.assertEqual(results[0], 1000) for i, method in enumerate(self.methodnames): self.assertEqual(results[i+1], self.expected_output[method], "Stats.%s output for %s doesn't fit expectation!" % Modified: python/trunk/Lib/test/test_structmembers.py ============================================================================== --- python/trunk/Lib/test/test_structmembers.py (original) +++ python/trunk/Lib/test/test_structmembers.py Sat Apr 19 01:31:33 2008 @@ -101,12 +101,6 @@ def test_main(verbose=None): - # Obscure hack so that this test passes after reloads or repeated calls - # to test_main (regrtest -R). - if '__warningregistry__' in globals(): - del globals()['__warningregistry__'] - if hasattr(sys, '__warningregistry__'): - del sys.__warningregistry__ test_support.run_unittest(__name__) if __name__ == "__main__": Modified: python/trunk/Lib/test/test_warnings.py ============================================================================== --- python/trunk/Lib/test/test_warnings.py (original) +++ python/trunk/Lib/test/test_warnings.py Sat Apr 19 01:31:33 2008 @@ -391,6 +391,8 @@ def test_main(): + py_warnings.onceregistry.clear() + c_warnings.onceregistry.clear() test_support.run_unittest(CFilterTests, PyFilterTests, CWarnTests, From python-checkins at python.org Sat Apr 19 01:40:40 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 01:40:40 +0200 (CEST) Subject: [Python-checkins] r62382 - in python/trunk: PC/VC6/pythoncore.dsp PC/VS7.1/pythoncore.vcproj PC/VS8.0/pythoncore.vcproj PCbuild/pythoncore.vcproj Message-ID: <20080418234040.8FF181E401B@bag.python.org> Author: christian.heimes Date: Sat Apr 19 01:40:40 2008 New Revision: 62382 Log: Added new files to Windows project files More Windows related fixes are coming soon Modified: python/trunk/PC/VC6/pythoncore.dsp python/trunk/PC/VS7.1/pythoncore.vcproj python/trunk/PC/VS8.0/pythoncore.vcproj python/trunk/PCbuild/pythoncore.vcproj Modified: python/trunk/PC/VC6/pythoncore.dsp ============================================================================== --- python/trunk/PC/VC6/pythoncore.dsp (original) +++ python/trunk/PC/VC6/pythoncore.dsp Sat Apr 19 01:40:40 2008 @@ -583,6 +583,10 @@ # End Source File # Begin Source File +SOURCE=..\..\Python\pymath.c +# End Source File +# Begin Source File + SOURCE=..\..\Python\pystate.c # End Source File # Begin Source File Modified: python/trunk/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/trunk/PC/VS7.1/pythoncore.vcproj (original) +++ python/trunk/PC/VS7.1/pythoncore.vcproj Sat Apr 19 01:40:40 2008 @@ -716,6 +716,9 @@ RelativePath="..\..\Python\pyfpe.c"> + + + + Modified: python/trunk/PCbuild/pythoncore.vcproj ============================================================================== --- python/trunk/PCbuild/pythoncore.vcproj (original) +++ python/trunk/PCbuild/pythoncore.vcproj Sat Apr 19 01:40:40 2008 @@ -655,11 +655,11 @@ > + + @@ -1355,11 +1359,11 @@ > + + From python-checkins at python.org Sat Apr 19 01:49:11 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 01:49:11 +0200 (CEST) Subject: [Python-checkins] r62383 - python/trunk/Include/floatobject.h Message-ID: <20080418234911.AEDD21E4017@bag.python.org> Author: christian.heimes Date: Sat Apr 19 01:49:11 2008 New Revision: 62383 Log: Stupid me. Py_RETURN_NAN should actually return something ... Modified: python/trunk/Include/floatobject.h Modified: python/trunk/Include/floatobject.h ============================================================================== --- python/trunk/Include/floatobject.h (original) +++ python/trunk/Include/floatobject.h Sat Apr 19 01:49:11 2008 @@ -22,7 +22,7 @@ #define PyFloat_CheckExact(op) (Py_TYPE(op) == &PyFloat_Type) #ifdef Py_NAN -#define Py_RETURN_NAN PyFloat_FromDouble(Py_NAN) +#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) #endif #define Py_RETURN_INF(sign) do \ From buildbot at python.org Sat Apr 19 02:29:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 00:29:35 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080419002936.124841E4007@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/64 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_collections make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 02:31:42 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 02:31:42 +0200 (CEST) Subject: [Python-checkins] r62384 - in python/branches/py3k: Doc/library/cmath.rst Doc/library/math.rst Include/Python.h Include/complexobject.h Include/floatobject.h Include/pymath.h Include/pyport.h Lib/test/cmath_testcases.txt Lib/test/ieee754.txt Lib/test/test_cmath.py Lib/test/test_float.py Lib/test/test_math.py Makefile.pre.in Modules/cmathmodule.c Modules/mathmodule.c Objects/complexobject.c Objects/doubledigits.c Objects/floatobject.c Objects/longobject.c PC/VC6/pythoncore.dsp PC/VS7.1/pythoncore.vcproj PC/VS8.0/pythoncore.vcproj PC/pyconfig.h PCbuild/pythoncore.vcproj Python/hypot.c Python/pymath.c configure Message-ID: <20080419003142.F3D881E4009@bag.python.org> Author: christian.heimes Date: Sat Apr 19 02:31:39 2008 New Revision: 62384 Log: Merged revisions 62380,62382-62383 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62380 | christian.heimes | 2008-04-19 01:13:07 +0200 (Sat, 19 Apr 2008) | 3 lines I finally got the time to update and merge Mark's and my trunk-math branch. The patch is collaborated work of Mark Dickinson and me. It was mostly done a few months ago. The patch fixes a lot of loose ends and edge cases related to operations with NaN, INF, very small values and complex math. The patch also adds acosh, asinh, atanh, log1p and copysign to all platforms. Finally it fixes differences between platforms like different results or exceptions for edge cases. Have fun :) ........ r62382 | christian.heimes | 2008-04-19 01:40:40 +0200 (Sat, 19 Apr 2008) | 2 lines Added new files to Windows project files More Windows related fixes are coming soon ........ r62383 | christian.heimes | 2008-04-19 01:49:11 +0200 (Sat, 19 Apr 2008) | 1 line Stupid me. Py_RETURN_NAN should actually return something ... ........ Added: python/branches/py3k/Include/pymath.h - copied unchanged from r62380, /python/trunk/Include/pymath.h python/branches/py3k/Lib/test/cmath_testcases.txt - copied unchanged from r62380, /python/trunk/Lib/test/cmath_testcases.txt python/branches/py3k/Lib/test/ieee754.txt - copied unchanged from r62380, /python/trunk/Lib/test/ieee754.txt python/branches/py3k/Python/pymath.c - copied unchanged from r62380, /python/trunk/Python/pymath.c Removed: python/branches/py3k/Objects/doubledigits.c python/branches/py3k/Python/hypot.c Modified: python/branches/py3k/ (props changed) python/branches/py3k/Doc/library/cmath.rst python/branches/py3k/Doc/library/math.rst python/branches/py3k/Include/Python.h python/branches/py3k/Include/complexobject.h python/branches/py3k/Include/floatobject.h python/branches/py3k/Include/pyport.h python/branches/py3k/Lib/test/test_cmath.py python/branches/py3k/Lib/test/test_float.py python/branches/py3k/Lib/test/test_math.py python/branches/py3k/Makefile.pre.in python/branches/py3k/Modules/cmathmodule.c python/branches/py3k/Modules/mathmodule.c python/branches/py3k/Objects/complexobject.c python/branches/py3k/Objects/floatobject.c python/branches/py3k/Objects/longobject.c python/branches/py3k/PC/VC6/pythoncore.dsp python/branches/py3k/PC/VS7.1/pythoncore.vcproj python/branches/py3k/PC/VS8.0/pythoncore.vcproj python/branches/py3k/PC/pyconfig.h python/branches/py3k/PCbuild/pythoncore.vcproj python/branches/py3k/configure Modified: python/branches/py3k/Doc/library/cmath.rst ============================================================================== --- python/branches/py3k/Doc/library/cmath.rst (original) +++ python/branches/py3k/Doc/library/cmath.rst Sat Apr 19 02:31:39 2008 @@ -14,8 +14,81 @@ floating-point number, respectively, and the function is then applied to the result of the conversion. -The functions are: +.. note:: + On platforms with hardware and system-level support for signed + zeros, functions involving branch cuts are continuous on *both* + sides of the branch cut: the sign of the zero distinguishes one + side of the branch cut from the other. On platforms that do not + support signed zeros the continuity is as specified below. + + +Complex coordinates +------------------- + +Complex numbers can be expressed by two important coordinate systems. +Python's :class:`complex` type uses rectangular coordinates where a number +on the complex plain is defined by two floats, the real part and the imaginary +part. + +Definition:: + + z = x + 1j * y + + x := real(z) + y := imag(z) + +In engineering the polar coordinate system is popular for complex numbers. In +polar coordinates a complex number is defined by the radius *r* and the phase +angle *?*. The radius *r* is the absolute value of the complex, which can be +viewed as distance from (0, 0). The radius *r* is always 0 or a positive float. +The phase angle *?* is the counter clockwise angle from the positive x axis, +e.g. *1* has the angle *0*, *1j* has the angle *?/2* and *-1* the angle *-?*. + +.. note:: + While :func:`phase` and func:`polar` return *+?* for a negative real they + may return *-?* for a complex with a very small negative imaginary + part, e.g. *-1-1E-300j*. + + +Definition:: + + z = r * exp(1j * ?) + z = r * cis(?) + + r := abs(z) := sqrt(real(z)**2 + imag(z)**2) + phi := phase(z) := atan2(imag(z), real(z)) + cis(?) := cos(?) + 1j * sin(?) + + +.. function:: phase(x) + + Return phase, also known as the argument, of a complex. + + .. versionadded:: 2.6 + + +.. function:: polar(x) + + Convert a :class:`complex` from rectangular coordinates to polar + coordinates. The function returns a tuple with the two elements + *r* and *phi*. *r* is the distance from 0 and *phi* the phase + angle. + + .. versionadded:: 2.6 + + +.. function:: rect(r, phi) + + Convert from polar coordinates to rectangular coordinates and return + a :class:`complex`. + + .. versionadded:: 2.6 + + + +cmath functions +--------------- .. function:: acos(x) @@ -37,30 +110,35 @@ .. function:: asinh(x) - Return the hyperbolic arc sine of *x*. There are two branch cuts, extending - left from ``?1j`` to ``??j``, both continuous from above. These branch cuts - should be considered a bug to be corrected in a future release. The correct - branch cuts should extend along the imaginary axis, one from ``1j`` up to - ``?j`` and continuous from the right, and one from ``-1j`` down to ``-?j`` - and continuous from the left. + Return the hyperbolic arc sine of *x*. There are two branch cuts: + One extends from ``1j`` along the imaginary axis to ``?j``, + continuous from the right. The other extends from ``-1j`` along + the imaginary axis to ``-?j``, continuous from the left. + + .. versionchanged:: 2.6 + branch cuts moved to match those recommended by the C99 standard .. function:: atan(x) Return the arc tangent of *x*. There are two branch cuts: One extends from - ``1j`` along the imaginary axis to ``?j``, continuous from the left. The + ``1j`` along the imaginary axis to ``?j``, continuous from the right. The other extends from ``-1j`` along the imaginary axis to ``-?j``, continuous - from the left. (This should probably be changed so the upper cut becomes - continuous from the other side.) + from the left. + + .. versionchanged:: 2.6 + direction of continuity of upper cut reversed .. function:: atanh(x) Return the hyperbolic arc tangent of *x*. There are two branch cuts: One - extends from ``1`` along the real axis to ``?``, continuous from above. The + extends from ``1`` along the real axis to ``?``, continuous from below. The other extends from ``-1`` along the real axis to ``-?``, continuous from - above. (This should probably be changed so the right cut becomes continuous - from the other side.) + above. + + .. versionchanged:: 2.6 + direction of continuity of right cut reversed .. function:: cos(x) @@ -78,6 +156,21 @@ Return the exponential value ``e**x``. +.. function:: isinf(x) + + Return *True* if the real or the imaginary part of x is positive + or negative infinity. + + .. versionadded:: 2.6 + + +.. function:: isnan(x) + + Return *True* if the real or imaginary part of x is not a number (NaN). + + .. versionadded:: 2.6 + + .. function:: log(x[, base]) Returns the logarithm of *x* to the given *base*. If the *base* is not @@ -151,3 +244,4 @@ nothing's sign bit. In Iserles, A., and Powell, M. (eds.), The state of the art in numerical analysis. Clarendon Press (1987) pp165-211. + Modified: python/branches/py3k/Doc/library/math.rst ============================================================================== --- python/branches/py3k/Doc/library/math.rst (original) +++ python/branches/py3k/Doc/library/math.rst Sat Apr 19 02:31:39 2008 @@ -128,6 +128,14 @@ return the natural logarithm of *x* (that is, the logarithm to base *e*). +.. function:: log1p(x) + + Return the natural logarithm of *1+x* (base *e*). The + result is calculated in a way which is accurate for *x* near zero. + + .. versionadded:: 2.6 + + .. function:: log10(x) Return the base-10 logarithm of *x*. @@ -135,7 +143,11 @@ .. function:: pow(x, y) - Return ``x**y``. + Return ``x**y``. ``1.0**y`` returns *1.0*, even for ``1.0**nan``. ``0**y`` + returns *0.* for all positive *y*, *0* and *NAN*. + + .. versionchanged:: 2.6 + The outcome of ``1**nan`` and ``0**nan`` was undefined. .. function:: sqrt(x) @@ -186,6 +198,13 @@ Return the sine of *x* radians. +.. function:: asinh(x) + + Return the inverse hyperbolic sine of *x*, in radians. + + .. versionadded:: 2.6 + + .. function:: tan(x) Return the tangent of *x* radians. @@ -210,6 +229,13 @@ Return the hyperbolic cosine of *x*. +.. function:: acosh(x) + + Return the inverse hyperbolic cosine of *x*, in radians. + + .. versionadded:: 2.6 + + .. function:: sinh(x) Return the hyperbolic sine of *x*. @@ -219,6 +245,14 @@ Return the hyperbolic tangent of *x*. + +.. function:: atanh(x) + + Return the inverse hyperbolic tangent of *x*, in radians. + + .. versionadded:: 2.6 + + The module also defines two mathematical constants: @@ -231,6 +265,7 @@ The mathematical constant *e*. + .. note:: The :mod:`math` module consists mostly of thin wrappers around the platform C @@ -244,9 +279,17 @@ :exc:`OverflowError` isn't defined, and in cases where ``math.log(0)`` raises :exc:`OverflowError`, ``math.log(0L)`` may raise :exc:`ValueError` instead. + All functions return a quite *NaN* if at least one of the args is *NaN*. + Signaling *NaN*s raise an exception. The exception type still depends on the + platform and libm implementation. It's usually :exc:`ValueError` for *EDOM* + and :exc:`OverflowError` for errno *ERANGE*. + + ..versionchanged:: 2.6 + In earlier versions of Python the outcome of an operation with NaN as + input depended on platform and libm implementation. + .. seealso:: Module :mod:`cmath` Complex number versions of many of these functions. - Modified: python/branches/py3k/Include/Python.h ============================================================================== --- python/branches/py3k/Include/Python.h (original) +++ python/branches/py3k/Include/Python.h Sat Apr 19 02:31:39 2008 @@ -57,6 +57,7 @@ #if defined(PYMALLOC_DEBUG) && !defined(WITH_PYMALLOC) #error "PYMALLOC_DEBUG requires WITH_PYMALLOC" #endif +#include "pymath.h" #include "pymem.h" #include "object.h" Modified: python/branches/py3k/Include/complexobject.h ============================================================================== --- python/branches/py3k/Include/complexobject.h (original) +++ python/branches/py3k/Include/complexobject.h Sat Apr 19 02:31:39 2008 @@ -19,6 +19,7 @@ #define c_prod _Py_c_prod #define c_quot _Py_c_quot #define c_pow _Py_c_pow +#define c_abs _Py_c_abs PyAPI_FUNC(Py_complex) c_sum(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_diff(Py_complex, Py_complex); @@ -26,6 +27,7 @@ PyAPI_FUNC(Py_complex) c_prod(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_quot(Py_complex, Py_complex); PyAPI_FUNC(Py_complex) c_pow(Py_complex, Py_complex); +PyAPI_FUNC(double) c_abs(Py_complex); /* Complex object interface */ Modified: python/branches/py3k/Include/floatobject.h ============================================================================== --- python/branches/py3k/Include/floatobject.h (original) +++ python/branches/py3k/Include/floatobject.h Sat Apr 19 02:31:39 2008 @@ -21,6 +21,17 @@ #define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type) #define PyFloat_CheckExact(op) (Py_TYPE(op) == &PyFloat_Type) +#ifdef Py_NAN +#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) +#endif + +#define Py_RETURN_INF(sign) do \ + if (copysign(1., sign) == 1.) { \ + return PyFloat_FromDouble(Py_HUGE_VAL); \ + } else { \ + return PyFloat_FromDouble(-Py_HUGE_VAL); \ + } while(0) + PyAPI_FUNC(double) PyFloat_GetMax(void); PyAPI_FUNC(double) PyFloat_GetMin(void); PyAPI_FUNC(PyObject *) PyFloat_GetInfo(void); Modified: python/branches/py3k/Include/pyport.h ============================================================================== --- python/branches/py3k/Include/pyport.h (original) +++ python/branches/py3k/Include/pyport.h Sat Apr 19 02:31:39 2008 @@ -336,123 +336,6 @@ #define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) (NARROW)(VALUE) #endif -/* High precision defintion of pi and e (Euler) - * The values are taken from libc6's math.h. - */ -#ifndef Py_MATH_PIl -#define Py_MATH_PIl 3.1415926535897932384626433832795029L -#endif -#ifndef Py_MATH_PI -#define Py_MATH_PI 3.14159265358979323846 -#endif - -#ifndef Py_MATH_El -#define Py_MATH_El 2.7182818284590452353602874713526625L -#endif - -#ifndef Py_MATH_E -#define Py_MATH_E 2.7182818284590452354 -#endif - -/* Py_IS_NAN(X) - * Return 1 if float or double arg is a NaN, else 0. - * Caution: - * X is evaluated more than once. - * This may not work on all platforms. Each platform has *some* - * way to spell this, though -- override in pyconfig.h if you have - * a platform where it doesn't work. - */ -#ifndef Py_IS_NAN -#ifdef HAVE_ISNAN -#define Py_IS_NAN(X) isnan(X) -#else -#define Py_IS_NAN(X) ((X) != (X)) -#endif -#endif - -/* Py_IS_INFINITY(X) - * Return 1 if float or double arg is an infinity, else 0. - * Caution: - * X is evaluated more than once. - * This implementation may set the underflow flag if |X| is very small; - * it really can't be implemented correctly (& easily) before C99. - * Override in pyconfig.h if you have a better spelling on your platform. - */ -#ifndef Py_IS_INFINITY -#ifdef HAVE_ISINF -#define Py_IS_INFINITY(X) isinf(X) -#else -#define Py_IS_INFINITY(X) ((X) && (X)*0.5 == (X)) -#endif -#endif - -/* Py_IS_FINITE(X) - * Return 1 if float or double arg is neither infinite nor NAN, else 0. - * Some compilers (e.g. VisualStudio) have intrisics for this, so a special - * macro for this particular test is useful - */ -#ifndef Py_IS_FINITE -#ifdef HAVE_FINITE -#define Py_IS_FINITE(X) finite(X) -#else -#define Py_IS_FINITE(X) (!Py_IS_INFINITY(X) && !Py_IS_NAN(X)) -#endif -#endif - -/* HUGE_VAL is supposed to expand to a positive double infinity. Python - * uses Py_HUGE_VAL instead because some platforms are broken in this - * respect. We used to embed code in pyport.h to try to worm around that, - * but different platforms are broken in conflicting ways. If you're on - * a platform where HUGE_VAL is defined incorrectly, fiddle your Python - * config to #define Py_HUGE_VAL to something that works on your platform. - */ -#ifndef Py_HUGE_VAL -#define Py_HUGE_VAL HUGE_VAL -#endif - -/* Py_NAN - * A value that evaluates to a NaN. On IEEE 754 platforms INF*0 or - * INF/INF works. Define Py_NO_NAN in pyconfig.h if your platform - * doesn't support NaNs. - */ -#if !defined(Py_NAN) && !defined(Py_NO_NAN) -#define Py_NAN (Py_HUGE_VAL * 0.) -#endif - -/* Py_OVERFLOWED(X) - * Return 1 iff a libm function overflowed. Set errno to 0 before calling - * a libm function, and invoke this macro after, passing the function - * result. - * Caution: - * This isn't reliable. C99 no longer requires libm to set errno under - * any exceptional condition, but does require +- HUGE_VAL return - * values on overflow. A 754 box *probably* maps HUGE_VAL to a - * double infinity, and we're cool if that's so, unless the input - * was an infinity and an infinity is the expected result. A C89 - * system sets errno to ERANGE, so we check for that too. We're - * out of luck if a C99 754 box doesn't map HUGE_VAL to +Inf, or - * if the returned result is a NaN, or if a C89 box returns HUGE_VAL - * in non-overflow cases. - * X is evaluated more than once. - * Some platforms have better way to spell this, so expect some #ifdef'ery. - * - * OpenBSD uses 'isinf()' because a compiler bug on that platform causes - * the longer macro version to be mis-compiled. This isn't optimal, and - * should be removed once a newer compiler is available on that platform. - * The system that had the failure was running OpenBSD 3.2 on Intel, with - * gcc 2.95.3. - * - * According to Tim's checkin, the FreeBSD systems use isinf() to work - * around a FPE bug on that platform. - */ -#if defined(__FreeBSD__) || defined(__OpenBSD__) -#define Py_OVERFLOWED(X) isinf(X) -#else -#define Py_OVERFLOWED(X) ((X) != 0.0 && (errno == ERANGE || \ - (X) == Py_HUGE_VAL || \ - (X) == -Py_HUGE_VAL)) -#endif - /* Py_SET_ERRNO_ON_MATH_ERROR(x) * If a libm function did not set errno, but it looks like the result * overflowed or not-a-number, set errno to ERANGE or EDOM. Set errno @@ -559,15 +442,6 @@ #endif /* defined(HAVE_OPENPTY) || defined(HAVE_FORKPTY) */ -/************************ - * WRAPPER FOR * - ************************/ - -#ifndef HAVE_HYPOT -extern double hypot(double, double); -#endif - - /* On 4.4BSD-descendants, ctype functions serves the whole range of * wchar_t character set rather than single byte code points only. * This characteristic can break some operations of string object Modified: python/branches/py3k/Lib/test/test_cmath.py ============================================================================== --- python/branches/py3k/Lib/test/test_cmath.py (original) +++ python/branches/py3k/Lib/test/test_cmath.py Sat Apr 19 02:31:39 2008 @@ -1,6 +1,81 @@ from test.test_support import run_unittest +from test.test_math import parse_testfile, test_file import unittest +import os, sys import cmath, math +from cmath import phase, polar, rect, pi + +INF = float('inf') +NAN = float('nan') + +complex_zeros = [complex(x, y) for x in [0.0, -0.0] for y in [0.0, -0.0]] +complex_infinities = [complex(x, y) for x, y in [ + (INF, 0.0), # 1st quadrant + (INF, 2.3), + (INF, INF), + (2.3, INF), + (0.0, INF), + (-0.0, INF), # 2nd quadrant + (-2.3, INF), + (-INF, INF), + (-INF, 2.3), + (-INF, 0.0), + (-INF, -0.0), # 3rd quadrant + (-INF, -2.3), + (-INF, -INF), + (-2.3, -INF), + (-0.0, -INF), + (0.0, -INF), # 4th quadrant + (2.3, -INF), + (INF, -INF), + (INF, -2.3), + (INF, -0.0) + ]] +complex_nans = [complex(x, y) for x, y in [ + (NAN, -INF), + (NAN, -2.3), + (NAN, -0.0), + (NAN, 0.0), + (NAN, 2.3), + (NAN, INF), + (-INF, NAN), + (-2.3, NAN), + (-0.0, NAN), + (0.0, NAN), + (2.3, NAN), + (INF, NAN) + ]] + +def almostEqualF(a, b, rel_err=2e-15, abs_err = 5e-323): + """Determine whether floating-point values a and b are equal to within + a (small) rounding error. The default values for rel_err and + abs_err are chosen to be suitable for platforms where a float is + represented by an IEEE 754 double. They allow an error of between + 9 and 19 ulps.""" + + # special values testing + if math.isnan(a): + return math.isnan(b) + if math.isinf(a): + return a == b + + # if both a and b are zero, check whether they have the same sign + # (in theory there are examples where it would be legitimate for a + # and b to have opposite signs; in practice these hardly ever + # occur). + if not a and not b: + return math.copysign(1., a) == math.copysign(1., b) + + # if a-b overflows, or b is infinite, return False. Again, in + # theory there are examples where a is within a few ulps of the + # max representable float, and then b could legitimately be + # infinite. In practice these examples are rare. + try: + absolute_error = abs(b-a) + except OverflowError: + return False + else: + return absolute_error <= max(abs_err, rel_err * abs(a)) class CMathTests(unittest.TestCase): # list of all functions in cmath @@ -12,25 +87,51 @@ test_functions.append(lambda x : cmath.log(x, 1729. + 0j)) test_functions.append(lambda x : cmath.log(14.-27j, x)) - def cAssertAlmostEqual(self, a, b, rel_eps = 1e-10, abs_eps = 1e-100): - """Check that two complex numbers are almost equal.""" - # the two complex numbers are considered almost equal if - # either the relative error is <= rel_eps or the absolute error - # is tiny, <= abs_eps. - if a == b == 0: - return - absolute_error = abs(a-b) - relative_error = absolute_error/max(abs(a), abs(b)) - if relative_error > rel_eps and absolute_error > abs_eps: - self.fail("%s and %s are not almost equal" % (a, b)) + def setUp(self): + self.test_values = open(test_file) + + def tearDown(self): + self.test_values.close() + + def rAssertAlmostEqual(self, a, b, rel_err = 2e-15, abs_err = 5e-323): + """Check that two floating-point numbers are almost equal.""" + + # special values testing + if math.isnan(a): + if math.isnan(b): + return + self.fail("%s should be nan" % repr(b)) + + if math.isinf(a): + if a == b: + return + self.fail("finite result where infinity excpected: " + "expected %s, got %s" % (repr(a), repr(b))) + + if not a and not b: + if math.atan2(a, -1.) != math.atan2(b, -1.): + self.fail("zero has wrong sign: expected %s, got %s" % + (repr(a), repr(b))) + + # test passes if either the absolute error or the relative + # error is sufficiently small. The defaults amount to an + # error of between 9 ulps and 19 ulps on an IEEE-754 compliant + # machine. + + try: + absolute_error = abs(b-a) + except OverflowError: + pass + else: + if absolute_error <= max(abs_err, rel_err * abs(a)): + return + self.fail("%s and %s are not sufficiently close" % (repr(a), repr(b))) def test_constants(self): e_expected = 2.71828182845904523536 pi_expected = 3.14159265358979323846 - self.assertAlmostEqual(cmath.pi, pi_expected, places=9, - msg="cmath.pi is %s; should be %s" % (cmath.pi, pi_expected)) - self.assertAlmostEqual(cmath.e, e_expected, places=9, - msg="cmath.e is %s; should be %s" % (cmath.e, e_expected)) + self.assertAlmostEqual(cmath.pi, pi_expected) + self.assertAlmostEqual(cmath.e, e_expected) def test_user_object(self): # Test automatic calling of __complex__ and __float__ by cmath @@ -109,13 +210,13 @@ for f in self.test_functions: # usual usage - self.cAssertAlmostEqual(f(MyComplex(cx_arg)), f(cx_arg)) - self.cAssertAlmostEqual(f(MyComplexOS(cx_arg)), f(cx_arg)) + self.assertEqual(f(MyComplex(cx_arg)), f(cx_arg)) + self.assertEqual(f(MyComplexOS(cx_arg)), f(cx_arg)) # other combinations of __float__ and __complex__ - self.cAssertAlmostEqual(f(FloatAndComplex()), f(cx_arg)) - self.cAssertAlmostEqual(f(FloatAndComplexOS()), f(cx_arg)) - self.cAssertAlmostEqual(f(JustFloat()), f(flt_arg)) - self.cAssertAlmostEqual(f(JustFloatOS()), f(flt_arg)) + self.assertEqual(f(FloatAndComplex()), f(cx_arg)) + self.assertEqual(f(FloatAndComplexOS()), f(cx_arg)) + self.assertEqual(f(JustFloat()), f(flt_arg)) + self.assertEqual(f(JustFloatOS()), f(flt_arg)) # TypeError should be raised for classes not providing # either __complex__ or __float__, even if they provide # __int__, __long__ or __index__. An old-style class @@ -138,7 +239,7 @@ # functions, by virtue of providing a __float__ method for f in self.test_functions: for arg in [2, 2.]: - self.cAssertAlmostEqual(f(arg), f(arg.__float__())) + self.assertEqual(f(arg), f(arg.__float__())) # but strings should give a TypeError for f in self.test_functions: @@ -182,12 +283,201 @@ float_fn = getattr(math, fn) complex_fn = getattr(cmath, fn) for v in values: - self.cAssertAlmostEqual(float_fn(v), complex_fn(v)) + z = complex_fn(v) + self.rAssertAlmostEqual(float_fn(v), z.real) + self.assertEqual(0., z.imag) # test two-argument version of log with various bases for base in [0.5, 2., 10.]: for v in positive: - self.cAssertAlmostEqual(cmath.log(v, base), math.log(v, base)) + z = cmath.log(v, base) + self.rAssertAlmostEqual(math.log(v, base), z.real) + self.assertEqual(0., z.imag) + + def test_specific_values(self): + if not float.__getformat__("double").startswith("IEEE"): + return + + def rect_complex(z): + """Wrapped version of rect that accepts a complex number instead of + two float arguments.""" + return cmath.rect(z.real, z.imag) + + def polar_complex(z): + """Wrapped version of polar that returns a complex number instead of + two floats.""" + return complex(*polar(z)) + + for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file): + arg = complex(ar, ai) + expected = complex(er, ei) + if fn == 'rect': + function = rect_complex + elif fn == 'polar': + function = polar_complex + else: + function = getattr(cmath, fn) + if 'divide-by-zero' in flags or 'invalid' in flags: + try: + actual = function(arg) + except ValueError: + continue + else: + test_str = "%s: %s(complex(%r, %r))" % (id, fn, ar, ai) + self.fail('ValueError not raised in test %s' % test_str) + + if 'overflow' in flags: + try: + actual = function(arg) + except OverflowError: + continue + else: + test_str = "%s: %s(complex(%r, %r))" % (id, fn, ar, ai) + self.fail('OverflowError not raised in test %s' % test_str) + + actual = function(arg) + + if 'ignore-real-sign' in flags: + actual = complex(abs(actual.real), actual.imag) + expected = complex(abs(expected.real), expected.imag) + if 'ignore-imag-sign' in flags: + actual = complex(actual.real, abs(actual.imag)) + expected = complex(expected.real, abs(expected.imag)) + + # for the real part of the log function, we allow an + # absolute error of up to 2e-15. + if fn in ('log', 'log10'): + real_abs_err = 2e-15 + else: + real_abs_err = 5e-323 + + if not (almostEqualF(expected.real, actual.real, + abs_err = real_abs_err) and + almostEqualF(expected.imag, actual.imag)): + error_message = ( + "%s: %s(complex(%r, %r))\n" % (id, fn, ar, ai) + + "Expected: complex(%r, %r)\n" % + (expected.real, expected.imag) + + "Received: complex(%r, %r)\n" % + (actual.real, actual.imag) + + "Received value insufficiently close to expected value.") + self.fail(error_message) + + def assertCISEqual(self, a, b): + eps = 1E-7 + if abs(a[0] - b[0]) > eps or abs(a[1] - b[1]) > eps: + self.fail((a ,b)) + + def test_polar(self): + self.assertCISEqual(polar(0), (0., 0.)) + self.assertCISEqual(polar(1.), (1., 0.)) + self.assertCISEqual(polar(-1.), (1., pi)) + self.assertCISEqual(polar(1j), (1., pi/2)) + self.assertCISEqual(polar(-1j), (1., -pi/2)) + + def test_phase(self): + self.assertAlmostEqual(phase(0), 0.) + self.assertAlmostEqual(phase(1.), 0.) + self.assertAlmostEqual(phase(-1.), pi) + self.assertAlmostEqual(phase(-1.+1E-300j), pi) + self.assertAlmostEqual(phase(-1.-1E-300j), -pi) + self.assertAlmostEqual(phase(1j), pi/2) + self.assertAlmostEqual(phase(-1j), -pi/2) + + # zeros + self.assertEqual(phase(complex(0.0, 0.0)), 0.0) + self.assertEqual(phase(complex(0.0, -0.0)), -0.0) + self.assertEqual(phase(complex(-0.0, 0.0)), pi) + self.assertEqual(phase(complex(-0.0, -0.0)), -pi) + + # infinities + self.assertAlmostEqual(phase(complex(-INF, -0.0)), -pi) + self.assertAlmostEqual(phase(complex(-INF, -2.3)), -pi) + self.assertAlmostEqual(phase(complex(-INF, -INF)), -0.75*pi) + self.assertAlmostEqual(phase(complex(-2.3, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(-0.0, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(0.0, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(2.3, -INF)), -pi/2) + self.assertAlmostEqual(phase(complex(INF, -INF)), -pi/4) + self.assertEqual(phase(complex(INF, -2.3)), -0.0) + self.assertEqual(phase(complex(INF, -0.0)), -0.0) + self.assertEqual(phase(complex(INF, 0.0)), 0.0) + self.assertEqual(phase(complex(INF, 2.3)), 0.0) + self.assertAlmostEqual(phase(complex(INF, INF)), pi/4) + self.assertAlmostEqual(phase(complex(2.3, INF)), pi/2) + self.assertAlmostEqual(phase(complex(0.0, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-0.0, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-2.3, INF)), pi/2) + self.assertAlmostEqual(phase(complex(-INF, INF)), 0.75*pi) + self.assertAlmostEqual(phase(complex(-INF, 2.3)), pi) + self.assertAlmostEqual(phase(complex(-INF, 0.0)), pi) + + # real or imaginary part NaN + for z in complex_nans: + self.assert_(math.isnan(phase(z))) + + def test_abs(self): + # zeros + for z in complex_zeros: + self.assertEqual(abs(z), 0.0) + + # infinities + for z in complex_infinities: + self.assertEqual(abs(z), INF) + + # real or imaginary part NaN + self.assertEqual(abs(complex(NAN, -INF)), INF) + self.assert_(math.isnan(abs(complex(NAN, -2.3)))) + self.assert_(math.isnan(abs(complex(NAN, -0.0)))) + self.assert_(math.isnan(abs(complex(NAN, 0.0)))) + self.assert_(math.isnan(abs(complex(NAN, 2.3)))) + self.assertEqual(abs(complex(NAN, INF)), INF) + self.assertEqual(abs(complex(-INF, NAN)), INF) + self.assert_(math.isnan(abs(complex(-2.3, NAN)))) + self.assert_(math.isnan(abs(complex(-0.0, NAN)))) + self.assert_(math.isnan(abs(complex(0.0, NAN)))) + self.assert_(math.isnan(abs(complex(2.3, NAN)))) + self.assertEqual(abs(complex(INF, NAN)), INF) + self.assert_(math.isnan(abs(complex(NAN, NAN)))) + + # result overflows + if float.__getformat__("double").startswith("IEEE"): + self.assertRaises(OverflowError, abs, complex(1.4e308, 1.4e308)) + + def assertCEqual(self, a, b): + eps = 1E-7 + if abs(a.real - b[0]) > eps or abs(a.imag - b[1]) > eps: + self.fail((a ,b)) + + def test_rect(self): + self.assertCEqual(rect(0, 0), (0, 0)) + self.assertCEqual(rect(1, 0), (1., 0)) + self.assertCEqual(rect(1, -pi), (-1., 0)) + self.assertCEqual(rect(1, pi/2), (0, 1.)) + self.assertCEqual(rect(1, -pi/2), (0, -1.)) + + def test_isnan(self): + self.failIf(cmath.isnan(1)) + self.failIf(cmath.isnan(1j)) + self.failIf(cmath.isnan(INF)) + self.assert_(cmath.isnan(NAN)) + self.assert_(cmath.isnan(complex(NAN, 0))) + self.assert_(cmath.isnan(complex(0, NAN))) + self.assert_(cmath.isnan(complex(NAN, NAN))) + self.assert_(cmath.isnan(complex(NAN, INF))) + self.assert_(cmath.isnan(complex(INF, NAN))) + + def test_isinf(self): + self.failIf(cmath.isinf(1)) + self.failIf(cmath.isinf(1j)) + self.failIf(cmath.isinf(NAN)) + self.assert_(cmath.isinf(INF)) + self.assert_(cmath.isinf(complex(INF, 0))) + self.assert_(cmath.isinf(complex(0, INF))) + self.assert_(cmath.isinf(complex(INF, INF))) + self.assert_(cmath.isinf(complex(NAN, INF))) + self.assert_(cmath.isinf(complex(INF, NAN))) + def test_main(): run_unittest(CMathTests) Modified: python/branches/py3k/Lib/test/test_float.py ============================================================================== --- python/branches/py3k/Lib/test/test_float.py (original) +++ python/branches/py3k/Lib/test/test_float.py Sat Apr 19 02:31:39 2008 @@ -2,12 +2,12 @@ import unittest, struct import os from test import test_support +import math +from math import isinf, isnan +import operator -def isinf(x): - return x * 0.5 == x - -def isnan(x): - return x != x +INF = float("inf") +NAN = float("nan") class FormatFunctionsTestCase(unittest.TestCase): @@ -239,6 +239,17 @@ self.assertEqual(str(1e300 * 1e300 * 0), "nan") self.assertEqual(str(-1e300 * 1e300 * 0), "nan") + def notest_float_nan(self): + self.assert_(NAN.is_nan()) + self.failIf(INF.is_nan()) + self.failIf((0.).is_nan()) + + def notest_float_inf(self): + self.assert_(INF.is_inf()) + self.failIf(NAN.is_inf()) + self.failIf((0.).is_inf()) + + def test_main(): test_support.run_unittest( FormatFunctionsTestCase, Modified: python/branches/py3k/Lib/test/test_math.py ============================================================================== --- python/branches/py3k/Lib/test/test_math.py (original) +++ python/branches/py3k/Lib/test/test_math.py Sat Apr 19 02:31:39 2008 @@ -4,9 +4,45 @@ from test.test_support import run_unittest, verbose import unittest import math +import os +import sys -seps='1e-05' -eps = eval(seps) +eps = 1E-05 +NAN = float('nan') +INF = float('inf') +NINF = float('-inf') + +# locate file with test values +if __name__ == '__main__': + file = sys.argv[0] +else: + file = __file__ +test_dir = os.path.dirname(file) or os.curdir +test_file = os.path.join(test_dir, 'cmath_testcases.txt') + +def parse_testfile(fname): + """Parse a file with test values + + Empty lines or lines starting with -- are ignored + yields id, fn, arg_real, arg_imag, exp_real, exp_imag + """ + with open(fname) as fp: + for line in fp: + # skip comment lines and blank lines + if line.startswith('--') or not line.strip(): + continue + + lhs, rhs = line.split('->') + id, fn, arg_real, arg_imag = lhs.split() + rhs_pieces = rhs.split() + exp_real, exp_imag = rhs_pieces[0], rhs_pieces[1] + flags = rhs_pieces[2:] + + yield (id, fn, + float(arg_real), float(arg_imag), + float(exp_real), float(exp_imag), + flags + ) class MathTests(unittest.TestCase): @@ -28,18 +64,57 @@ self.ftest('acos(-1)', math.acos(-1), math.pi) self.ftest('acos(0)', math.acos(0), math.pi/2) self.ftest('acos(1)', math.acos(1), 0) + self.assertRaises(ValueError, math.acos, INF) + self.assertRaises(ValueError, math.acos, NINF) + self.assert_(math.isnan(math.acos(NAN))) + + def testAcosh(self): + self.assertRaises(TypeError, math.acosh) + self.ftest('acosh(1)', math.acosh(1), 0) + self.ftest('acosh(2)', math.acosh(2), 1.3169578969248168) + self.assertRaises(ValueError, math.acosh, 0) + self.assertRaises(ValueError, math.acosh, -1) + self.assertEquals(math.acosh(INF), INF) + self.assertRaises(ValueError, math.acosh, NINF) + self.assert_(math.isnan(math.acosh(NAN))) def testAsin(self): self.assertRaises(TypeError, math.asin) self.ftest('asin(-1)', math.asin(-1), -math.pi/2) self.ftest('asin(0)', math.asin(0), 0) self.ftest('asin(1)', math.asin(1), math.pi/2) + self.assertRaises(ValueError, math.asin, INF) + self.assertRaises(ValueError, math.asin, NINF) + self.assert_(math.isnan(math.asin(NAN))) + + def testAsinh(self): + self.assertRaises(TypeError, math.asinh) + self.ftest('asinh(0)', math.asinh(0), 0) + self.ftest('asinh(1)', math.asinh(1), 0.88137358701954305) + self.ftest('asinh(-1)', math.asinh(-1), -0.88137358701954305) + self.assertEquals(math.asinh(INF), INF) + self.assertEquals(math.asinh(NINF), NINF) + self.assert_(math.isnan(math.asinh(NAN))) def testAtan(self): self.assertRaises(TypeError, math.atan) self.ftest('atan(-1)', math.atan(-1), -math.pi/4) self.ftest('atan(0)', math.atan(0), 0) self.ftest('atan(1)', math.atan(1), math.pi/4) + self.ftest('atan(inf)', math.atan(INF), math.pi/2) + self.ftest('atan(-inf)', math.atan(-INF), -math.pi/2) + self.assert_(math.isnan(math.atan(NAN))) + + def testAtanh(self): + self.assertRaises(TypeError, math.atan) + self.ftest('atanh(0)', math.atanh(0), 0) + self.ftest('atanh(0.5)', math.atanh(0.5), 0.54930614433405489) + self.ftest('atanh(-0.5)', math.atanh(-0.5), -0.54930614433405489) + self.assertRaises(ValueError, math.atanh, 1) + self.assertRaises(ValueError, math.atanh, -1) + self.assertRaises(ValueError, math.atanh, INF) + self.assertRaises(ValueError, math.atanh, NINF) + self.assert_(math.isnan(math.atanh(NAN))) def testAtan2(self): self.assertRaises(TypeError, math.atan2) @@ -58,6 +133,9 @@ self.ftest('ceil(-0.5)', math.ceil(-0.5), 0) self.ftest('ceil(-1.0)', math.ceil(-1.0), -1) self.ftest('ceil(-1.5)', math.ceil(-1.5), -1) + #self.assertEquals(math.ceil(INF), INF) + #self.assertEquals(math.ceil(NINF), NINF) + #self.assert_(math.isnan(math.ceil(NAN))) class TestCeil: def __ceil__(self): @@ -72,17 +150,55 @@ self.assertRaises(TypeError, math.ceil, t) self.assertRaises(TypeError, math.ceil, t, 0) + if float.__getformat__("double").startswith("IEEE"): + def testCopysign(self): + self.assertRaises(TypeError, math.copysign) + # copysign should let us distinguish signs of zeros + self.assertEquals(copysign(1., 0.), 1.) + self.assertEquals(copysign(1., -0.), -1.) + self.assertEquals(copysign(INF, 0.), INF) + self.assertEquals(copysign(INF, -0.), NINF) + self.assertEquals(copysign(NINF, 0.), INF) + self.assertEquals(copysign(NINF, -0.), NINF) + # and of infinities + self.assertEquals(copysign(1., INF), 1.) + self.assertEquals(copysign(1., NINF), -1.) + self.assertEquals(copysign(INF, INF), INF) + self.assertEquals(copysign(INF, NINF), NINF) + self.assertEquals(copysign(NINF, INF), INF) + self.assertEquals(copysign(NINF, NINF), NINF) + self.assert_(math.isnan(copysign(NAN, 1.))) + self.assert_(math.isnan(copysign(NAN, INF))) + self.assert_(math.isnan(copysign(NAN, NINF))) + self.assert_(math.isnan(copysign(NAN, NAN))) + # copysign(INF, NAN) may be INF or it may be NINF, since + # we don't know whether the sign bit of NAN is set on any + # given platform. + self.assert_(math.isinf(copysign(INF, NAN))) + # similarly, copysign(2., NAN) could be 2. or -2. + self.assertEquals(abs(copysign(2., NAN)), 2.) + def testCos(self): self.assertRaises(TypeError, math.cos) self.ftest('cos(-pi/2)', math.cos(-math.pi/2), 0) self.ftest('cos(0)', math.cos(0), 1) self.ftest('cos(pi/2)', math.cos(math.pi/2), 0) self.ftest('cos(pi)', math.cos(math.pi), -1) + try: + self.assert_(math.isnan(math.cos(INF))) + self.assert_(math.isnan(math.cos(NINF))) + except ValueError: + self.assertRaises(ValueError, math.cos, INF) + self.assertRaises(ValueError, math.cos, NINF) + self.assert_(math.isnan(math.cos(NAN))) def testCosh(self): self.assertRaises(TypeError, math.cosh) self.ftest('cosh(0)', math.cosh(0), 1) self.ftest('cosh(2)-2*cosh(1)**2', math.cosh(2)-2*math.cosh(1)**2, -1) # Thanks to Lambert + self.assertEquals(math.cosh(INF), INF) + self.assertEquals(math.cosh(NINF), INF) + self.assert_(math.isnan(math.cosh(NAN))) def testDegrees(self): self.assertRaises(TypeError, math.degrees) @@ -95,6 +211,9 @@ self.ftest('exp(-1)', math.exp(-1), 1/math.e) self.ftest('exp(0)', math.exp(0), 1) self.ftest('exp(1)', math.exp(1), math.e) + self.assertEquals(math.exp(INF), INF) + self.assertEquals(math.exp(NINF), 0.) + self.assert_(math.isnan(math.exp(NAN))) def testFabs(self): self.assertRaises(TypeError, math.fabs) @@ -115,6 +234,9 @@ # This fails on some platforms - so check it here self.ftest('floor(1.23e167)', math.floor(1.23e167), 1.23e167) self.ftest('floor(-1.23e167)', math.floor(-1.23e167), -1.23e167) + #self.assertEquals(math.ceil(INF), INF) + #self.assertEquals(math.ceil(NINF), NINF) + #self.assert_(math.isnan(math.floor(NAN))) class TestFloor: def __floor__(self): @@ -137,6 +259,19 @@ self.ftest('fmod(-10,1)', math.fmod(-10,1), 0) self.ftest('fmod(-10,0.5)', math.fmod(-10,0.5), 0) self.ftest('fmod(-10,1.5)', math.fmod(-10,1.5), -1) + self.assert_(math.isnan(math.fmod(NAN, 1.))) + self.assert_(math.isnan(math.fmod(1., NAN))) + self.assert_(math.isnan(math.fmod(NAN, NAN))) + self.assertRaises(ValueError, math.fmod, 1., 0.) + self.assertRaises(ValueError, math.fmod, INF, 1.) + self.assertRaises(ValueError, math.fmod, NINF, 1.) + self.assertRaises(ValueError, math.fmod, INF, 0.) + self.assertEquals(math.fmod(3.0, INF), 3.0) + self.assertEquals(math.fmod(-3.0, INF), -3.0) + self.assertEquals(math.fmod(3.0, NINF), 3.0) + self.assertEquals(math.fmod(-3.0, NINF), -3.0) + self.assertEquals(math.fmod(0.0, 3.0), 0.0) + self.assertEquals(math.fmod(0.0, NINF), 0.0) def testFrexp(self): self.assertRaises(TypeError, math.frexp) @@ -152,10 +287,20 @@ testfrexp('frexp(1)', math.frexp(1), (0.5, 1)) testfrexp('frexp(2)', math.frexp(2), (0.5, 2)) + self.assertEquals(math.frexp(INF)[0], INF) + self.assertEquals(math.frexp(NINF)[0], NINF) + self.assert_(math.isnan(math.frexp(NAN)[0])) + def testHypot(self): self.assertRaises(TypeError, math.hypot) self.ftest('hypot(0,0)', math.hypot(0,0), 0) self.ftest('hypot(3,4)', math.hypot(3,4), 5) + self.assertEqual(math.hypot(NAN, INF), INF) + self.assertEqual(math.hypot(INF, NAN), INF) + self.assertEqual(math.hypot(NAN, NINF), INF) + self.assertEqual(math.hypot(NINF, NAN), INF) + self.assert_(math.isnan(math.hypot(1.0, NAN))) + self.assert_(math.isnan(math.hypot(NAN, -2.0))) def testLdexp(self): self.assertRaises(TypeError, math.ldexp) @@ -163,6 +308,13 @@ self.ftest('ldexp(1,1)', math.ldexp(1,1), 2) self.ftest('ldexp(1,-1)', math.ldexp(1,-1), 0.5) self.ftest('ldexp(-1,1)', math.ldexp(-1,1), -2) + self.assertRaises(OverflowError, math.ldexp, 1., 1000000) + self.assertRaises(OverflowError, math.ldexp, -1., 1000000) + self.assertEquals(math.ldexp(1., -1000000), 0.) + self.assertEquals(math.ldexp(-1., -1000000), -0.) + self.assertEquals(math.ldexp(INF, 30), INF) + self.assertEquals(math.ldexp(NINF, -213), NINF) + self.assert_(math.isnan(math.ldexp(NAN, 0))) def testLog(self): self.assertRaises(TypeError, math.log) @@ -172,12 +324,31 @@ self.ftest('log(32,2)', math.log(32,2), 5) self.ftest('log(10**40, 10)', math.log(10**40, 10), 40) self.ftest('log(10**40, 10**20)', math.log(10**40, 10**20), 2) + self.assertEquals(math.log(INF), INF) + self.assertRaises(ValueError, math.log, NINF) + self.assert_(math.isnan(math.log(NAN))) + + def testLog1p(self): + self.assertRaises(TypeError, math.log1p) + self.ftest('log1p(1/e -1)', math.log1p(1/math.e-1), -1) + self.ftest('log1p(0)', math.log1p(0), 0) + self.ftest('log1p(e-1)', math.log1p(math.e-1), 1) + self.ftest('log1p(1)', math.log1p(1), math.log(2)) + self.assertEquals(math.log1p(INF), INF) + self.assertRaises(ValueError, math.log1p, NINF) + self.assert_(math.isnan(math.log1p(NAN))) + n= 2**90 + self.assertAlmostEquals(math.log1p(n), 62.383246250395075) + self.assertAlmostEquals(math.log1p(n), math.log1p(float(n))) def testLog10(self): self.assertRaises(TypeError, math.log10) self.ftest('log10(0.1)', math.log10(0.1), -1) self.ftest('log10(1)', math.log10(1), 0) self.ftest('log10(10)', math.log10(10), 1) + self.assertEquals(math.log(INF), INF) + self.assertRaises(ValueError, math.log10, NINF) + self.assert_(math.isnan(math.log10(NAN))) def testModf(self): self.assertRaises(TypeError, math.modf) @@ -191,12 +362,35 @@ testmodf('modf(1.5)', math.modf(1.5), (0.5, 1.0)) testmodf('modf(-1.5)', math.modf(-1.5), (-0.5, -1.0)) + self.assertEquals(math.modf(INF), (0.0, INF)) + self.assertEquals(math.modf(NINF), (-0.0, NINF)) + + modf_nan = math.modf(NAN) + self.assert_(math.isnan(modf_nan[0])) + self.assert_(math.isnan(modf_nan[1])) + def testPow(self): self.assertRaises(TypeError, math.pow) self.ftest('pow(0,1)', math.pow(0,1), 0) self.ftest('pow(1,0)', math.pow(1,0), 1) self.ftest('pow(2,1)', math.pow(2,1), 2) self.ftest('pow(2,-1)', math.pow(2,-1), 0.5) + self.assertEqual(math.pow(INF, 1), INF) + self.assertEqual(math.pow(NINF, 1), NINF) + self.assertEqual((math.pow(1, INF)), 1.) + self.assertEqual((math.pow(1, NINF)), 1.) + self.assert_(math.isnan(math.pow(NAN, 1))) + self.assert_(math.isnan(math.pow(2, NAN))) + self.assert_(math.isnan(math.pow(0, NAN))) + self.assertEqual(math.pow(1, NAN), 1) + self.assertEqual(1**NAN, 1) + self.assertEqual(1**INF, 1) + self.assertEqual(1**NINF, 1) + self.assertEqual(1**0, 1) + self.assertEqual(1.**NAN, 1) + self.assertEqual(1.**INF, 1) + self.assertEqual(1.**NINF, 1) + self.assertEqual(1.**0, 1) def testRadians(self): self.assertRaises(TypeError, math.radians) @@ -209,29 +403,52 @@ self.ftest('sin(0)', math.sin(0), 0) self.ftest('sin(pi/2)', math.sin(math.pi/2), 1) self.ftest('sin(-pi/2)', math.sin(-math.pi/2), -1) + try: + self.assert_(math.isnan(math.sin(INF))) + self.assert_(math.isnan(math.sin(NINF))) + except ValueError: + self.assertRaises(ValueError, math.sin, INF) + self.assertRaises(ValueError, math.sin, NINF) + self.assert_(math.isnan(math.sin(NAN))) def testSinh(self): self.assertRaises(TypeError, math.sinh) self.ftest('sinh(0)', math.sinh(0), 0) self.ftest('sinh(1)**2-cosh(1)**2', math.sinh(1)**2-math.cosh(1)**2, -1) self.ftest('sinh(1)+sinh(-1)', math.sinh(1)+math.sinh(-1), 0) + self.assertEquals(math.sinh(INF), INF) + self.assertEquals(math.sinh(-INF), -INF) + self.assert_(math.isnan(math.sinh(NAN))) def testSqrt(self): self.assertRaises(TypeError, math.sqrt) self.ftest('sqrt(0)', math.sqrt(0), 0) self.ftest('sqrt(1)', math.sqrt(1), 1) self.ftest('sqrt(4)', math.sqrt(4), 2) + self.assertEquals(math.sqrt(INF), INF) + self.assertRaises(ValueError, math.sqrt, NINF) + self.assert_(math.isnan(math.sqrt(NAN))) def testTan(self): self.assertRaises(TypeError, math.tan) self.ftest('tan(0)', math.tan(0), 0) self.ftest('tan(pi/4)', math.tan(math.pi/4), 1) self.ftest('tan(-pi/4)', math.tan(-math.pi/4), -1) + try: + self.assert_(math.isnan(math.tan(INF))) + self.assert_(math.isnan(math.tan(NINF))) + except: + self.assertRaises(ValueError, math.tan, INF) + self.assertRaises(ValueError, math.tan, NINF) + self.assert_(math.isnan(math.tan(NAN))) def testTanh(self): self.assertRaises(TypeError, math.tanh) self.ftest('tanh(0)', math.tanh(0), 0) self.ftest('tanh(1)+tanh(-1)', math.tanh(1)+math.tanh(-1), 0) + self.ftest('tanh(inf)', math.tanh(INF), 1) + self.ftest('tanh(-inf)', math.tanh(NINF), -1) + self.assert_(math.isnan(math.tanh(NAN))) def test_trunc(self): self.assertEqual(math.trunc(1), 1) @@ -326,9 +543,27 @@ else: self.fail("sqrt(-1) didn't raise ValueError") + def test_testfile(self): + if not float.__getformat__("double").startswith("IEEE"): + return + for id, fn, ar, ai, er, ei, flags in parse_testfile(test_file): + # Skip if either the input or result is complex, or if + # flags is nonempty + if ai != 0. or ei != 0. or flags: + continue + if fn in ['rect', 'polar']: + # no real versions of rect, polar + continue + func = getattr(math, fn) + result = func(ar) + self.ftest("%s:%s(%r)" % (id, fn, ar), result, er) def test_main(): - run_unittest(MathTests) + from doctest import DocFileSuite + suite = unittest.TestSuite() + suite.addTest(unittest.makeSuite(MathTests)) + suite.addTest(DocFileSuite("ieee754.txt")) + run_unittest(suite) if __name__ == '__main__': test_main() Modified: python/branches/py3k/Makefile.pre.in ============================================================================== --- python/branches/py3k/Makefile.pre.in (original) +++ python/branches/py3k/Makefile.pre.in Sat Apr 19 02:31:39 2008 @@ -276,6 +276,7 @@ Python/peephole.o \ Python/pyarena.o \ Python/pyfpe.o \ + Python/pymath.o \ Python/pystate.o \ Python/pythonrun.o \ Python/structmember.o \ @@ -622,6 +623,7 @@ Include/pydebug.h \ Include/pyerrors.h \ Include/pyfpe.h \ + Include/pymath.h \ Include/pygetopt.h \ Include/pymem.h \ Include/pyport.h \ Modified: python/branches/py3k/Modules/cmathmodule.c ============================================================================== --- python/branches/py3k/Modules/cmathmodule.c (original) +++ python/branches/py3k/Modules/cmathmodule.c Sat Apr 19 02:31:39 2008 @@ -3,31 +3,172 @@ /* much code borrowed from mathmodule.c */ #include "Python.h" +/* we need DBL_MAX, DBL_MIN, DBL_EPSILON, DBL_MANT_DIG and FLT_RADIX from + float.h. We assume that FLT_RADIX is either 2 or 16. */ +#include -#ifndef M_PI -#define M_PI (3.141592653589793239) +#if (FLT_RADIX != 2 && FLT_RADIX != 16) +#error "Modules/cmathmodule.c expects FLT_RADIX to be 2 or 16" #endif -/* First, the C functions that do the real work */ +#ifndef M_LN2 +#define M_LN2 (0.6931471805599453094) /* natural log of 2 */ +#endif + +#ifndef M_LN10 +#define M_LN10 (2.302585092994045684) /* natural log of 10 */ +#endif -/* constants */ -static Py_complex c_one = {1., 0.}; -static Py_complex c_half = {0.5, 0.}; -static Py_complex c_i = {0., 1.}; -static Py_complex c_halfi = {0., 0.5}; +/* + CM_LARGE_DOUBLE is used to avoid spurious overflow in the sqrt, log, + inverse trig and inverse hyperbolic trig functions. Its log is used in the + evaluation of exp, cos, cosh, sin, sinh, tan, and tanh to avoid unecessary + overflow. + */ + +#define CM_LARGE_DOUBLE (DBL_MAX/4.) +#define CM_SQRT_LARGE_DOUBLE (sqrt(CM_LARGE_DOUBLE)) +#define CM_LOG_LARGE_DOUBLE (log(CM_LARGE_DOUBLE)) +#define CM_SQRT_DBL_MIN (sqrt(DBL_MIN)) + +/* + CM_SCALE_UP is an odd integer chosen such that multiplication by + 2**CM_SCALE_UP is sufficient to turn a subnormal into a normal. + CM_SCALE_DOWN is (-(CM_SCALE_UP+1)/2). These scalings are used to compute + square roots accurately when the real and imaginary parts of the argument + are subnormal. +*/ + +#if FLT_RADIX==2 +#define CM_SCALE_UP (2*(DBL_MANT_DIG/2) + 1) +#elif FLT_RADIX==16 +#define CM_SCALE_UP (4*DBL_MANT_DIG+1) +#endif +#define CM_SCALE_DOWN (-(CM_SCALE_UP+1)/2) /* forward declarations */ -static Py_complex c_log(Py_complex); -static Py_complex c_prodi(Py_complex); +static Py_complex c_asinh(Py_complex); +static Py_complex c_atanh(Py_complex); +static Py_complex c_cosh(Py_complex); +static Py_complex c_sinh(Py_complex); static Py_complex c_sqrt(Py_complex); +static Py_complex c_tanh(Py_complex); static PyObject * math_error(void); +/* Code to deal with special values (infinities, NaNs, etc.). */ + +/* special_type takes a double and returns an integer code indicating + the type of the double as follows: +*/ + +enum special_types { + ST_NINF, /* 0, negative infinity */ + ST_NEG, /* 1, negative finite number (nonzero) */ + ST_NZERO, /* 2, -0. */ + ST_PZERO, /* 3, +0. */ + ST_POS, /* 4, positive finite number (nonzero) */ + ST_PINF, /* 5, positive infinity */ + ST_NAN, /* 6, Not a Number */ +}; + +static enum special_types +special_type(double d) +{ + if (Py_IS_FINITE(d)) { + if (d != 0) { + if (copysign(1., d) == 1.) + return ST_POS; + else + return ST_NEG; + } + else { + if (copysign(1., d) == 1.) + return ST_PZERO; + else + return ST_NZERO; + } + } + if (Py_IS_NAN(d)) + return ST_NAN; + if (copysign(1., d) == 1.) + return ST_PINF; + else + return ST_NINF; +} + +#define SPECIAL_VALUE(z, table) \ + if (!Py_IS_FINITE((z).real) || !Py_IS_FINITE((z).imag)) { \ + errno = 0; \ + return table[special_type((z).real)] \ + [special_type((z).imag)]; \ + } + +#define P Py_MATH_PI +#define P14 0.25*Py_MATH_PI +#define P12 0.5*Py_MATH_PI +#define P34 0.75*Py_MATH_PI +#ifdef MS_WINDOWS +/* On Windows HUGE_VAL is an extern variable and not a constant. Since the + special value arrays need a constant we have to roll our own infinity + and nan. */ +# define INF (DBL_MAX*DBL_MAX) +# define N (INF*0.) +#else +# define INF Py_HUGE_VAL +# define N Py_NAN +#endif /* MS_WINDOWS */ +#define U -9.5426319407711027e33 /* unlikely value, used as placeholder */ + +/* First, the C functions that do the real work. Each of the c_* + functions computes and returns the C99 Annex G recommended result + and also sets errno as follows: errno = 0 if no floating-point + exception is associated with the result; errno = EDOM if C99 Annex + G recommends raising divide-by-zero or invalid for this result; and + errno = ERANGE where the overflow floating-point signal should be + raised. +*/ + +static Py_complex acos_special_values[7][7] = { + {{P34,INF},{P,INF}, {P,INF}, {P,-INF}, {P,-INF}, {P34,-INF},{N,INF}}, + {{P12,INF},{U,U}, {U,U}, {U,U}, {U,U}, {P12,-INF},{N,N}}, + {{P12,INF},{U,U}, {P12,0.},{P12,-0.},{U,U}, {P12,-INF},{P12,N}}, + {{P12,INF},{U,U}, {P12,0.},{P12,-0.},{U,U}, {P12,-INF},{P12,N}}, + {{P12,INF},{U,U}, {U,U}, {U,U}, {U,U}, {P12,-INF},{N,N}}, + {{P14,INF},{0.,INF},{0.,INF},{0.,-INF},{0.,-INF},{P14,-INF},{N,INF}}, + {{N,INF}, {N,N}, {N,N}, {N,N}, {N,N}, {N,-INF}, {N,N}} +}; static Py_complex -c_acos(Py_complex x) +c_acos(Py_complex z) { - return c_neg(c_prodi(c_log(c_sum(x,c_prod(c_i, - c_sqrt(c_diff(c_one,c_prod(x,x)))))))); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, acos_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + /* avoid unnecessary overflow for large arguments */ + r.real = atan2(fabs(z.imag), z.real); + /* split into cases to make sure that the branch cut has the + correct continuity on systems with unsigned zeros */ + if (z.real < 0.) { + r.imag = -copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., z.imag); + } else { + r.imag = copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., -z.imag); + } + } else { + s1.real = 1.-z.real; + s1.imag = -z.imag; + s1 = c_sqrt(s1); + s2.real = 1.+z.real; + s2.imag = z.imag; + s2 = c_sqrt(s2); + r.real = 2.*atan2(s1.real, s2.real); + r.imag = asinh(s2.real*s1.imag - s2.imag*s1.real); + } + errno = 0; + return r; } PyDoc_STRVAR(c_acos_doc, @@ -36,14 +177,39 @@ "Return the arc cosine of x."); +static Py_complex acosh_special_values[7][7] = { + {{INF,-P34},{INF,-P}, {INF,-P}, {INF,P}, {INF,P}, {INF,P34},{INF,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {0.,-P12},{0.,P12},{U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {0.,-P12},{0.,P12},{U,U}, {INF,P12},{N,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12},{N,N}}, + {{INF,-P14},{INF,-0.},{INF,-0.},{INF,0.},{INF,0.},{INF,P14},{INF,N}}, + {{INF,N}, {N,N}, {N,N}, {N,N}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_acosh(Py_complex x) +c_acosh(Py_complex z) { - Py_complex z; - z = c_sqrt(c_half); - z = c_log(c_prod(z, c_sum(c_sqrt(c_sum(x,c_one)), - c_sqrt(c_diff(x,c_one))))); - return c_sum(z, z); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, acosh_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + /* avoid unnecessary overflow for large arguments */ + r.real = log(hypot(z.real/2., z.imag/2.)) + M_LN2*2.; + r.imag = atan2(z.imag, z.real); + } else { + s1.real = z.real - 1.; + s1.imag = z.imag; + s1 = c_sqrt(s1); + s2.real = z.real + 1.; + s2.imag = z.imag; + s2 = c_sqrt(s2); + r.real = asinh(s1.real*s2.real + s1.imag*s2.imag); + r.imag = 2.*atan2(s1.imag, s2.real); + } + errno = 0; + return r; } PyDoc_STRVAR(c_acosh_doc, @@ -53,14 +219,16 @@ static Py_complex -c_asin(Py_complex x) +c_asin(Py_complex z) { - /* -i * log[(sqrt(1-x**2) + i*x] */ - const Py_complex squared = c_prod(x, x); - const Py_complex sqrt_1_minus_x_sq = c_sqrt(c_diff(c_one, squared)); - return c_neg(c_prodi(c_log( - c_sum(sqrt_1_minus_x_sq, c_prodi(x)) - ) ) ); + /* asin(z) = -i asinh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_asinh(s); + r.real = s.imag; + r.imag = -s.real; + return r; } PyDoc_STRVAR(c_asin_doc, @@ -69,14 +237,44 @@ "Return the arc sine of x."); +static Py_complex asinh_special_values[7][7] = { + {{-INF,-P14},{-INF,-0.},{-INF,-0.},{-INF,0.},{-INF,0.},{-INF,P14},{-INF,N}}, + {{-INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {-INF,P12},{N,N}}, + {{-INF,-P12},{U,U}, {-0.,-0.}, {-0.,0.}, {U,U}, {-INF,P12},{N,N}}, + {{INF,-P12}, {U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12}, {U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P14}, {INF,-0.}, {INF,-0.}, {INF,0.}, {INF,0.}, {INF,P14}, {INF,N}}, + {{INF,N}, {N,N}, {N,-0.}, {N,0.}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_asinh(Py_complex x) +c_asinh(Py_complex z) { - Py_complex z; - z = c_sqrt(c_half); - z = c_log(c_prod(z, c_sum(c_sqrt(c_sum(x, c_i)), - c_sqrt(c_diff(x, c_i))))); - return c_sum(z, z); + Py_complex s1, s2, r; + + SPECIAL_VALUE(z, asinh_special_values); + + if (fabs(z.real) > CM_LARGE_DOUBLE || fabs(z.imag) > CM_LARGE_DOUBLE) { + if (z.imag >= 0.) { + r.real = copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., z.real); + } else { + r.real = -copysign(log(hypot(z.real/2., z.imag/2.)) + + M_LN2*2., -z.real); + } + r.imag = atan2(z.imag, fabs(z.real)); + } else { + s1.real = 1.+z.imag; + s1.imag = -z.real; + s1 = c_sqrt(s1); + s2.real = 1.-z.imag; + s2.imag = z.real; + s2 = c_sqrt(s2); + r.real = asinh(s1.real*s2.imag-s2.real*s1.imag); + r.imag = atan2(z.imag, s1.real*s2.real-s1.imag*s2.imag); + } + errno = 0; + return r; } PyDoc_STRVAR(c_asinh_doc, @@ -86,9 +284,37 @@ static Py_complex -c_atan(Py_complex x) +c_atan(Py_complex z) { - return c_prod(c_halfi,c_log(c_quot(c_sum(c_i,x),c_diff(c_i,x)))); + /* atan(z) = -i atanh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_atanh(s); + r.real = s.imag; + r.imag = -s.real; + return r; +} + +/* Windows screws up atan2 for inf and nan */ +static double +c_atan2(Py_complex z) +{ + if (Py_IS_NAN(z.real) || Py_IS_NAN(z.imag)) + return Py_NAN; + if (Py_IS_INFINITY(z.imag)) { + if (Py_IS_INFINITY(z.real)) { + if (copysign(1., z.real) == 1.) + /* atan2(+-inf, +inf) == +-pi/4 */ + return copysign(0.25*Py_MATH_PI, z.imag); + else + /* atan2(+-inf, -inf) == +-pi*3/4 */ + return copysign(0.75*Py_MATH_PI, z.imag); + } + /* atan2(+-inf, x) == +-pi/2 for finite x */ + return copysign(0.5*Py_MATH_PI, z.imag); + } + return atan2(z.imag, z.real); } PyDoc_STRVAR(c_atan_doc, @@ -97,10 +323,61 @@ "Return the arc tangent of x."); +static Py_complex atanh_special_values[7][7] = { + {{-0.,-P12},{-0.,-P12},{-0.,-P12},{-0.,P12},{-0.,P12},{-0.,P12},{-0.,N}}, + {{-0.,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {-0.,P12},{N,N}}, + {{-0.,-P12},{U,U}, {-0.,-0.}, {-0.,0.}, {U,U}, {-0.,P12},{-0.,N}}, + {{0.,-P12}, {U,U}, {0.,-0.}, {0.,0.}, {U,U}, {0.,P12}, {0.,N}}, + {{0.,-P12}, {U,U}, {U,U}, {U,U}, {U,U}, {0.,P12}, {N,N}}, + {{0.,-P12}, {0.,-P12}, {0.,-P12}, {0.,P12}, {0.,P12}, {0.,P12}, {0.,N}}, + {{0.,-P12}, {N,N}, {N,N}, {N,N}, {N,N}, {0.,P12}, {N,N}} +}; + static Py_complex -c_atanh(Py_complex x) +c_atanh(Py_complex z) { - return c_prod(c_half,c_log(c_quot(c_sum(c_one,x),c_diff(c_one,x)))); + Py_complex r; + double ay, h; + + SPECIAL_VALUE(z, atanh_special_values); + + /* Reduce to case where z.real >= 0., using atanh(z) = -atanh(-z). */ + if (z.real < 0.) { + return c_neg(c_atanh(c_neg(z))); + } + + ay = fabs(z.imag); + if (z.real > CM_SQRT_LARGE_DOUBLE || ay > CM_SQRT_LARGE_DOUBLE) { + /* + if abs(z) is large then we use the approximation + atanh(z) ~ 1/z +/- i*pi/2 (+/- depending on the sign + of z.imag) + */ + h = hypot(z.real/2., z.imag/2.); /* safe from overflow */ + r.real = z.real/4./h/h; + /* the two negations in the next line cancel each other out + except when working with unsigned zeros: they're there to + ensure that the branch cut has the correct continuity on + systems that don't support signed zeros */ + r.imag = -copysign(Py_MATH_PI/2., -z.imag); + errno = 0; + } else if (z.real == 1. && ay < CM_SQRT_DBL_MIN) { + /* C99 standard says: atanh(1+/-0.) should be inf +/- 0i */ + if (ay == 0.) { + r.real = INF; + r.imag = z.imag; + errno = EDOM; + } else { + r.real = -log(sqrt(ay)/sqrt(hypot(ay, 2.))); + r.imag = copysign(atan2(2., -ay)/2, z.imag); + errno = 0; + } + } else { + r.real = log1p(4.*z.real/((1-z.real)*(1-z.real) + ay*ay))/4.; + r.imag = -atan2(-2.*z.imag, (1-z.real)*(1+z.real) - ay*ay)/2.; + errno = 0; + } + return r; } PyDoc_STRVAR(c_atanh_doc, @@ -110,11 +387,13 @@ static Py_complex -c_cos(Py_complex x) +c_cos(Py_complex z) { + /* cos(z) = cosh(iz) */ Py_complex r; - r.real = cos(x.real)*cosh(x.imag); - r.imag = -sin(x.real)*sinh(x.imag); + r.real = -z.imag; + r.imag = z.real; + r = c_cosh(r); return r; } @@ -124,12 +403,64 @@ "Return the cosine of x."); +/* cosh(infinity + i*y) needs to be dealt with specially */ +static Py_complex cosh_special_values[7][7] = { + {{INF,N},{U,U},{INF,0.}, {INF,-0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,0.}, {U,U},{1.,0.}, {1.,-0.}, {U,U},{N,0.}, {N,0.}}, + {{N,0.}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,0.}, {N,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_cosh(Py_complex x) +c_cosh(Py_complex z) { Py_complex r; - r.real = cos(x.imag)*cosh(x.real); - r.imag = sin(x.imag)*sinh(x.real); + double x_minus_one; + + /* special treatment for cosh(+/-inf + iy) if y is not a NaN */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) && + (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = copysign(INF, cos(z.imag)); + r.imag = -copysign(INF, sin(z.imag)); + } + } + else { + r = cosh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN */ + if (Py_IS_INFINITY(z.imag) && !Py_IS_NAN(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + /* deal correctly with cases where cosh(z.real) overflows but + cosh(z) does not. */ + x_minus_one = z.real - copysign(1., z.real); + r.real = cos(z.imag) * cosh(x_minus_one) * Py_MATH_E; + r.imag = sin(z.imag) * sinh(x_minus_one) * Py_MATH_E; + } else { + r.real = cos(z.imag) * cosh(z.real); + r.imag = sin(z.imag) * sinh(z.real); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -139,13 +470,65 @@ "Return the hyperbolic cosine of x."); +/* exp(infinity + i*y) and exp(-infinity + i*y) need special treatment for + finite y */ +static Py_complex exp_special_values[7][7] = { + {{0.,0.},{U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,0.},{0.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_exp(Py_complex x) +c_exp(Py_complex z) { Py_complex r; - double l = exp(x.real); - r.real = l*cos(x.imag); - r.imag = l*sin(x.imag); + double l; + + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = copysign(0., cos(z.imag)); + r.imag = copysign(0., sin(z.imag)); + } + } + else { + r = exp_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN and not -infinity */ + if (Py_IS_INFINITY(z.imag) && + (Py_IS_FINITE(z.real) || + (Py_IS_INFINITY(z.real) && z.real > 0))) + errno = EDOM; + else + errno = 0; + return r; + } + + if (z.real > CM_LOG_LARGE_DOUBLE) { + l = exp(z.real-1.); + r.real = l*cos(z.imag)*Py_MATH_E; + r.imag = l*sin(z.imag)*Py_MATH_E; + } else { + l = exp(z.real); + r.real = l*cos(z.imag); + r.imag = l*sin(z.imag); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -155,24 +538,97 @@ "Return the exponential value e**x."); +static Py_complex log_special_values[7][7] = { + {{INF,-P34},{INF,-P}, {INF,-P}, {INF,P}, {INF,P}, {INF,P34}, {INF,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {-INF,-P}, {-INF,P}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {-INF,-0.},{-INF,0.},{U,U}, {INF,P12}, {N,N}}, + {{INF,-P12},{U,U}, {U,U}, {U,U}, {U,U}, {INF,P12}, {N,N}}, + {{INF,-P14},{INF,-0.},{INF,-0.}, {INF,0.}, {INF,0.},{INF,P14}, {INF,N}}, + {{INF,N}, {N,N}, {N,N}, {N,N}, {N,N}, {INF,N}, {N,N}} +}; + static Py_complex -c_log(Py_complex x) +c_log(Py_complex z) { + /* + The usual formula for the real part is log(hypot(z.real, z.imag)). + There are four situations where this formula is potentially + problematic: + + (1) the absolute value of z is subnormal. Then hypot is subnormal, + so has fewer than the usual number of bits of accuracy, hence may + have large relative error. This then gives a large absolute error + in the log. This can be solved by rescaling z by a suitable power + of 2. + + (2) the absolute value of z is greater than DBL_MAX (e.g. when both + z.real and z.imag are within a factor of 1/sqrt(2) of DBL_MAX) + Again, rescaling solves this. + + (3) the absolute value of z is close to 1. In this case it's + difficult to achieve good accuracy, at least in part because a + change of 1ulp in the real or imaginary part of z can result in a + change of billions of ulps in the correctly rounded answer. + + (4) z = 0. The simplest thing to do here is to call the + floating-point log with an argument of 0, and let its behaviour + (returning -infinity, signaling a floating-point exception, setting + errno, or whatever) determine that of c_log. So the usual formula + is fine here. + + */ + Py_complex r; - double l = hypot(x.real,x.imag); - r.imag = atan2(x.imag, x.real); - r.real = log(l); + double ax, ay, am, an, h; + + SPECIAL_VALUE(z, log_special_values); + + ax = fabs(z.real); + ay = fabs(z.imag); + + if (ax > CM_LARGE_DOUBLE || ay > CM_LARGE_DOUBLE) { + r.real = log(hypot(ax/2., ay/2.)) + M_LN2; + } else if (ax < DBL_MIN && ay < DBL_MIN) { + if (ax > 0. || ay > 0.) { + /* catch cases where hypot(ax, ay) is subnormal */ + r.real = log(hypot(ldexp(ax, DBL_MANT_DIG), + ldexp(ay, DBL_MANT_DIG))) - DBL_MANT_DIG*M_LN2; + } + else { + /* log(+/-0. +/- 0i) */ + r.real = -INF; + r.imag = atan2(z.imag, z.real); + errno = EDOM; + return r; + } + } else { + h = hypot(ax, ay); + if (0.71 <= h && h <= 1.73) { + am = ax > ay ? ax : ay; /* max(ax, ay) */ + an = ax > ay ? ay : ax; /* min(ax, ay) */ + r.real = log1p((am-1)*(am+1)+an*an)/2.; + } else { + r.real = log(h); + } + } + r.imag = atan2(z.imag, z.real); + errno = 0; return r; } static Py_complex -c_log10(Py_complex x) +c_log10(Py_complex z) { Py_complex r; - double l = hypot(x.real,x.imag); - r.imag = atan2(x.imag, x.real)/log(10.); - r.real = log10(l); + int errno_save; + + r = c_log(z); + errno_save = errno; /* just in case the divisions affect errno */ + r.real = r.real / M_LN10; + r.imag = r.imag / M_LN10; + errno = errno_save; return r; } @@ -182,23 +638,16 @@ "Return the base-10 logarithm of x."); -/* internal function not available from Python */ static Py_complex -c_prodi(Py_complex x) +c_sin(Py_complex z) { - Py_complex r; - r.real = -x.imag; - r.imag = x.real; - return r; -} - - -static Py_complex -c_sin(Py_complex x) -{ - Py_complex r; - r.real = sin(x.real) * cosh(x.imag); - r.imag = cos(x.real) * sinh(x.imag); + /* sin(z) = -i sin(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_sinh(s); + r.real = s.imag; + r.imag = -s.real; return r; } @@ -208,12 +657,63 @@ "Return the sine of x."); +/* sinh(infinity + i*y) needs to be dealt with specially */ +static Py_complex sinh_special_values[7][7] = { + {{INF,N},{U,U},{-INF,-0.},{-INF,0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{0.,N}, {U,U},{-0.,-0.}, {-0.,0.}, {U,U},{0.,N}, {0.,N}}, + {{0.,N}, {U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,N}, {0.,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.}, {INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_sinh(Py_complex x) +c_sinh(Py_complex z) { Py_complex r; - r.real = cos(x.imag) * sinh(x.real); - r.imag = sin(x.imag) * cosh(x.real); + double x_minus_one; + + /* special treatment for sinh(+/-inf + iy) if y is finite and + nonzero */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + else { + r.real = -copysign(INF, cos(z.imag)); + r.imag = copysign(INF, sin(z.imag)); + } + } + else { + r = sinh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if y is +/- infinity and x is not + a NaN */ + if (Py_IS_INFINITY(z.imag) && !Py_IS_NAN(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + x_minus_one = z.real - copysign(1., z.real); + r.real = cos(z.imag) * sinh(x_minus_one) * Py_MATH_E; + r.imag = sin(z.imag) * cosh(x_minus_one) * Py_MATH_E; + } else { + r.real = cos(z.imag) * sinh(z.real); + r.imag = sin(z.imag) * cosh(z.real); + } + /* detect overflow, and set errno accordingly */ + if (Py_IS_INFINITY(r.real) || Py_IS_INFINITY(r.imag)) + errno = ERANGE; + else + errno = 0; return r; } @@ -223,29 +723,80 @@ "Return the hyperbolic sine of x."); +static Py_complex sqrt_special_values[7][7] = { + {{INF,-INF},{0.,-INF},{0.,-INF},{0.,INF},{0.,INF},{INF,INF},{N,INF}}, + {{INF,-INF},{U,U}, {U,U}, {U,U}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {0.,-0.}, {0.,0.}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{U,U}, {U,U}, {U,U}, {U,U}, {INF,INF},{N,N}}, + {{INF,-INF},{INF,-0.},{INF,-0.},{INF,0.},{INF,0.},{INF,INF},{INF,N}}, + {{INF,-INF},{N,N}, {N,N}, {N,N}, {N,N}, {INF,INF},{N,N}} +}; + static Py_complex -c_sqrt(Py_complex x) +c_sqrt(Py_complex z) { + /* + Method: use symmetries to reduce to the case when x = z.real and y + = z.imag are nonnegative. Then the real part of the result is + given by + + s = sqrt((x + hypot(x, y))/2) + + and the imaginary part is + + d = (y/2)/s + + If either x or y is very large then there's a risk of overflow in + computation of the expression x + hypot(x, y). We can avoid this + by rewriting the formula for s as: + + s = 2*sqrt(x/8 + hypot(x/8, y/8)) + + This costs us two extra multiplications/divisions, but avoids the + overhead of checking for x and y large. + + If both x and y are subnormal then hypot(x, y) may also be + subnormal, so will lack full precision. We solve this by rescaling + x and y by a sufficiently large power of 2 to ensure that x and y + are normal. + */ + + Py_complex r; double s,d; - if (x.real == 0. && x.imag == 0.) - r = x; - else { - s = sqrt(0.5*(fabs(x.real) + hypot(x.real,x.imag))); - d = 0.5*x.imag/s; - if (x.real > 0.) { - r.real = s; - r.imag = d; - } - else if (x.imag >= 0.) { - r.real = d; - r.imag = s; - } - else { - r.real = -d; - r.imag = -s; - } + double ax, ay; + + SPECIAL_VALUE(z, sqrt_special_values); + + if (z.real == 0. && z.imag == 0.) { + r.real = 0.; + r.imag = z.imag; + return r; } + + ax = fabs(z.real); + ay = fabs(z.imag); + + if (ax < DBL_MIN && ay < DBL_MIN && (ax > 0. || ay > 0.)) { + /* here we catch cases where hypot(ax, ay) is subnormal */ + ax = ldexp(ax, CM_SCALE_UP); + s = ldexp(sqrt(ax + hypot(ax, ldexp(ay, CM_SCALE_UP))), + CM_SCALE_DOWN); + } else { + ax /= 8.; + s = 2.*sqrt(ax + hypot(ax, ay/8.)); + } + d = ay/(2.*s); + + if (z.real >= 0.) { + r.real = s; + r.imag = copysign(d, z.imag); + } else { + r.real = d; + r.imag = copysign(s, z.imag); + } + errno = 0; return r; } @@ -256,23 +807,15 @@ static Py_complex -c_tan(Py_complex x) +c_tan(Py_complex z) { - Py_complex r; - double sr,cr,shi,chi; - double rs,is,rc,ic; - double d; - sr = sin(x.real); - cr = cos(x.real); - shi = sinh(x.imag); - chi = cosh(x.imag); - rs = sr * chi; - is = cr * shi; - rc = cr * chi; - ic = -sr * shi; - d = rc*rc + ic * ic; - r.real = (rs*rc + is*ic) / d; - r.imag = (is*rc - rs*ic) / d; + /* tan(z) = -i tanh(iz) */ + Py_complex s, r; + s.real = -z.imag; + s.imag = z.real; + s = c_tanh(s); + r.real = s.imag; + r.imag = -s.real; return r; } @@ -282,24 +825,78 @@ "Return the tangent of x."); +/* tanh(infinity + i*y) needs to be dealt with specially */ +static Py_complex tanh_special_values[7][7] = { + {{-1.,0.},{U,U},{-1.,-0.},{-1.,0.},{U,U},{-1.,0.},{-1.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{-0.,-0.},{-0.,0.},{U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{0.,-0.}, {0.,0.}, {U,U},{N,N}, {N,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{1.,0.}, {U,U},{1.,-0.}, {1.,0.}, {U,U},{1.,0.}, {1.,0.}}, + {{N,N}, {N,N},{N,-0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + static Py_complex -c_tanh(Py_complex x) +c_tanh(Py_complex z) { + /* Formula: + + tanh(x+iy) = (tanh(x)(1+tan(y)^2) + i tan(y)(1-tanh(x))^2) / + (1+tan(y)^2 tanh(x)^2) + + To avoid excessive roundoff error, 1-tanh(x)^2 is better computed + as 1/cosh(x)^2. When abs(x) is large, we approximate 1-tanh(x)^2 + by 4 exp(-2*x) instead, to avoid possible overflow in the + computation of cosh(x). + + */ + Py_complex r; - double si,ci,shr,chr; - double rs,is,rc,ic; - double d; - si = sin(x.imag); - ci = cos(x.imag); - shr = sinh(x.real); - chr = cosh(x.real); - rs = ci * shr; - is = si * chr; - rc = ci * chr; - ic = si * shr; - d = rc*rc + ic*ic; - r.real = (rs*rc + is*ic) / d; - r.imag = (is*rc - rs*ic) / d; + double tx, ty, cx, txty, denom; + + /* special treatment for tanh(+/-inf + iy) if y is finite and + nonzero */ + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + if (Py_IS_INFINITY(z.real) && Py_IS_FINITE(z.imag) + && (z.imag != 0.)) { + if (z.real > 0) { + r.real = 1.0; + r.imag = copysign(0., + 2.*sin(z.imag)*cos(z.imag)); + } + else { + r.real = -1.0; + r.imag = copysign(0., + 2.*sin(z.imag)*cos(z.imag)); + } + } + else { + r = tanh_special_values[special_type(z.real)] + [special_type(z.imag)]; + } + /* need to set errno = EDOM if z.imag is +/-infinity and + z.real is finite */ + if (Py_IS_INFINITY(z.imag) && Py_IS_FINITE(z.real)) + errno = EDOM; + else + errno = 0; + return r; + } + + /* danger of overflow in 2.*z.imag !*/ + if (fabs(z.real) > CM_LOG_LARGE_DOUBLE) { + r.real = copysign(1., z.real); + r.imag = 4.*sin(z.imag)*cos(z.imag)*exp(-2.*fabs(z.real)); + } else { + tx = tanh(z.real); + ty = tan(z.imag); + cx = 1./cosh(z.real); + txty = tx*ty; + denom = 1. + txty*txty; + r.real = tx*(1.+ty*ty)/denom; + r.imag = ((ty/denom)*cx)*cx; + } + errno = 0; return r; } @@ -308,6 +905,7 @@ "\n" "Return the hyperbolic tangent of x."); + static PyObject * cmath_log(PyObject *self, PyObject *args) { @@ -325,7 +923,6 @@ PyFPE_END_PROTECT(x) if (errno != 0) return math_error(); - Py_ADJUST_ERANGE2(x.real, x.imag); return PyComplex_FromCComplex(x); } @@ -351,18 +948,24 @@ static PyObject * math_1(PyObject *args, Py_complex (*func)(Py_complex)) { - Py_complex x; + Py_complex x,r ; if (!PyArg_ParseTuple(args, "D", &x)) return NULL; errno = 0; - PyFPE_START_PROTECT("complex function", return 0) - x = (*func)(x); - PyFPE_END_PROTECT(x) - Py_ADJUST_ERANGE2(x.real, x.imag); - if (errno != 0) - return math_error(); - else - return PyComplex_FromCComplex(x); + PyFPE_START_PROTECT("complex function", return 0); + r = (*func)(x); + PyFPE_END_PROTECT(r); + if (errno == EDOM) { + PyErr_SetString(PyExc_ValueError, "math domain error"); + return NULL; + } + else if (errno == ERANGE) { + PyErr_SetString(PyExc_OverflowError, "math range error"); + return NULL; + } + else { + return PyComplex_FromCComplex(r); + } } #define FUNC1(stubname, func) \ @@ -386,6 +989,151 @@ FUNC1(cmath_tan, c_tan) FUNC1(cmath_tanh, c_tanh) +static PyObject * +cmath_phase(PyObject *self, PyObject *args) +{ + Py_complex z; + double phi; + if (!PyArg_ParseTuple(args, "D:phase", &z)) + return NULL; + errno = 0; + PyFPE_START_PROTECT("arg function", return 0) + phi = c_atan2(z); + PyFPE_END_PROTECT(r) + if (errno != 0) + return math_error(); + else + return PyFloat_FromDouble(phi); +} + +PyDoc_STRVAR(cmath_phase_doc, +"phase(z) -> float\n\n\ +Return argument, also known as the phase angle, of a complex."); + +static PyObject * +cmath_polar(PyObject *self, PyObject *args) +{ + Py_complex z; + double r, phi; + if (!PyArg_ParseTuple(args, "D:polar", &z)) + return NULL; + PyFPE_START_PROTECT("polar function", return 0) + phi = c_atan2(z); /* should not cause any exception */ + r = c_abs(z); /* sets errno to ERANGE on overflow; otherwise 0 */ + PyFPE_END_PROTECT(r) + if (errno != 0) + return math_error(); + else + return Py_BuildValue("dd", r, phi); +} + +PyDoc_STRVAR(cmath_polar_doc, +"polar(z) -> r: float, phi: float\n\n\ +Convert a complex from rectangular coordinates to polar coordinates. r is\n\ +the distance from 0 and phi the phase angle."); + +/* + rect() isn't covered by the C99 standard, but it's not too hard to + figure out 'spirit of C99' rules for special value handing: + + rect(x, t) should behave like exp(log(x) + it) for positive-signed x + rect(x, t) should behave like -exp(log(-x) + it) for negative-signed x + rect(nan, t) should behave like exp(nan + it), except that rect(nan, 0) + gives nan +- i0 with the sign of the imaginary part unspecified. + +*/ + +static Py_complex rect_special_values[7][7] = { + {{INF,N},{U,U},{-INF,0.},{-INF,-0.},{U,U},{INF,N},{INF,N}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{0.,0.},{U,U},{-0.,0.}, {-0.,-0.}, {U,U},{0.,0.},{0.,0.}}, + {{0.,0.},{U,U},{0.,-0.}, {0.,0.}, {U,U},{0.,0.},{0.,0.}}, + {{N,N}, {U,U},{U,U}, {U,U}, {U,U},{N,N}, {N,N}}, + {{INF,N},{U,U},{INF,-0.},{INF,0.}, {U,U},{INF,N},{INF,N}}, + {{N,N}, {N,N},{N,0.}, {N,0.}, {N,N},{N,N}, {N,N}} +}; + +static PyObject * +cmath_rect(PyObject *self, PyObject *args) +{ + Py_complex z; + double r, phi; + if (!PyArg_ParseTuple(args, "dd:rect", &r, &phi)) + return NULL; + errno = 0; + PyFPE_START_PROTECT("rect function", return 0) + + /* deal with special values */ + if (!Py_IS_FINITE(r) || !Py_IS_FINITE(phi)) { + /* if r is +/-infinity and phi is finite but nonzero then + result is (+-INF +-INF i), but we need to compute cos(phi) + and sin(phi) to figure out the signs. */ + if (Py_IS_INFINITY(r) && (Py_IS_FINITE(phi) + && (phi != 0.))) { + if (r > 0) { + z.real = copysign(INF, cos(phi)); + z.imag = copysign(INF, sin(phi)); + } + else { + z.real = -copysign(INF, cos(phi)); + z.imag = -copysign(INF, sin(phi)); + } + } + else { + z = rect_special_values[special_type(r)] + [special_type(phi)]; + } + /* need to set errno = EDOM if r is a nonzero number and phi + is infinite */ + if (r != 0. && !Py_IS_NAN(r) && Py_IS_INFINITY(phi)) + errno = EDOM; + else + errno = 0; + } + else { + z.real = r * cos(phi); + z.imag = r * sin(phi); + errno = 0; + } + + PyFPE_END_PROTECT(z) + if (errno != 0) + return math_error(); + else + return PyComplex_FromCComplex(z); +} + +PyDoc_STRVAR(cmath_rect_doc, +"rect(r, phi) -> z: complex\n\n\ +Convert from polar coordinates to rectangular coordinates."); + +static PyObject * +cmath_isnan(PyObject *self, PyObject *args) +{ + Py_complex z; + if (!PyArg_ParseTuple(args, "D:isnan", &z)) + return NULL; + return PyBool_FromLong(Py_IS_NAN(z.real) || Py_IS_NAN(z.imag)); +} + +PyDoc_STRVAR(cmath_isnan_doc, +"isnan(z) -> bool\n\ +Checks if the real or imaginary part of z not a number (NaN)"); + +static PyObject * +cmath_isinf(PyObject *self, PyObject *args) +{ + Py_complex z; + if (!PyArg_ParseTuple(args, "D:isnan", &z)) + return NULL; + return PyBool_FromLong(Py_IS_INFINITY(z.real) || + Py_IS_INFINITY(z.imag)); +} + +PyDoc_STRVAR(cmath_isinf_doc, +"isinf(z) -> bool\n\ +Checks if the real or imaginary part of z is infinite."); + PyDoc_STRVAR(module_doc, "This module is always available. It provides access to mathematical\n" @@ -401,8 +1149,13 @@ {"cos", cmath_cos, METH_VARARGS, c_cos_doc}, {"cosh", cmath_cosh, METH_VARARGS, c_cosh_doc}, {"exp", cmath_exp, METH_VARARGS, c_exp_doc}, + {"isinf", cmath_isinf, METH_VARARGS, cmath_isinf_doc}, + {"isnan", cmath_isnan, METH_VARARGS, cmath_isnan_doc}, {"log", cmath_log, METH_VARARGS, cmath_log_doc}, {"log10", cmath_log10, METH_VARARGS, c_log10_doc}, + {"phase", cmath_phase, METH_VARARGS, cmath_phase_doc}, + {"polar", cmath_polar, METH_VARARGS, cmath_polar_doc}, + {"rect", cmath_rect, METH_VARARGS, cmath_rect_doc}, {"sin", cmath_sin, METH_VARARGS, c_sin_doc}, {"sinh", cmath_sinh, METH_VARARGS, c_sinh_doc}, {"sqrt", cmath_sqrt, METH_VARARGS, c_sqrt_doc}, @@ -421,6 +1174,6 @@ return; PyModule_AddObject(m, "pi", - PyFloat_FromDouble(atan(1.0) * 4.0)); - PyModule_AddObject(m, "e", PyFloat_FromDouble(exp(1.0))); + PyFloat_FromDouble(Py_MATH_PI)); + PyModule_AddObject(m, "e", PyFloat_FromDouble(Py_MATH_E)); } Modified: python/branches/py3k/Modules/mathmodule.c ============================================================================== --- python/branches/py3k/Modules/mathmodule.c (original) +++ python/branches/py3k/Modules/mathmodule.c Sat Apr 19 02:31:39 2008 @@ -1,17 +1,60 @@ /* Math module -- standard C math library functions, pi and e */ +/* Here are some comments from Tim Peters, extracted from the + discussion attached to http://bugs.python.org/issue1640. They + describe the general aims of the math module with respect to + special values, IEEE-754 floating-point exceptions, and Python + exceptions. + +These are the "spirit of 754" rules: + +1. If the mathematical result is a real number, but of magnitude too +large to approximate by a machine float, overflow is signaled and the +result is an infinity (with the appropriate sign). + +2. If the mathematical result is a real number, but of magnitude too +small to approximate by a machine float, underflow is signaled and the +result is a zero (with the appropriate sign). + +3. At a singularity (a value x such that the limit of f(y) as y +approaches x exists and is an infinity), "divide by zero" is signaled +and the result is an infinity (with the appropriate sign). This is +complicated a little by that the left-side and right-side limits may +not be the same; e.g., 1/x approaches +inf or -inf as x approaches 0 +from the positive or negative directions. In that specific case, the +sign of the zero determines the result of 1/0. + +4. At a point where a function has no defined result in the extended +reals (i.e., the reals plus an infinity or two), invalid operation is +signaled and a NaN is returned. + +And these are what Python has historically /tried/ to do (but not +always successfully, as platform libm behavior varies a lot): + +For #1, raise OverflowError. + +For #2, return a zero (with the appropriate sign if that happens by +accident ;-)). + +For #3 and #4, raise ValueError. It may have made sense to raise +Python's ZeroDivisionError in #3, but historically that's only been +raised for division by zero and mod by zero. + +*/ + +/* + In general, on an IEEE-754 platform the aim is to follow the C99 + standard, including Annex 'F', whenever possible. Where the + standard recommends raising the 'divide-by-zero' or 'invalid' + floating-point exceptions, Python should raise a ValueError. Where + the standard recommends raising 'overflow', Python should raise an + OverflowError. In all other circumstances a value should be + returned. + */ + #include "Python.h" #include "longintrepr.h" /* just for SHIFT */ -#ifndef _MSC_VER -#ifndef __STDC__ -extern double fmod (double, double); -extern double frexp (double, int *); -extern double ldexp (double, int); -extern double modf (double, double *); -#endif /* __STDC__ */ -#endif /* _MSC_VER */ - #ifdef _OSF_SOURCE /* OSF1 5.1 doesn't make this available with XOPEN_SOURCE_EXTENDED defined */ extern double copysign(double, double); @@ -52,41 +95,111 @@ return result; } +/* + math_1 is used to wrap a libm function f that takes a double + arguments and returns a double. + + The error reporting follows these rules, which are designed to do + the right thing on C89/C99 platforms and IEEE 754/non IEEE 754 + platforms. + + - a NaN result from non-NaN inputs causes ValueError to be raised + - an infinite result from finite inputs causes OverflowError to be + raised if can_overflow is 1, or raises ValueError if can_overflow + is 0. + - if the result is finite and errno == EDOM then ValueError is + raised + - if the result is finite and nonzero and errno == ERANGE then + OverflowError is raised + + The last rule is used to catch overflow on platforms which follow + C89 but for which HUGE_VAL is not an infinity. + + For the majority of one-argument functions these rules are enough + to ensure that Python's functions behave as specified in 'Annex F' + of the C99 standard, with the 'invalid' and 'divide-by-zero' + floating-point exceptions mapping to Python's ValueError and the + 'overflow' floating-point exception mapping to OverflowError. + math_1 only works for functions that don't have singularities *and* + the possibility of overflow; fortunately, that covers everything we + care about right now. +*/ + static PyObject * math_1_to_whatever(PyObject *arg, double (*func) (double), - PyObject *(*from_double_func) (double)) + PyObject *(*from_double_func) (double), + int can_overflow) { - double x = PyFloat_AsDouble(arg); + double x, r; + x = PyFloat_AsDouble(arg); if (x == -1.0 && PyErr_Occurred()) return NULL; errno = 0; - PyFPE_START_PROTECT("in math_1", return 0) - x = (*func)(x); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_1", return 0); + r = (*func)(x); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x)) + errno = can_overflow ? ERANGE : EDOM; + else + errno = 0; + } + if (errno && is_error(r)) return NULL; else - return (*from_double_func)(x); + return (*from_double_func)(r); } +/* + math_2 is used to wrap a libm function f that takes two double + arguments and returns a double. + + The error reporting follows these rules, which are designed to do + the right thing on C89/C99 platforms and IEEE 754/non IEEE 754 + platforms. + + - a NaN result from non-NaN inputs causes ValueError to be raised + - an infinite result from finite inputs causes OverflowError to be + raised. + - if the result is finite and errno == EDOM then ValueError is + raised + - if the result is finite and nonzero and errno == ERANGE then + OverflowError is raised + + The last rule is used to catch overflow on platforms which follow + C89 but for which HUGE_VAL is not an infinity. + + For most two-argument functions (copysign, fmod, hypot, atan2) + these rules are enough to ensure that Python's functions behave as + specified in 'Annex F' of the C99 standard, with the 'invalid' and + 'divide-by-zero' floating-point exceptions mapping to Python's + ValueError and the 'overflow' floating-point exception mapping to + OverflowError. +*/ + static PyObject * -math_1(PyObject *arg, double (*func) (double)) +math_1(PyObject *arg, double (*func) (double), int can_overflow) { - return math_1_to_whatever(arg, func, PyFloat_FromDouble); + return math_1_to_whatever(arg, func, PyFloat_FromDouble, can_overflow); } static PyObject * -math_1_to_int(PyObject *arg, double (*func) (double)) +math_1_to_int(PyObject *arg, double (*func) (double), int can_overflow) { - return math_1_to_whatever(arg, func, PyLong_FromDouble); + return math_1_to_whatever(arg, func, PyLong_FromDouble, can_overflow); } static PyObject * math_2(PyObject *args, double (*func) (double, double), char *funcname) { PyObject *ox, *oy; - double x, y; + double x, y, r; if (! PyArg_UnpackTuple(args, funcname, 2, 2, &ox, &oy)) return NULL; x = PyFloat_AsDouble(ox); @@ -94,19 +207,30 @@ if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) return NULL; errno = 0; - PyFPE_START_PROTECT("in math_2", return 0) - x = (*func)(x, y); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_2", return 0); + r = (*func)(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + if (errno && is_error(r)) return NULL; else - return PyFloat_FromDouble(x); + return PyFloat_FromDouble(r); } -#define FUNC1(funcname, func, docstring) \ +#define FUNC1(funcname, func, can_overflow, docstring) \ static PyObject * math_##funcname(PyObject *self, PyObject *args) { \ - return math_1(args, func); \ + return math_1(args, func, can_overflow); \ }\ PyDoc_STRVAR(math_##funcname##_doc, docstring); @@ -116,15 +240,21 @@ }\ PyDoc_STRVAR(math_##funcname##_doc, docstring); -FUNC1(acos, acos, +FUNC1(acos, acos, 0, "acos(x)\n\nReturn the arc cosine (measured in radians) of x.") -FUNC1(asin, asin, +FUNC1(acosh, acosh, 0, + "acosh(x)\n\nReturn the hyperbolic arc cosine (measured in radians) of x.") +FUNC1(asin, asin, 0, "asin(x)\n\nReturn the arc sine (measured in radians) of x.") -FUNC1(atan, atan, +FUNC1(asinh, asinh, 0, + "asinh(x)\n\nReturn the hyperbolic arc sine (measured in radians) of x.") +FUNC1(atan, atan, 0, "atan(x)\n\nReturn the arc tangent (measured in radians) of x.") FUNC2(atan2, atan2, "atan2(y, x)\n\nReturn the arc tangent (measured in radians) of y/x.\n" "Unlike atan(y/x), the signs of both x and y are considered.") +FUNC1(atanh, atanh, 0, + "atanh(x)\n\nReturn the hyperbolic arc tangent (measured in radians) of x.") static PyObject * math_ceil(PyObject *self, PyObject *number) { static PyObject *ceil_str = NULL; @@ -138,7 +268,7 @@ method = _PyType_Lookup(Py_TYPE(number), ceil_str); if (method == NULL) - return math_1_to_int(number, ceil); + return math_1_to_int(number, ceil, 0); else return PyObject_CallFunction(method, "O", number); } @@ -147,23 +277,15 @@ "ceil(x)\n\nReturn the ceiling of x as an int.\n" "This is the smallest integral value >= x."); -FUNC1(cos, cos, +FUNC2(copysign, copysign, + "copysign(x,y)\n\nReturn x with the sign of y.") +FUNC1(cos, cos, 0, "cos(x)\n\nReturn the cosine of x (measured in radians).") -FUNC1(cosh, cosh, +FUNC1(cosh, cosh, 1, "cosh(x)\n\nReturn the hyperbolic cosine of x.") - -#ifdef MS_WINDOWS -# define copysign _copysign -# define HAVE_COPYSIGN 1 -#endif -#ifdef HAVE_COPYSIGN -FUNC2(copysign, copysign, - "copysign(x,y)\n\nReturn x with the sign of y."); -#endif - -FUNC1(exp, exp, +FUNC1(exp, exp, 1, "exp(x)\n\nReturn e raised to the power of x.") -FUNC1(fabs, fabs, +FUNC1(fabs, fabs, 0, "fabs(x)\n\nReturn the absolute value of the float x.") static PyObject * math_floor(PyObject *self, PyObject *number) { @@ -178,7 +300,7 @@ method = _PyType_Lookup(Py_TYPE(number), floor_str); if (method == NULL) - return math_1_to_int(number, floor); + return math_1_to_int(number, floor, 0); else return PyObject_CallFunction(method, "O", number); } @@ -187,22 +309,18 @@ "floor(x)\n\nReturn the floor of x as an int.\n" "This is the largest integral value <= x."); -FUNC2(fmod, fmod, - "fmod(x,y)\n\nReturn fmod(x, y), according to platform C." - " x % y may differ.") -FUNC2(hypot, hypot, - "hypot(x,y)\n\nReturn the Euclidean distance, sqrt(x*x + y*y).") -FUNC2(pow, pow, - "pow(x,y)\n\nReturn x**y (x to the power of y).") -FUNC1(sin, sin, +FUNC1(log1p, log1p, 1, + "log1p(x)\n\nReturn the natural logarithm of 1+x (base e).\n\ + The result is computed in a way which is accurate for x near zero.") +FUNC1(sin, sin, 0, "sin(x)\n\nReturn the sine of x (measured in radians).") -FUNC1(sinh, sinh, +FUNC1(sinh, sinh, 1, "sinh(x)\n\nReturn the hyperbolic sine of x.") -FUNC1(sqrt, sqrt, +FUNC1(sqrt, sqrt, 0, "sqrt(x)\n\nReturn the square root of x.") -FUNC1(tan, tan, +FUNC1(tan, tan, 0, "tan(x)\n\nReturn the tangent of x (measured in radians).") -FUNC1(tanh, tanh, +FUNC1(tanh, tanh, 0, "tanh(x)\n\nReturn the hyperbolic tangent of x.") static PyObject * @@ -244,13 +362,17 @@ double x = PyFloat_AsDouble(arg); if (x == -1.0 && PyErr_Occurred()) return NULL; - errno = 0; - x = frexp(x, &i); - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) - return NULL; - else - return Py_BuildValue("(di)", x, i); + /* deal with special cases directly, to sidestep platform + differences */ + if (Py_IS_NAN(x) || Py_IS_INFINITY(x) || !x) { + i = 0; + } + else { + PyFPE_START_PROTECT("in math_frexp", return 0); + x = frexp(x, &i); + PyFPE_END_PROTECT(x); + } + return Py_BuildValue("(di)", x, i); } PyDoc_STRVAR(math_frexp_doc, @@ -263,19 +385,24 @@ static PyObject * math_ldexp(PyObject *self, PyObject *args) { - double x; + double x, r; int exp; if (! PyArg_ParseTuple(args, "di:ldexp", &x, &exp)) return NULL; errno = 0; - PyFPE_START_PROTECT("ldexp", return 0) - x = ldexp(x, exp); - PyFPE_END_PROTECT(x) - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) + PyFPE_START_PROTECT("in math_ldexp", return 0) + r = ldexp(x, exp); + PyFPE_END_PROTECT(r) + if (Py_IS_FINITE(x) && Py_IS_INFINITY(r)) + errno = ERANGE; + /* Windows MSVC8 sets errno = EDOM on ldexp(NaN, i); + we unset it to avoid raising a ValueError here. */ + if (errno == EDOM) + errno = 0; + if (errno && is_error(r)) return NULL; else - return PyFloat_FromDouble(x); + return PyFloat_FromDouble(r); } PyDoc_STRVAR(math_ldexp_doc, @@ -288,12 +415,10 @@ if (x == -1.0 && PyErr_Occurred()) return NULL; errno = 0; + PyFPE_START_PROTECT("in math_modf", return 0); x = modf(x, &y); - Py_SET_ERRNO_ON_MATH_ERROR(x); - if (errno && is_error(x)) - return NULL; - else - return Py_BuildValue("(dd)", x, y); + PyFPE_END_PROTECT(x); + return Py_BuildValue("(dd)", x, y); } PyDoc_STRVAR(math_modf_doc, @@ -332,7 +457,7 @@ } /* Else let libm handle it by itself. */ - return math_1(arg, func); + return math_1(arg, func, 0); } static PyObject * @@ -375,6 +500,141 @@ PyDoc_STRVAR(math_log10_doc, "log10(x) -> the base 10 logarithm of x."); +static PyObject * +math_fmod(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + if (! PyArg_UnpackTuple(args, "fmod", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* fmod(x, +/-Inf) returns x for finite x. */ + if (Py_IS_INFINITY(y) && Py_IS_FINITE(x)) + return PyFloat_FromDouble(x); + errno = 0; + PyFPE_START_PROTECT("in math_fmod", return 0); + r = fmod(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_fmod_doc, +"fmod(x,y)\n\nReturn fmod(x, y), according to platform C." +" x % y may differ."); + +static PyObject * +math_hypot(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + if (! PyArg_UnpackTuple(args, "hypot", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* hypot(x, +/-Inf) returns Inf, even if x is a NaN. */ + if (Py_IS_INFINITY(x)) + return PyFloat_FromDouble(fabs(x)); + if (Py_IS_INFINITY(y)) + return PyFloat_FromDouble(fabs(y)); + errno = 0; + PyFPE_START_PROTECT("in math_hypot", return 0); + r = hypot(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + else if (Py_IS_INFINITY(r)) { + if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_hypot_doc, +"hypot(x,y)\n\nReturn the Euclidean distance, sqrt(x*x + y*y)."); + +/* pow can't use math_2, but needs its own wrapper: the problem is + that an infinite result can arise either as a result of overflow + (in which case OverflowError should be raised) or as a result of + e.g. 0.**-5. (for which ValueError needs to be raised.) +*/ + +static PyObject * +math_pow(PyObject *self, PyObject *args) +{ + PyObject *ox, *oy; + double r, x, y; + + if (! PyArg_UnpackTuple(args, "pow", 2, 2, &ox, &oy)) + return NULL; + x = PyFloat_AsDouble(ox); + y = PyFloat_AsDouble(oy); + if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) + return NULL; + /* 1**x and x**0 return 1., even if x is a NaN or infinity. */ + if (x == 1.0 || y == 0.0) + return PyFloat_FromDouble(1.); + errno = 0; + PyFPE_START_PROTECT("in math_pow", return 0); + r = pow(x, y); + PyFPE_END_PROTECT(r); + if (Py_IS_NAN(r)) { + if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) + errno = EDOM; + else + errno = 0; + } + /* an infinite result arises either from: + + (A) (+/-0.)**negative, + (B) overflow of x**y with both x and y finite (and x nonzero) + (C) (+/-inf)**positive, or + (D) x**inf with |x| > 1, or x**-inf with |x| < 1. + + In case (A) we want ValueError to be raised. In case (B) + OverflowError should be raised. In cases (C) and (D) the infinite + result should be returned. + */ + else if (Py_IS_INFINITY(r)) { + if (x == 0.) + errno = EDOM; + else if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) + errno = ERANGE; + else + errno = 0; + } + + if (errno && is_error(r)) + return NULL; + else + return PyFloat_FromDouble(r); +} + +PyDoc_STRVAR(math_pow_doc, +"pow(x,y)\n\nReturn x**y (x to the power of y)."); + static const double degToRad = Py_MATH_PI / 180.0; static const double radToDeg = 180.0 / Py_MATH_PI; @@ -428,16 +688,16 @@ "isinf(x) -> bool\n\ Checks if float x is infinite (positive or negative)"); - static PyMethodDef math_methods[] = { {"acos", math_acos, METH_O, math_acos_doc}, + {"acosh", math_acosh, METH_O, math_acosh_doc}, {"asin", math_asin, METH_O, math_asin_doc}, + {"asinh", math_asinh, METH_O, math_asinh_doc}, {"atan", math_atan, METH_O, math_atan_doc}, {"atan2", math_atan2, METH_VARARGS, math_atan2_doc}, + {"atanh", math_atanh, METH_O, math_atanh_doc}, {"ceil", math_ceil, METH_O, math_ceil_doc}, -#ifdef HAVE_COPYSIGN {"copysign", math_copysign, METH_VARARGS, math_copysign_doc}, -#endif {"cos", math_cos, METH_O, math_cos_doc}, {"cosh", math_cosh, METH_O, math_cosh_doc}, {"degrees", math_degrees, METH_O, math_degrees_doc}, @@ -451,6 +711,7 @@ {"isnan", math_isnan, METH_O, math_isnan_doc}, {"ldexp", math_ldexp, METH_VARARGS, math_ldexp_doc}, {"log", math_log, METH_VARARGS, math_log_doc}, + {"log1p", math_log1p, METH_O, math_log1p_doc}, {"log10", math_log10, METH_O, math_log10_doc}, {"modf", math_modf, METH_O, math_modf_doc}, {"pow", math_pow, METH_VARARGS, math_pow_doc}, @@ -472,27 +733,15 @@ PyMODINIT_FUNC initmath(void) { - PyObject *m, *d, *v; + PyObject *m; m = Py_InitModule3("math", math_methods, module_doc); if (m == NULL) goto finally; - d = PyModule_GetDict(m); - if (d == NULL) - goto finally; - if (!(v = PyFloat_FromDouble(Py_MATH_PI))) - goto finally; - if (PyDict_SetItemString(d, "pi", v) < 0) - goto finally; - Py_DECREF(v); - - if (!(v = PyFloat_FromDouble(Py_MATH_E))) - goto finally; - if (PyDict_SetItemString(d, "e", v) < 0) - goto finally; - Py_DECREF(v); + PyModule_AddObject(m, "pi", PyFloat_FromDouble(Py_MATH_PI)); + PyModule_AddObject(m, "e", PyFloat_FromDouble(Py_MATH_E)); - finally: + finally: return; } Modified: python/branches/py3k/Objects/complexobject.c ============================================================================== --- python/branches/py3k/Objects/complexobject.c (original) +++ python/branches/py3k/Objects/complexobject.c Sat Apr 19 02:31:39 2008 @@ -187,6 +187,38 @@ } +double +c_abs(Py_complex z) +{ + /* sets errno = ERANGE on overflow; otherwise errno = 0 */ + double result; + + if (!Py_IS_FINITE(z.real) || !Py_IS_FINITE(z.imag)) { + /* C99 rules: if either the real or the imaginary part is an + infinity, return infinity, even if the other part is a + NaN. */ + if (Py_IS_INFINITY(z.real)) { + result = fabs(z.real); + errno = 0; + return result; + } + if (Py_IS_INFINITY(z.imag)) { + result = fabs(z.imag); + errno = 0; + return result; + } + /* either the real or imaginary part is a NaN, + and neither is infinite. Result should be NaN. */ + return Py_NAN; + } + result = hypot(z.real, z.imag); + if (!Py_IS_FINITE(result)) + errno = ERANGE; + else + errno = 0; + return result; +} + static PyObject * complex_subtype_from_c_complex(PyTypeObject *type, Py_complex cval) { @@ -321,8 +353,7 @@ if (!Py_IS_FINITE(v->cval.imag)) { if (Py_IS_NAN(v->cval.imag)) strncpy(buf, "nan*j", 6); - /* else if (copysign(1, v->cval.imag) == 1) */ - else if (v->cval.imag > 0) + else if (copysign(1, v->cval.imag) == 1) strncpy(buf, "inf*j", 6); else strncpy(buf, "-inf*j", 7); @@ -578,9 +609,16 @@ complex_abs(PyComplexObject *v) { double result; + PyFPE_START_PROTECT("complex_abs", return 0) - result = hypot(v->cval.real,v->cval.imag); + result = c_abs(v->cval); PyFPE_END_PROTECT(result) + + if (errno == ERANGE) { + PyErr_SetString(PyExc_OverflowError, + "absolute value too large"); + return NULL; + } return PyFloat_FromDouble(result); } @@ -658,9 +696,29 @@ return Py_BuildValue("(D)", &v->cval); } +#if 0 +static PyObject * +complex_is_finite(PyObject *self) +{ + Py_complex c; + c = ((PyComplexObject *)self)->cval; + return PyBool_FromLong((long)(Py_IS_FINITE(c.real) && + Py_IS_FINITE(c.imag))); +} + +PyDoc_STRVAR(complex_is_finite_doc, +"complex.is_finite() -> bool\n" +"\n" +"Returns True if the real and the imaginary part is finite."); +#endif + static PyMethodDef complex_methods[] = { {"conjugate", (PyCFunction)complex_conjugate, METH_NOARGS, complex_conjugate_doc}, +#if 0 + {"is_finite", (PyCFunction)complex_is_finite, METH_NOARGS, + complex_is_finite_doc}, +#endif {"__getnewargs__", (PyCFunction)complex_getnewargs, METH_NOARGS}, {NULL, NULL} /* sentinel */ }; Deleted: python/branches/py3k/Objects/doubledigits.c ============================================================================== --- python/branches/py3k/Objects/doubledigits.c Sat Apr 19 02:31:39 2008 +++ (empty file) @@ -1,601 +0,0 @@ -/* Free-format floating point printer - * - * Based on "Floating-Point Printer Sample Code", by Robert G. Burger, - * http://www.cs.indiana.edu/~burger/fp/index.html - */ - -#include "Python.h" - -#if defined(__alpha) || defined(__i386) || defined(_M_IX86) || defined(_M_X64) || defined(_M_IA64) -#define LITTLE_ENDIAN_IEEE_DOUBLE -#elif !(defined(__ppc__) || defined(sparc) || defined(__sgi) || defined(_IBMR2) || defined(hpux)) -#error unknown machine type -#endif - -#if defined(_M_IX86) -#define UNSIGNED64 unsigned __int64 -#elif defined(__alpha) -#define UNSIGNED64 unsigned long -#else -#define UNSIGNED64 unsigned long long -#endif - -#ifndef U32 -#define U32 unsigned int -#endif - -/* exponent stored + 1024, hidden bit to left of decimal point */ -#define bias 1023 -#define bitstoright 52 -#define m1mask 0xf -#define hidden_bit 0x100000 -#ifdef LITTLE_ENDIAN_IEEE_DOUBLE -struct dblflt { - unsigned int m4: 16; - unsigned int m3: 16; - unsigned int m2: 16; - unsigned int m1: 4; - unsigned int e: 11; - unsigned int s: 1; -}; -#else -/* Big Endian IEEE Double Floats */ -struct dblflt { - unsigned int s: 1; - unsigned int e: 11; - unsigned int m1: 4; - unsigned int m2: 16; - unsigned int m3: 16; - unsigned int m4: 16; -}; -#endif -#define float_radix 2.147483648e9 - - -typedef UNSIGNED64 Bigit; -#define BIGSIZE 24 -#define MIN_E -1074 -#define MAX_FIVE 325 -#define B_P1 ((Bigit)1 << 52) - -typedef struct { - int l; - Bigit d[BIGSIZE]; -} Bignum; - -static Bignum R, S, MP, MM, five[MAX_FIVE]; -static Bignum S2, S3, S4, S5, S6, S7, S8, S9; -static int ruf, k, s_n, use_mp, qr_shift, sl, slr; - -static void mul10(Bignum *x); -static void big_short_mul(Bignum *x, Bigit y, Bignum *z); -/* -static void print_big(Bignum *x); -*/ -static int estimate(int n); -static void one_shift_left(int y, Bignum *z); -static void short_shift_left(Bigit x, int y, Bignum *z); -static void big_shift_left(Bignum *x, int y, Bignum *z); -static int big_comp(Bignum *x, Bignum *y); -static int sub_big(Bignum *x, Bignum *y, Bignum *z); -static void add_big(Bignum *x, Bignum *y, Bignum *z); -static int add_cmp(void); -static int qr(void); - -/*static int _PyFloat_Digits(char *buf, double v, int *signum);*/ -/*static void _PyFloat_DigitsInit(void);*/ - -#define ADD(x, y, z, k) {\ - Bigit x_add, z_add;\ - x_add = (x);\ - if ((k))\ - z_add = x_add + (y) + 1, (k) = (z_add <= x_add);\ - else\ - z_add = x_add + (y), (k) = (z_add < x_add);\ - (z) = z_add;\ -} - -#define SUB(x, y, z, b) {\ - Bigit x_sub, y_sub;\ - x_sub = (x); y_sub = (y);\ - if ((b))\ - (z) = x_sub - y_sub - 1, b = (y_sub >= x_sub);\ - else\ - (z) = x_sub - y_sub, b = (y_sub > x_sub);\ -} - -#define MUL(x, y, z, k) {\ - Bigit x_mul, low, high;\ - x_mul = (x);\ - low = (x_mul & 0xffffffff) * (y) + (k);\ - high = (x_mul >> 32) * (y) + (low >> 32);\ - (k) = high >> 32;\ - (z) = (low & 0xffffffff) | (high << 32);\ -} - -#define SLL(x, y, z, k) {\ - Bigit x_sll = (x);\ - (z) = (x_sll << (y)) | (k);\ - (k) = x_sll >> (64 - (y));\ -} - -static void -mul10(Bignum *x) -{ - int i, l; - Bigit *p, k; - - l = x->l; - for (i = l, p = &x->d[0], k = 0; i >= 0; i--) - MUL(*p, 10, *p++, k); - if (k != 0) - *p = k, x->l = l+1; -} - -static void -big_short_mul(Bignum *x, Bigit y, Bignum *z) -{ - int i, xl, zl; - Bigit *xp, *zp, k; - U32 high, low; - - xl = x->l; - xp = &x->d[0]; - zl = xl; - zp = &z->d[0]; - high = y >> 32; - low = y & 0xffffffff; - for (i = xl, k = 0; i >= 0; i--, xp++, zp++) { - Bigit xlow, xhigh, z0, t, c, z1; - xlow = *xp & 0xffffffff; - xhigh = *xp >> 32; - z0 = (xlow * low) + k; /* Cout is (z0 < k) */ - t = xhigh * low; - z1 = (xlow * high) + t; - c = (z1 < t); - t = z0 >> 32; - z1 += t; - c += (z1 < t); - *zp = (z1 << 32) | (z0 & 0xffffffff); - k = (xhigh * high) + (c << 32) + (z1 >> 32) + (z0 < k); - } - if (k != 0) - *zp = k, zl++; - z->l = zl; -} - -/* -static void -print_big(Bignum *x) -{ - int i; - Bigit *p; - - printf("#x"); - i = x->l; - p = &x->d[i]; - for (p = &x->d[i]; i >= 0; i--) { - Bigit b = *p--; - printf("%08x%08x", (int)(b >> 32), (int)(b & 0xffffffff)); - } -} -*/ - -static int -estimate(int n) -{ - if (n < 0) - return (int)(n*0.3010299956639812); - else - return 1+(int)(n*0.3010299956639811); -} - -static void -one_shift_left(int y, Bignum *z) -{ - int n, m, i; - Bigit *zp; - - n = y / 64; - m = y % 64; - zp = &z->d[0]; - for (i = n; i > 0; i--) *zp++ = 0; - *zp = (Bigit)1 << m; - z->l = n; -} - -static void -short_shift_left(Bigit x, int y, Bignum *z) -{ - int n, m, i, zl; - Bigit *zp; - - n = y / 64; - m = y % 64; - zl = n; - zp = &(z->d[0]); - for (i = n; i > 0; i--) *zp++ = 0; - if (m == 0) - *zp = x; - else { - Bigit high = x >> (64 - m); - *zp = x << m; - if (high != 0) - *++zp = high, zl++; - } - z->l = zl; -} - -static void -big_shift_left(Bignum *x, int y, Bignum *z) -{ - int n, m, i, xl, zl; - Bigit *xp, *zp, k; - - n = y / 64; - m = y % 64; - xl = x->l; - xp = &(x->d[0]); - zl = xl + n; - zp = &(z->d[0]); - for (i = n; i > 0; i--) *zp++ = 0; - if (m == 0) - for (i = xl; i >= 0; i--) *zp++ = *xp++; - else { - for (i = xl, k = 0; i >= 0; i--) - SLL(*xp++, m, *zp++, k); - if (k != 0) - *zp = k, zl++; - } - z->l = zl; -} - - -static int -big_comp(Bignum *x, Bignum *y) -{ - int i, xl, yl; - Bigit *xp, *yp; - - xl = x->l; - yl = y->l; - if (xl > yl) return 1; - if (xl < yl) return -1; - xp = &x->d[xl]; - yp = &y->d[xl]; - for (i = xl; i >= 0; i--, xp--, yp--) { - Bigit a = *xp; - Bigit b = *yp; - - if (a > b) return 1; - else if (a < b) return -1; - } - return 0; -} - -static int -sub_big(Bignum *x, Bignum *y, Bignum *z) -{ - int xl, yl, zl, b, i; - Bigit *xp, *yp, *zp; - - xl = x->l; - yl = y->l; - if (yl > xl) return 1; - xp = &x->d[0]; - yp = &y->d[0]; - zp = &z->d[0]; - - for (i = yl, b = 0; i >= 0; i--) - SUB(*xp++, *yp++, *zp++, b); - for (i = xl-yl; b && i > 0; i--) { - Bigit x_sub; - x_sub = *xp++; - *zp++ = x_sub - 1; - b = (x_sub == 0); - } - for (; i > 0; i--) *zp++ = *xp++; - if (b) return 1; - zl = xl; - while (*--zp == 0) zl--; - z->l = zl; - return 0; -} - -static void -add_big(Bignum *x, Bignum *y, Bignum *z) -{ - int xl, yl, k, i; - Bigit *xp, *yp, *zp; - - xl = x->l; - yl = y->l; - if (yl > xl) { - int tl; - Bignum *tn; - tl = xl; xl = yl; yl = tl; - tn = x; x = y; y = tn; - } - - xp = &x->d[0]; - yp = &y->d[0]; - zp = &z->d[0]; - - for (i = yl, k = 0; i >= 0; i--) - ADD(*xp++, *yp++, *zp++, k); - for (i = xl-yl; k && i > 0; i--) { - Bigit z_add; - z_add = *xp++ + 1; - k = (z_add == 0); - *zp++ = z_add; - } - for (; i > 0; i--) *zp++ = *xp++; - if (k) - *zp = 1, z->l = xl+1; - else - z->l = xl; -} - -static int -add_cmp() -{ - int rl, ml, sl, suml; - static Bignum sum; - - rl = R.l; - ml = (use_mp ? MP.l : MM.l); - sl = S.l; - - suml = rl >= ml ? rl : ml; - if ((sl > suml+1) || ((sl == suml+1) && (S.d[sl] > 1))) return -1; - if (sl < suml) return 1; - - add_big(&R, (use_mp ? &MP : &MM), &sum); - return big_comp(&sum, &S); -} - -static int -qr() -{ - if (big_comp(&R, &S5) < 0) - if (big_comp(&R, &S2) < 0) - if (big_comp(&R, &S) < 0) - return 0; - else { - sub_big(&R, &S, &R); - return 1; - } - else if (big_comp(&R, &S3) < 0) { - sub_big(&R, &S2, &R); - return 2; - } - else if (big_comp(&R, &S4) < 0) { - sub_big(&R, &S3, &R); - return 3; - } - else { - sub_big(&R, &S4, &R); - return 4; - } - else if (big_comp(&R, &S7) < 0) - if (big_comp(&R, &S6) < 0) { - sub_big(&R, &S5, &R); - return 5; - } - else { - sub_big(&R, &S6, &R); - return 6; - } - else if (big_comp(&R, &S9) < 0) - if (big_comp(&R, &S8) < 0) { - sub_big(&R, &S7, &R); - return 7; - } - else { - sub_big(&R, &S8, &R); - return 8; - } - else { - sub_big(&R, &S9, &R); - return 9; - } -} - -#define OUTDIG(d) { *buf++ = (d) + '0'; *buf = 0; return k; } - -int -_PyFloat_Digits(char *buf, double v, int *signum) -{ - struct dblflt *x; - int sign, e, f_n, m_n, i, d, tc1, tc2; - Bigit f; - - /* decompose float into sign, mantissa & exponent */ - x = (struct dblflt *)&v; - sign = x->s; - e = x->e; - f = (Bigit)(x->m1 << 16 | x->m2) << 32 | (U32)(x->m3 << 16 | x->m4); - if (e != 0) { - e = e - bias - bitstoright; - f |= (Bigit)hidden_bit << 32; - } - else if (f != 0) - /* denormalized */ - e = 1 - bias - bitstoright; - - *signum = sign; - if (f == 0) { - *buf++ = '0'; - *buf = 0; - return 0; - } - - ruf = !(f & 1); /* ruf = (even? f) */ - - /* Compute the scaling factor estimate, k */ - if (e > MIN_E) - k = estimate(e+52); - else { - int n; - Bigit y; - - for (n = e+52, y = (Bigit)1 << 52; f < y; n--) y >>= 1; - k = estimate(n); - } - - if (e >= 0) - if (f != B_P1) - use_mp = 0, f_n = e+1, s_n = 1, m_n = e; - else - use_mp = 1, f_n = e+2, s_n = 2, m_n = e; - else - if ((e == MIN_E) || (f != B_P1)) - use_mp = 0, f_n = 1, s_n = 1-e, m_n = 0; - else - use_mp = 1, f_n = 2, s_n = 2-e, m_n = 0; - - /* Scale it! */ - if (k == 0) { - short_shift_left(f, f_n, &R); - one_shift_left(s_n, &S); - one_shift_left(m_n, &MM); - if (use_mp) one_shift_left(m_n+1, &MP); - qr_shift = 1; - } - else if (k > 0) { - s_n += k; - if (m_n >= s_n) - f_n -= s_n, m_n -= s_n, s_n = 0; - else - f_n -= m_n, s_n -= m_n, m_n = 0; - short_shift_left(f, f_n, &R); - big_shift_left(&five[k-1], s_n, &S); - one_shift_left(m_n, &MM); - if (use_mp) one_shift_left(m_n+1, &MP); - qr_shift = 0; - } - else { - Bignum *power = &five[-k-1]; - - s_n += k; - big_short_mul(power, f, &S); - big_shift_left(&S, f_n, &R); - one_shift_left(s_n, &S); - big_shift_left(power, m_n, &MM); - if (use_mp) big_shift_left(power, m_n+1, &MP); - qr_shift = 1; - } - - /* fixup */ - if (add_cmp() <= -ruf) { - k--; - mul10(&R); - mul10(&MM); - if (use_mp) mul10(&MP); - } - - /* - printf("\nk = %d\n", k); - printf("R = "); print_big(&R); - printf("\nS = "); print_big(&S); - printf("\nM- = "); print_big(&MM); - if (use_mp) printf("\nM+ = "), print_big(&MP); - putchar('\n'); - fflush(0); - */ - - if (qr_shift) { - sl = s_n / 64; - slr = s_n % 64; - } - else { - big_shift_left(&S, 1, &S2); - add_big(&S2, &S, &S3); - big_shift_left(&S2, 1, &S4); - add_big(&S4, &S, &S5); - add_big(&S4, &S2, &S6); - add_big(&S4, &S3, &S7); - big_shift_left(&S4, 1, &S8); - add_big(&S8, &S, &S9); - } - -again: - if (qr_shift) { /* Take advantage of the fact that S = (ash 1 s_n) */ - if (R.l < sl) - d = 0; - else if (R.l == sl) { - Bigit *p; - - p = &R.d[sl]; - d = *p >> slr; - *p &= ((Bigit)1 << slr) - 1; - for (i = sl; (i > 0) && (*p == 0); i--) p--; - R.l = i; - } - else { - Bigit *p; - - p = &R.d[sl+1]; - d = *p << (64 - slr) | *(p-1) >> slr; - p--; - *p &= ((Bigit)1 << slr) - 1; - for (i = sl; (i > 0) && (*p == 0); i--) p--; - R.l = i; - } - } - else /* We need to do quotient-remainder */ - d = qr(); - - tc1 = big_comp(&R, &MM) < ruf; - tc2 = add_cmp() > -ruf; - if (!tc1) - if (!tc2) { - mul10(&R); - mul10(&MM); - if (use_mp) mul10(&MP); - *buf++ = d + '0'; - goto again; - } - else - OUTDIG(d+1) - else - if (!tc2) - OUTDIG(d) - else { - big_shift_left(&R, 1, &MM); - if (big_comp(&MM, &S) == -1) - OUTDIG(d) - else - OUTDIG(d+1) - } -} - -void -_PyFloat_DigitsInit() -{ - int n, i, l; - Bignum *b; - Bigit *xp, *zp, k; - - five[0].l = l = 0; - five[0].d[0] = 5; - for (n = MAX_FIVE-1, b = &five[0]; n > 0; n--) { - xp = &b->d[0]; - b++; - zp = &b->d[0]; - for (i = l, k = 0; i >= 0; i--) - MUL(*xp++, 5, *zp++, k); - if (k != 0) - *zp = k, l++; - b->l = l; - } - - /* - for (n = 1, b = &five[0]; n <= MAX_FIVE; n++) { - big_shift_left(b++, n, &R); - print_big(&R); - putchar('\n'); - } - fflush(0); - */ -} Modified: python/branches/py3k/Objects/floatobject.c ============================================================================== --- python/branches/py3k/Objects/floatobject.c (original) +++ python/branches/py3k/Objects/floatobject.c Sat Apr 19 02:31:39 2008 @@ -16,10 +16,6 @@ #include #endif -#if !defined(__STDC__) -extern double fmod(double, double); -extern double pow(double, double); -#endif #ifdef _OSF_SOURCE /* OSF1 5.1 doesn't make this available with XOPEN_SOURCE_EXTENDED defined */ @@ -224,11 +220,11 @@ p++; } if (PyOS_strnicmp(p, "inf", 4) == 0) { - return PyFloat_FromDouble(sign * Py_HUGE_VAL); + Py_RETURN_INF(sign); } #ifdef Py_NAN if(PyOS_strnicmp(p, "nan", 4) == 0) { - return PyFloat_FromDouble(Py_NAN); + Py_RETURN_NAN; } #endif PyOS_snprintf(buffer, sizeof(buffer), @@ -378,110 +374,6 @@ format_double(buf, buflen, PyFloat_AS_DOUBLE(v), precision); } -#ifdef Py_BROKEN_REPR -/* The following function is based on Tcl_PrintDouble, - * from tclUtil.c. - */ - -#define is_infinite(d) ( (d) > DBL_MAX || (d) < -DBL_MAX ) -#define is_nan(d) ((d) != (d)) - -static void -format_double_repr(char *dst, double value) -{ - char *p, c; - int exp; - int signum; - char buffer[30]; - - /* - * Handle NaN. - */ - - if (is_nan(value)) { - strcpy(dst, "nan"); - return; - } - - /* - * Handle infinities. - */ - - if (is_infinite(value)) { - if (value < 0) { - strcpy(dst, "-inf"); - } else { - strcpy(dst, "inf"); - } - return; - } - - /* - * Ordinary (normal and denormal) values. - */ - - exp = _PyFloat_Digits(buffer, value, &signum)+1; - if (signum) { - *dst++ = '-'; - } - p = buffer; - if (exp < -3 || exp > 17) { - /* - * E format for numbers < 1e-3 or >= 1e17. - */ - - *dst++ = *p++; - c = *p; - if (c != '\0') { - *dst++ = '.'; - while (c != '\0') { - *dst++ = c; - c = *++p; - } - } - sprintf(dst, "e%+d", exp-1); - } else { - /* - * F format for others. - */ - - if (exp <= 0) { - *dst++ = '0'; - } - c = *p; - while (exp-- > 0) { - if (c != '\0') { - *dst++ = c; - c = *++p; - } else { - *dst++ = '0'; - } - } - *dst++ = '.'; - if (c == '\0') { - *dst++ = '0'; - } else { - while (++exp < 0) { - *dst++ = '0'; - } - while (c != '\0') { - *dst++ = c; - c = *++p; - } - } - *dst++ = '\0'; - } -} - -static void -format_float_repr(char *buf, PyFloatObject *v) -{ - assert(PyFloat_Check(v)); - format_double_repr(buf, PyFloat_AS_DOUBLE(v)); -} - -#endif /* Py_BROKEN_REPR */ - /* Macro and helper that convert PyObject obj to a C double and store the value in dbl. If conversion to double raises an exception, obj is set to NULL, and the function invoking this macro returns NULL. If @@ -534,13 +426,8 @@ static PyObject * float_repr(PyFloatObject *v) { -#ifdef Py_BROKEN_REPR - char buf[30]; - format_float_repr(buf, v); -#else char buf[100]; format_float(buf, sizeof(buf), v, PREC_REPR); -#endif return PyUnicode_FromString(buf); } @@ -804,10 +691,13 @@ double a,b; CONVERT_TO_DOUBLE(v, a); CONVERT_TO_DOUBLE(w, b); +#ifdef Py_NAN if (b == 0.0) { - PyErr_SetString(PyExc_ZeroDivisionError, "float division"); + PyErr_SetString(PyExc_ZeroDivisionError, + "float division"); return NULL; } +#endif PyFPE_START_PROTECT("divide", return 0) a = a / b; PyFPE_END_PROTECT(a) @@ -819,12 +709,15 @@ { double vx, wx; double mod; - CONVERT_TO_DOUBLE(v, vx); - CONVERT_TO_DOUBLE(w, wx); + CONVERT_TO_DOUBLE(v, vx); + CONVERT_TO_DOUBLE(w, wx); +#ifdef Py_NAN if (wx == 0.0) { - PyErr_SetString(PyExc_ZeroDivisionError, "float modulo"); + PyErr_SetString(PyExc_ZeroDivisionError, + "float modulo"); return NULL; } +#endif PyFPE_START_PROTECT("modulo", return 0) mod = fmod(vx, wx); /* note: checking mod*wx < 0 is incorrect -- underflows to @@ -928,6 +821,9 @@ } return PyFloat_FromDouble(0.0); } + if (iv == 1.0) { /* 1**w is 1, even 1**inf and 1**nan */ + return PyFloat_FromDouble(1.0); + } if (iv < 0.0) { /* Whether this is an error is a mess, and bumps into libm * bugs so we have to figure it out ourselves. @@ -995,6 +891,57 @@ } static PyObject * +float_is_integer(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + PyObject *o; + + if (x == -1.0 && PyErr_Occurred()) + return NULL; + if (!Py_IS_FINITE(x)) + Py_RETURN_FALSE; + PyFPE_START_PROTECT("is_integer", return NULL) + o = (floor(x) == x) ? Py_True : Py_False; + PyFPE_END_PROTECT(x) + if (errno != 0) { + PyErr_SetFromErrno(errno == ERANGE ? PyExc_OverflowError : + PyExc_ValueError); + return NULL; + } + Py_INCREF(o); + return o; +} + +#if 0 +static PyObject * +float_is_inf(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_INFINITY(x)); +} + +static PyObject * +float_is_nan(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_NAN(x)); +} + +static PyObject * +float_is_finite(PyObject *v) +{ + double x = PyFloat_AsDouble(v); + if (x == -1.0 && PyErr_Occurred()) + return NULL; + return PyBool_FromLong((long)Py_IS_FINITE(x)); +} +#endif + +static PyObject * float_trunc(PyObject *v) { double x = PyFloat_AsDouble(v); @@ -1368,7 +1315,7 @@ static PyMethodDef float_methods[] = { - {"conjugate", (PyCFunction)float_float, METH_NOARGS, + {"conjugate", (PyCFunction)float_float, METH_NOARGS, "Returns self, the complex conjugate of any float."}, {"__trunc__", (PyCFunction)float_trunc, METH_NOARGS, "Returns the Integral closest to x between 0 and x."}, @@ -1377,6 +1324,16 @@ "When an argument is passed, works like built-in round(x, ndigits)."}, {"as_integer_ratio", (PyCFunction)float_as_integer_ratio, METH_NOARGS, float_as_integer_ratio_doc}, + {"is_integer", (PyCFunction)float_is_integer, METH_NOARGS, + "Returns True if the float is an integer."}, +#if 0 + {"is_inf", (PyCFunction)float_is_inf, METH_NOARGS, + "Returns True if the float is positive or negative infinite."}, + {"is_finite", (PyCFunction)float_is_finite, METH_NOARGS, + "Returns True if the float is finite, neither infinite nor NaN."}, + {"is_nan", (PyCFunction)float_is_nan, METH_NOARGS, + "Returns True if the float is not a number (NaN)."}, +#endif {"__getnewargs__", (PyCFunction)float_getnewargs, METH_NOARGS}, {"__getformat__", (PyCFunction)float_getformat, METH_O|METH_CLASS, float_getformat_doc}, @@ -1534,10 +1491,6 @@ double_format = detected_double_format; float_format = detected_float_format; -#ifdef Py_BROKEN_REPR - /* Initialize floating point repr */ - _PyFloat_DigitsInit(); -#endif /* Init float info */ if (FloatInfoType.tp_name == 0) PyStructSequence_InitType(&FloatInfoType, &floatinfo_desc); Modified: python/branches/py3k/Objects/longobject.c ============================================================================== --- python/branches/py3k/Objects/longobject.c (original) +++ python/branches/py3k/Objects/longobject.c Sat Apr 19 02:31:39 2008 @@ -3611,9 +3611,21 @@ #undef UNDEF_NDIGITS } +#if 0 +static PyObject * +long_is_finite(PyObject *v) +{ + Py_RETURN_TRUE; +} +#endif + static PyMethodDef long_methods[] = { {"conjugate", (PyCFunction)long_long, METH_NOARGS, "Returns self, the complex conjugate of any int."}, +#if 0 + {"is_finite", (PyCFunction)long_is_finite, METH_NOARGS, + "Returns always True."}, +#endif {"__trunc__", (PyCFunction)long_long, METH_NOARGS, "Truncating an Integral returns itself."}, {"__floor__", (PyCFunction)long_long, METH_NOARGS, Modified: python/branches/py3k/PC/VC6/pythoncore.dsp ============================================================================== --- python/branches/py3k/PC/VC6/pythoncore.dsp (original) +++ python/branches/py3k/PC/VC6/pythoncore.dsp Sat Apr 19 02:31:39 2008 @@ -587,6 +587,10 @@ # End Source File # Begin Source File +SOURCE=..\..\Python\pymath.c +# End Source File +# Begin Source File + SOURCE=..\..\Python\pystate.c # End Source File # Begin Source File Modified: python/branches/py3k/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/branches/py3k/PC/VS7.1/pythoncore.vcproj (original) +++ python/branches/py3k/PC/VS7.1/pythoncore.vcproj Sat Apr 19 02:31:39 2008 @@ -698,6 +698,9 @@ RelativePath="..\..\Python\pyfpe.c"> + + + + Modified: python/branches/py3k/PC/pyconfig.h ============================================================================== --- python/branches/py3k/PC/pyconfig.h (original) +++ python/branches/py3k/PC/pyconfig.h Sat Apr 19 02:31:39 2008 @@ -207,12 +207,13 @@ #endif /* MS_WIN32 && !MS_WIN64 */ typedef int pid_t; -#define hypot _hypot #include #define Py_IS_NAN _isnan #define Py_IS_INFINITY(X) (!_finite(X) && !_isnan(X)) #define Py_IS_FINITE(X) _finite(X) +#define copysign _copysign +#define hypot _hypot #endif /* _MSC_VER */ @@ -392,7 +393,7 @@ /* Fairly standard from here! */ /* Define to 1 if you have the `copysign' function. */ -/* #define HAVE_COPYSIGN 1*/ +#define HAVE_COPYSIGN 1 /* Define to 1 if you have the `isinf' function. */ #define HAVE_ISINF 1 Modified: python/branches/py3k/PCbuild/pythoncore.vcproj ============================================================================== --- python/branches/py3k/PCbuild/pythoncore.vcproj (original) +++ python/branches/py3k/PCbuild/pythoncore.vcproj Sat Apr 19 02:31:39 2008 @@ -871,6 +871,10 @@ > + + @@ -1707,6 +1711,10 @@ > + + Deleted: python/branches/py3k/Python/hypot.c ============================================================================== --- python/branches/py3k/Python/hypot.c Sat Apr 19 02:31:39 2008 +++ (empty file) @@ -1,25 +0,0 @@ -/* hypot() replacement */ - -#include "Python.h" - -#ifndef HAVE_HYPOT -double hypot(double x, double y) -{ - double yx; - - x = fabs(x); - y = fabs(y); - if (x < y) { - double temp = x; - x = y; - y = temp; - } - if (x == 0.) - return 0.; - else { - yx = y/x; - return x*sqrt(1.+yx*yx); - } -} -#endif /* HAVE_HYPOT */ - Modified: python/branches/py3k/configure ============================================================================== --- python/branches/py3k/configure (original) +++ python/branches/py3k/configure Sat Apr 19 02:31:39 2008 @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 62003 . +# From configure.in Revision: 62146 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for python 3.0. # From python-checkins at python.org Sat Apr 19 02:55:40 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 02:55:40 +0200 (CEST) Subject: [Python-checkins] r62385 - in python/branches/py3k: Doc/ACKS.txt Doc/howto/doanddont.rst Doc/library/decimal.rst Doc/library/itertools.rst Doc/library/mmap.rst Doc/library/pkgutil.rst Doc/library/profile.rst Doc/library/ssl.rst Doc/reference/compound_stmts.rst Doc/tutorial/controlflow.rst Lib/pkgutil.py Lib/test/regrtest.py Lib/test/test_frozen.py Lib/test/test_pkg.py Lib/test/test_pkgutil.py Lib/test/test_profile.py Lib/test/test_structmembers.py Lib/test/test_warnings.py Lib/test/test_xmlrpc.py Lib/xmlrpclib.py Objects/longobject.c Python/sysmodule.c Message-ID: <20080419005540.2997A1E4018@bag.python.org> Author: christian.heimes Date: Sat Apr 19 02:55:37 2008 New Revision: 62385 Log: Merged revisions 62350-62355,62358-62359,62364-62365,62370,62372-62375,62378-62379,62381 via svnmerge from svn+ssh://pythondev at svn.python.org/python/trunk ........ r62350 | nick.coghlan | 2008-04-15 12:25:31 +0200 (Tue, 15 Apr 2008) | 1 line Issue 2439: add pkgutils.get_data() as a convenience wrapper for the PEP 302 get_data() API (contributed by Paul Moore) ........ r62351 | nick.coghlan | 2008-04-15 12:28:14 +0200 (Tue, 15 Apr 2008) | 1 line Add test file missing from rev 62350 ........ r62352 | benjamin.peterson | 2008-04-15 13:58:46 +0200 (Tue, 15 Apr 2008) | 2 lines Add myself to Doc/ACKS.txt ........ r62353 | andrew.kuchling | 2008-04-15 15:10:07 +0200 (Tue, 15 Apr 2008) | 6 lines Add *,**,@ to index, as suggested by http://farmdev.com/thoughts/24/what-does-the-def-star-variable-or-def-asterisk-parameter-syntax-do-in-python-/ The right entry type to use isn't clear; operator seems wrong, because *,**,@ aren't being used in expressions here. I put them as 'statement'; 'syntax' might be better. ........ r62354 | andrew.kuchling | 2008-04-15 15:10:41 +0200 (Tue, 15 Apr 2008) | 1 line Typo fix ........ r62355 | mark.dickinson | 2008-04-15 22:51:18 +0200 (Tue, 15 Apr 2008) | 3 lines Fix for possible signed overflow: the behaviour of -LONG_MIN is undefined in ANSI C. ........ r62358 | jeroen.ruigrok | 2008-04-16 14:47:01 +0200 (Wed, 16 Apr 2008) | 2 lines Reformat to 80 columns prior to adding documentation. ........ r62359 | jeroen.ruigrok | 2008-04-16 14:57:43 +0200 (Wed, 16 Apr 2008) | 2 lines Add details about the return value for mmap.flush(). ........ r62364 | raymond.hettinger | 2008-04-17 12:48:31 +0200 (Thu, 17 Apr 2008) | 1 line Issue 2648: Add leading zero to money format recipe in the docs. ........ r62365 | jeroen.ruigrok | 2008-04-17 14:39:45 +0200 (Thu, 17 Apr 2008) | 2 lines Be consistent in the use of read-only. ........ r62370 | andrew.kuchling | 2008-04-17 22:44:06 +0200 (Thu, 17 Apr 2008) | 1 line Typo fixes ........ r62372 | andrew.kuchling | 2008-04-18 04:40:47 +0200 (Fri, 18 Apr 2008) | 1 line Use correct parameter name ........ r62373 | andrew.kuchling | 2008-04-18 18:53:09 +0200 (Fri, 18 Apr 2008) | 1 line #2654: fix typo ........ r62374 | andrew.kuchling | 2008-04-18 20:28:23 +0200 (Fri, 18 Apr 2008) | 4 lines Remove personal note from Jim Roskind; it no longer applies, and the e-mail address is for a previous employer. Can we move the big long copyright statement into a sidebar or something? ........ r62375 | andrew.kuchling | 2008-04-18 20:39:55 +0200 (Fri, 18 Apr 2008) | 1 line Rewrite introductory section, and remove old section. (It was already commented-out, but why keep it?) ........ r62378 | skip.montanaro | 2008-04-18 22:35:46 +0200 (Fri, 18 Apr 2008) | 1 line resolve issue 2014 ........ r62379 | benjamin.peterson | 2008-04-18 22:45:33 +0200 (Fri, 18 Apr 2008) | 2 lines Fix indentation in sysmodule.c ........ r62381 | amaury.forgeotdarc | 2008-04-19 01:31:33 +0200 (Sat, 19 Apr 2008) | 3 lines Some tests did not pass on repeated calls (regrtest -R::) Perform additional cleanup, mostly deleting from sys.modules, or clearing the warnings registry. ........ Added: python/branches/py3k/Lib/test/test_pkgutil.py - copied, changed from r62379, /python/trunk/Lib/test/test_pkgutil.py Modified: python/branches/py3k/ (props changed) python/branches/py3k/Doc/ACKS.txt python/branches/py3k/Doc/howto/doanddont.rst python/branches/py3k/Doc/library/decimal.rst python/branches/py3k/Doc/library/itertools.rst python/branches/py3k/Doc/library/mmap.rst python/branches/py3k/Doc/library/pkgutil.rst python/branches/py3k/Doc/library/profile.rst python/branches/py3k/Doc/library/ssl.rst python/branches/py3k/Doc/reference/compound_stmts.rst python/branches/py3k/Doc/tutorial/controlflow.rst python/branches/py3k/Lib/pkgutil.py python/branches/py3k/Lib/test/regrtest.py python/branches/py3k/Lib/test/test_frozen.py python/branches/py3k/Lib/test/test_pkg.py python/branches/py3k/Lib/test/test_profile.py python/branches/py3k/Lib/test/test_structmembers.py python/branches/py3k/Lib/test/test_warnings.py python/branches/py3k/Lib/test/test_xmlrpc.py python/branches/py3k/Lib/xmlrpclib.py python/branches/py3k/Objects/longobject.c python/branches/py3k/Python/sysmodule.c Modified: python/branches/py3k/Doc/ACKS.txt ============================================================================== --- python/branches/py3k/Doc/ACKS.txt (original) +++ python/branches/py3k/Doc/ACKS.txt Sat Apr 19 02:55:37 2008 @@ -145,6 +145,7 @@ * Harri Pasanen * Bo Peng * Tim Peters + * Benjamin Peterson * Christopher Petrilli * Justin D. Pettit * Chris Phoenix Modified: python/branches/py3k/Doc/howto/doanddont.rst ============================================================================== --- python/branches/py3k/Doc/howto/doanddont.rst (original) +++ python/branches/py3k/Doc/howto/doanddont.rst Sat Apr 19 02:55:37 2008 @@ -4,7 +4,7 @@ :Author: Moshe Zadka -This document is placed in the public doman. +This document is placed in the public domain. .. topic:: Abstract Modified: python/branches/py3k/Doc/library/decimal.rst ============================================================================== --- python/branches/py3k/Doc/library/decimal.rst (original) +++ python/branches/py3k/Doc/library/decimal.rst Sat Apr 19 02:55:37 2008 @@ -1374,7 +1374,7 @@ >>> moneyfmt(Decimal(123456789), sep=' ') '123 456 789.00' >>> moneyfmt(Decimal('-0.02'), neg='<', trailneg='>') - '<.02>' + '<0.02>' """ q = Decimal(10) ** -places # 2 places --> '0.01' @@ -1387,6 +1387,8 @@ for i in range(places): build(next() if digits else '0') build(dp) + if not digits: + build('0') i = 0 while digits: build(next()) Modified: python/branches/py3k/Doc/library/itertools.rst ============================================================================== --- python/branches/py3k/Doc/library/itertools.rst (original) +++ python/branches/py3k/Doc/library/itertools.rst Sat Apr 19 02:55:37 2008 @@ -96,7 +96,7 @@ .. function:: combinations(iterable, r) - Return successive *r* length combinations of elements in the *iterable*. + Return *r* length subsequences of elements from the input *iterable*. Combinations are emitted in lexicographic sort order. So, if the input *iterable* is sorted, the combination tuples will be produced @@ -106,9 +106,6 @@ value. So if the input elements are unique, there will be no repeat values in each combination. - Each result tuple is ordered to match the input order. So, every - combination is a subsequence of the input *iterable*. - Equivalent to:: def combinations(iterable, r): @@ -375,11 +372,10 @@ Equivalent to nested for-loops in a generator expression. For example, ``product(A, B)`` returns the same as ``((x,y) for x in A for y in B)``. - The leftmost iterators correspond to the outermost for-loop, so the output - tuples cycle like an odometer (with the rightmost element changing on every - iteration). This results in a lexicographic ordering so that if the - inputs iterables are sorted, the product tuples are emitted - in sorted order. + The nested loops cycle like an odometer with the rightmost element advancing + on every iteration. This pattern creates a lexicographic ordering so that if + the input's iterables are sorted, the product tuples are emitted in sorted + order. To compute the product of an iterable with itself, specify the number of repetitions with the optional *repeat* keyword argument. For example, Modified: python/branches/py3k/Doc/library/mmap.rst ============================================================================== --- python/branches/py3k/Doc/library/mmap.rst (original) +++ python/branches/py3k/Doc/library/mmap.rst Sat Apr 19 02:55:37 2008 @@ -8,54 +8,55 @@ Memory-mapped file objects behave like both strings and like file objects. Unlike normal string objects, however, these are mutable. You can use mmap -objects in most places where strings are expected; for example, you can use the -:mod:`re` module to search through a memory-mapped file. Since they're mutable, -you can change a single character by doing ``obj[index] = 'a'``, or change a -substring by assigning to a slice: ``obj[i1:i2] = '...'``. You can also read -and write data starting at the current file position, and :meth:`seek` through -the file to different positions. - -A memory-mapped file is created by the :class:`mmap` constructor, which is different -on Unix and on Windows. In either case you must provide a file descriptor for a -file opened for update. If you wish to map an existing Python file object, use -its :meth:`fileno` method to obtain the correct value for the *fileno* -parameter. Otherwise, you can open the file using the :func:`os.open` function, -which returns a file descriptor directly (the file still needs to be closed when -done). +objects in most places where strings are expected; for example, you can use +the :mod:`re` module to search through a memory-mapped file. Since they're +mutable, you can change a single character by doing ``obj[index] = 'a'``, or +change a substring by assigning to a slice: ``obj[i1:i2] = '...'``. You can +also read and write data starting at the current file position, and +:meth:`seek` through the file to different positions. + +A memory-mapped file is created by the :class:`mmap` constructor, which is +different on Unix and on Windows. In either case you must provide a file +descriptor for a file opened for update. If you wish to map an existing Python +file object, use its :meth:`fileno` method to obtain the correct value for the +*fileno* parameter. Otherwise, you can open the file using the +:func:`os.open` function, which returns a file descriptor directly (the file +still needs to be closed when done). For both the Unix and Windows versions of the constructor, *access* may be specified as an optional keyword parameter. *access* accepts one of three -values: :const:`ACCESS_READ`, :const:`ACCESS_WRITE`, or :const:`ACCESS_COPY` to -specify readonly, write-through or copy-on-write memory respectively. *access* -can be used on both Unix and Windows. If *access* is not specified, Windows -mmap returns a write-through mapping. The initial memory values for all three -access types are taken from the specified file. Assignment to an -:const:`ACCESS_READ` memory map raises a :exc:`TypeError` exception. Assignment -to an :const:`ACCESS_WRITE` memory map affects both memory and the underlying -file. Assignment to an :const:`ACCESS_COPY` memory map affects memory but does -not update the underlying file. +values: :const:`ACCESS_READ`, :const:`ACCESS_WRITE`, or :const:`ACCESS_COPY` +to specify read-only, write-through or copy-on-write memory respectively. +*access* can be used on both Unix and Windows. If *access* is not specified, +Windows mmap returns a write-through mapping. The initial memory values for +all three access types are taken from the specified file. Assignment to an +:const:`ACCESS_READ` memory map raises a :exc:`TypeError` exception. +Assignment to an :const:`ACCESS_WRITE` memory map affects both memory and the +underlying file. Assignment to an :const:`ACCESS_COPY` memory map affects +memory but does not update the underlying file. To map anonymous memory, -1 should be passed as the fileno along with the length. .. class:: mmap(fileno, length[, tagname[, access[, offset]]]) - **(Windows version)** Maps *length* bytes from the file specified by the file - handle *fileno*, and creates a mmap object. If *length* is larger than the - current size of the file, the file is extended to contain *length* bytes. If - *length* is ``0``, the maximum length of the map is the current size of the - file, except that if the file is empty Windows raises an exception (you cannot - create an empty mapping on Windows). - - *tagname*, if specified and not ``None``, is a string giving a tag name for the - mapping. Windows allows you to have many different mappings against the same - file. If you specify the name of an existing tag, that tag is opened, otherwise - a new tag of this name is created. If this parameter is omitted or ``None``, - the mapping is created without a name. Avoiding the use of the tag parameter - will assist in keeping your code portable between Unix and Windows. - - *offset* may be specified as a non-negative integer offset. mmap references will - be relative to the offset from the beginning of the file. *offset* defaults to 0. - *offset* must be a multiple of the ALLOCATIONGRANULARITY. + **(Windows version)** Maps *length* bytes from the file specified by the + file handle *fileno*, and creates a mmap object. If *length* is larger + than the current size of the file, the file is extended to contain *length* + bytes. If *length* is ``0``, the maximum length of the map is the current + size of the file, except that if the file is empty Windows raises an + exception (you cannot create an empty mapping on Windows). + + *tagname*, if specified and not ``None``, is a string giving a tag name for + the mapping. Windows allows you to have many different mappings against + the same file. If you specify the name of an existing tag, that tag is + opened, otherwise a new tag of this name is created. If this parameter is + omitted or ``None``, the mapping is created without a name. Avoiding the + use of the tag parameter will assist in keeping your code portable between + Unix and Windows. + + *offset* may be specified as a non-negative integer offset. mmap references + will be relative to the offset from the beginning of the file. *offset* + defaults to 0. *offset* must be a multiple of the ALLOCATIONGRANULARITY. .. class:: mmap(fileno, length[, flags[, prot[, access[, offset]]]]) @@ -63,26 +64,29 @@ **(Unix version)** Maps *length* bytes from the file specified by the file descriptor *fileno*, and returns a mmap object. If *length* is ``0``, the - maximum length of the map will be the current size of the file when :class:`mmap` - is called. + maximum length of the map will be the current size of the file when + :class:`mmap` is called. *flags* specifies the nature of the mapping. :const:`MAP_PRIVATE` creates a - private copy-on-write mapping, so changes to the contents of the mmap object - will be private to this process, and :const:`MAP_SHARED` creates a mapping - that's shared with all other processes mapping the same areas of the file. The - default value is :const:`MAP_SHARED`. - - *prot*, if specified, gives the desired memory protection; the two most useful - values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify that the pages - may be read or written. *prot* defaults to :const:`PROT_READ \| PROT_WRITE`. - - *access* may be specified in lieu of *flags* and *prot* as an optional keyword - parameter. It is an error to specify both *flags*, *prot* and *access*. See - the description of *access* above for information on how to use this parameter. - - *offset* may be specified as a non-negative integer offset. mmap references will - be relative to the offset from the beginning of the file. *offset* defaults to 0. - *offset* must be a multiple of the PAGESIZE or ALLOCATIONGRANULARITY. + private copy-on-write mapping, so changes to the contents of the mmap + object will be private to this process, and :const:`MAP_SHARED` creates a + mapping that's shared with all other processes mapping the same areas of + the file. The default value is :const:`MAP_SHARED`. + + *prot*, if specified, gives the desired memory protection; the two most + useful values are :const:`PROT_READ` and :const:`PROT_WRITE`, to specify + that the pages may be read or written. *prot* defaults to + :const:`PROT_READ \| PROT_WRITE`. + + *access* may be specified in lieu of *flags* and *prot* as an optional + keyword parameter. It is an error to specify both *flags*, *prot* and + *access*. See the description of *access* above for information on how to + use this parameter. + + *offset* may be specified as a non-negative integer offset. mmap references + will be relative to the offset from the beginning of the file. *offset* + defaults to 0. *offset* must be a multiple of the PAGESIZE or + ALLOCATIONGRANULARITY. This example shows a simple way of using :class:`mmap`:: @@ -132,32 +136,38 @@ .. method:: mmap.close() - Close the file. Subsequent calls to other methods of the object will result in - an exception being raised. + Close the file. Subsequent calls to other methods of the object will + result in an exception being raised. .. method:: mmap.find(string[, start[, end]]) - Returns the lowest index in the object where the substring *string* is found, - such that *string* is contained in the range [*start*, *end*]. Optional - arguments *start* and *end* are interpreted as in slice notation. + Returns the lowest index in the object where the substring *string* is + found, such that *string* is contained in the range [*start*, *end*]. + Optional arguments *start* and *end* are interpreted as in slice notation. Returns ``-1`` on failure. .. method:: mmap.flush([offset, size]) - Flushes changes made to the in-memory copy of a file back to disk. Without use - of this call there is no guarantee that changes are written back before the - object is destroyed. If *offset* and *size* are specified, only changes to the - given range of bytes will be flushed to disk; otherwise, the whole extent of the - mapping is flushed. + Flushes changes made to the in-memory copy of a file back to disk. Without + use of this call there is no guarantee that changes are written back before + the object is destroyed. If *offset* and *size* are specified, only + changes to the given range of bytes will be flushed to disk; otherwise, the + whole extent of the mapping is flushed. + + **(Windows version)** A nonzero value returned indicates success; zero + indicates failure. + + **(Unix version)** A zero value is returned to indicate success. An + exception is raised when the call failed. .. method:: mmap.move(dest, src, count) - Copy the *count* bytes starting at offset *src* to the destination index *dest*. - If the mmap was created with :const:`ACCESS_READ`, then calls to move will throw - a :exc:`TypeError` exception. + Copy the *count* bytes starting at offset *src* to the destination index + *dest*. If the mmap was created with :const:`ACCESS_READ`, then calls to + move will throw a :exc:`TypeError` exception. .. method:: mmap.read(num) @@ -175,31 +185,31 @@ .. method:: mmap.readline() - Returns a single line, starting at the current file position and up to the next - newline. + Returns a single line, starting at the current file position and up to the + next newline. .. method:: mmap.resize(newsize) - Resizes the map and the underlying file, if any. If the mmap was created with - :const:`ACCESS_READ` or :const:`ACCESS_COPY`, resizing the map will throw a - :exc:`TypeError` exception. + Resizes the map and the underlying file, if any. If the mmap was created + with :const:`ACCESS_READ` or :const:`ACCESS_COPY`, resizing the map will + throw a :exc:`TypeError` exception. .. method:: mmap.rfind(string[, start[, end]]) Returns the highest index in the object where the substring *string* is - found, such that *string* is contained in the range [*start*, - *end*]. Optional arguments *start* and *end* are interpreted as in slice - notation. Returns ``-1`` on failure. + found, such that *string* is contained in the range [*start*, *end*]. + Optional arguments *start* and *end* are interpreted as in slice notation. + Returns ``-1`` on failure. .. method:: mmap.seek(pos[, whence]) - Set the file's current position. *whence* argument is optional and defaults to - ``os.SEEK_SET`` or ``0`` (absolute file positioning); other values are - ``os.SEEK_CUR`` or ``1`` (seek relative to the current position) and - ``os.SEEK_END`` or ``2`` (seek relative to the file's end). + Set the file's current position. *whence* argument is optional and + defaults to ``os.SEEK_SET`` or ``0`` (absolute file positioning); other + values are ``os.SEEK_CUR`` or ``1`` (seek relative to the current position) + and ``os.SEEK_END`` or ``2`` (seek relative to the file's end). .. method:: mmap.size() @@ -217,15 +227,15 @@ Write the bytes in *string* into memory at the current position of the file pointer; the file position is updated to point after the bytes that were - written. If the mmap was created with :const:`ACCESS_READ`, then writing to it - will throw a :exc:`TypeError` exception. + written. If the mmap was created with :const:`ACCESS_READ`, then writing to + it will throw a :exc:`TypeError` exception. .. method:: mmap.write_byte(byte) - Write the single-character string *byte* into memory at the current position of - the file pointer; the file position is advanced by ``1``. If the mmap was - created with :const:`ACCESS_READ`, then writing to it will throw a - :exc:`TypeError` exception. + Write the single-character string *byte* into memory at the current + position of the file pointer; the file position is advanced by ``1``. If + the mmap was created with :const:`ACCESS_READ`, then writing to it will + throw a :exc:`TypeError` exception. Modified: python/branches/py3k/Doc/library/pkgutil.rst ============================================================================== --- python/branches/py3k/Doc/library/pkgutil.rst (original) +++ python/branches/py3k/Doc/library/pkgutil.rst Sat Apr 19 02:55:37 2008 @@ -6,7 +6,7 @@ :synopsis: Utilities to support extension of packages. -This module provides a single function: +This module provides functions to manipulate packages: .. function:: extend_path(path, name) @@ -38,3 +38,24 @@ ``sys.path`` that cause errors when used as filenames may cause this function to raise an exception (in line with :func:`os.path.isdir` behavior). +.. function:: get_data(package, resource) + + Get a resource from a package. + + This is a wrapper round the PEP 302 loader :func:`get_data` API. The package + argument should be the name of a package, in standard module format + (foo.bar). The resource argument should be in the form of a relative + filename, using ``/`` as the path separator. The parent directory name + ``..`` is not allowed, and nor is a rooted name (starting with a ``/``). + + The function returns a binary string, which is the contents of the + specified resource. + + For packages located in the filesystem, which have already been imported, + this is the rough equivalent of:: + + d = os.path.dirname(sys.modules[package].__file__) + data = open(os.path.join(d, resource), 'rb').read() + + If the package cannot be located or loaded, or it uses a PEP 302 loader + which does not support :func:`get_data`, then None is returned. Modified: python/branches/py3k/Doc/library/profile.rst ============================================================================== --- python/branches/py3k/Doc/library/profile.rst (original) +++ python/branches/py3k/Doc/library/profile.rst Sat Apr 19 02:55:37 2008 @@ -32,15 +32,6 @@ WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -The profiler was written after only programming in Python for 3 weeks. As a -result, it is probably clumsy code, but I don't know for sure yet 'cause I'm a -beginner :-). I did work hard to make the code run fast, so that profiling -would be a reasonable thing to do. I tried not to repeat code fragments, but -I'm sure I did some stuff in really awkward ways at times. Please send -suggestions for improvements to: jar at netscape.com. I won't promise *any* -support. ...but I'd appreciate the feedback. - - .. _profiler-introduction: Introduction to the profilers @@ -50,69 +41,38 @@ single: deterministic profiling single: profiling, deterministic -A :dfn:`profiler` is a program that describes the run time performance of a -program, providing a variety of statistics. This documentation describes the -profiler functionality provided in the modules :mod:`profile` and :mod:`pstats`. -This profiler provides :dfn:`deterministic profiling` of any Python programs. -It also provides a series of report generation tools to allow users to rapidly +A :dfn:`profiler` is a program that describes the run time performance +of a program, providing a variety of statistics. This documentation +describes the profiler functionality provided in the modules +:mod:`cProfile`, :mod:`profile` and :mod:`pstats`. This profiler +provides :dfn:`deterministic profiling` of Python programs. It also +provides a series of report generation tools to allow users to rapidly examine the results of a profile operation. The Python standard library provides two different profilers: -#. :mod:`profile`, a pure Python module, described in the sequel. Copyright ? - 1994, by InfoSeek Corporation. - -#. :mod:`cProfile`, a module written in C, with a reasonable overhead that makes - it suitable for profiling long-running programs. Based on :mod:`lsprof`, - contributed by Brett Rosen and Ted Czotter. +#. :mod:`cProfile` is recommended for most users; it's a C extension + with reasonable overhead + that makes it suitable for profiling long-running programs. + Based on :mod:`lsprof`, + contributed by Brett Rosen and Ted Czotter. + +#. :mod:`profile`, a pure Python module whose interface is imitated by + :mod:`cProfile`. Adds significant overhead to profiled programs. + If you're trying to extend + the profiler in some way, the task might be easier with this module. + Copyright ? 1994, by InfoSeek Corporation. The :mod:`profile` and :mod:`cProfile` modules export the same interface, so -they are mostly interchangeables; :mod:`cProfile` has a much lower overhead but -is not so far as well-tested and might not be available on all systems. +they are mostly interchangeable; :mod:`cProfile` has a much lower overhead but +is newer and might not be available on all systems. :mod:`cProfile` is really a compatibility layer on top of the internal +<<<<<<< .working :mod:`_lsprof` module. - -.. \section{How Is This Profiler Different From The Old Profiler?} - \nodename{Profiler Changes} - - (This section is of historical importance only; the old profiler - discussed here was last seen in Python 1.1.) - - The big changes from old profiling module are that you get more - information, and you pay less CPU time. It's not a trade-off, it's a - trade-up. - - To be specific: - - \begin{description} - - \item[Bugs removed:] - Local stack frame is no longer molested, execution time is now charged - to correct functions. - - \item[Accuracy increased:] - Profiler execution time is no longer charged to user's code, - calibration for platform is supported, file reads are not done \emph{by} - profiler \emph{during} profiling (and charged to user's code!). - - \item[Speed increased:] - Overhead CPU cost was reduced by more than a factor of two (perhaps a - factor of five), lightweight profiler module is all that must be - loaded, and the report generating module (\module{pstats}) is not needed - during profiling. - - \item[Recursive functions support:] - Cumulative times in recursive functions are correctly calculated; - recursive entries are counted. - - \item[Large growth in report generating UI:] - Distinct profiles runs can be added together forming a comprehensive - report; functions that import statistics take arbitrary lists of - files; sorting criteria is now based on keywords (instead of 4 integer - options); reports shows what functions were profiled as well as what - profile file was referenced; output format has been improved. - - \end{description} +======= +:mod:`_lsprof` module. The :mod:`hotshot` module is reserved for specialized +usage. +>>>>>>> .merge-right.r62379 .. _profile-instant: Modified: python/branches/py3k/Doc/library/ssl.rst ============================================================================== --- python/branches/py3k/Doc/library/ssl.rst (original) +++ python/branches/py3k/Doc/library/ssl.rst Sat Apr 19 02:55:37 2008 @@ -543,7 +543,7 @@ server_side=True, certfile="mycertfile", keyfile="mykeyfile", - ssl_protocol=ssl.PROTOCOL_TLSv1) + ssl_version=ssl.PROTOCOL_TLSv1) deal_with_client(connstream) Then you'd read data from the ``connstream`` and do something with it till you are finished with the client (or the client is finished with you):: Modified: python/branches/py3k/Doc/reference/compound_stmts.rst ============================================================================== --- python/branches/py3k/Doc/reference/compound_stmts.rst (original) +++ python/branches/py3k/Doc/reference/compound_stmts.rst Sat Apr 19 02:55:37 2008 @@ -446,6 +446,9 @@ The function definition does not execute the function body; this gets executed only when the function is called. +.. index:: + statement: @ + A function definition may be wrapped by one or more :term:`decorator` expressions. Decorator expressions are evaluated when the function is defined, in the scope that contains the function definition. The result must be a callable, which is @@ -486,7 +489,11 @@ penguin.append("property of the zoo") return penguin -Function call semantics are described in more detail in section :ref:`calls`. A +.. index:: + statement: * + statement: ** + +Function call semantics are described in more detail in section :ref:`calls`. A function call always assigns values to all parameters mentioned in the parameter list, either from position arguments, from keyword arguments, or from default values. If the form "``*identifier``" is present, it is initialized to a tuple Modified: python/branches/py3k/Doc/tutorial/controlflow.rst ============================================================================== --- python/branches/py3k/Doc/tutorial/controlflow.rst (original) +++ python/branches/py3k/Doc/tutorial/controlflow.rst Sat Apr 19 02:55:37 2008 @@ -467,6 +467,9 @@ Arbitrary Argument Lists ------------------------ +.. index:: + statement: * + Finally, the least frequently used option is to specify that a function can be called with an arbitrary number of arguments. These arguments will be wrapped up in a tuple. Before the variable number of arguments, zero or more normal @@ -508,6 +511,9 @@ >>> list(range(*args)) # call with arguments unpacked from a list [3, 4, 5] +.. index:: + statement: ** + In the same fashion, dictionaries can deliver keyword arguments with the ``**``\ -operator:: @@ -610,7 +616,7 @@ Making it easy for others to read your code is always a good idea, and adopting a nice coding style helps tremendously for that. -For Python, :pep:`8` has emerged as the style guide that most projects adher to; +For Python, :pep:`8` has emerged as the style guide that most projects adhere to; it promotes a very readable and eye-pleasing coding style. Every Python developer should read it at some point; here are the most important points extracted for you: Modified: python/branches/py3k/Lib/pkgutil.py ============================================================================== --- python/branches/py3k/Lib/pkgutil.py (original) +++ python/branches/py3k/Lib/pkgutil.py Sat Apr 19 02:55:37 2008 @@ -542,3 +542,40 @@ f.close() return path + +def get_data(package, resource): + """Get a resource from a package. + + This is a wrapper round the PEP 302 loader get_data API. The package + argument should be the name of a package, in standard module format + (foo.bar). The resource argument should be in the form of a relative + filename, using '/' as the path separator. The parent directory name '..' + is not allowed, and nor is a rooted name (starting with a '/'). + + The function returns a binary string, which is the contents of the + specified resource. + + For packages located in the filesystem, which have already been imported, + this is the rough equivalent of + + d = os.path.dirname(sys.modules[package].__file__) + data = open(os.path.join(d, resource), 'rb').read() + + If the package cannot be located or loaded, or it uses a PEP 302 loader + which does not support get_data(), then None is returned. + """ + + loader = get_loader(package) + if loader is None or not hasattr(loader, 'get_data'): + return None + mod = sys.modules.get(package) or loader.load_module(package) + if mod is None or not hasattr(mod, '__file__'): + return None + + # Modify the resource name to be compatible with the loader.get_data + # signature - an os.path format "filename" starting with the dirname of + # the package's __file__ + parts = resource.split('/') + parts.insert(0, os.path.dirname(mod.__file__)) + resource_name = os.path.join(*parts) + return loader.get_data(resource_name) Modified: python/branches/py3k/Lib/test/regrtest.py ============================================================================== --- python/branches/py3k/Lib/test/regrtest.py (original) +++ python/branches/py3k/Lib/test/regrtest.py Sat Apr 19 02:55:37 2008 @@ -731,6 +731,11 @@ from distutils.dir_util import _path_created from weakref import WeakSet + # Clear the warnings registry, so they can be displayed again + for mod in sys.modules.values(): + if hasattr(mod, '__warningregistry__'): + del mod.__warningregistry__ + # Restore some original values. warnings.filters[:] = fs copy_reg.dispatch_table.clear() Modified: python/branches/py3k/Lib/test/test_frozen.py ============================================================================== --- python/branches/py3k/Lib/test/test_frozen.py (original) +++ python/branches/py3k/Lib/test/test_frozen.py Sat Apr 19 02:55:37 2008 @@ -39,6 +39,18 @@ else: self.fail("import __phello__.foo should have failed") + if sys.platform != "mac": # On the Mac this import does succeed. + try: + import __phello__.foo + except ImportError: + pass + else: + self.fail("import __phello__.foo should have failed") + + del sys.modules['__hello__'] + del sys.modules['__phello__'] + del sys.modules['__phello__.spam'] + def test_main(): run_unittest(FrozenTests) Modified: python/branches/py3k/Lib/test/test_pkg.py ============================================================================== --- python/branches/py3k/Lib/test/test_pkg.py (original) +++ python/branches/py3k/Lib/test/test_pkg.py Sat Apr 19 02:55:37 2008 @@ -46,6 +46,7 @@ def setUp(self): self.root = None + self.pkgname = None self.syspath = list(sys.path) self.sysmodules = sys.modules.copy() @@ -56,6 +57,13 @@ del self.sysmodules cleanout(self.root) + # delete all modules concerning the tested hiearchy + if self.pkgname: + modules = [name for name in sys.modules + if self.pkgname in name.split('.')] + for name in modules: + del sys.modules[name] + def run_code(self, code): exec(textwrap.dedent(code), globals(), {"self": self}) @@ -78,6 +86,8 @@ f.write('\n') f.close() self.root = root + # package name is the name of the first item + self.pkgname = descr[0][0] def test_1(self): hier = [("t1", None), ("t1 __init__.py", "")] Copied: python/branches/py3k/Lib/test/test_pkgutil.py (from r62379, /python/trunk/Lib/test/test_pkgutil.py) ============================================================================== --- /python/trunk/Lib/test/test_pkgutil.py (original) +++ python/branches/py3k/Lib/test/test_pkgutil.py Sat Apr 19 02:55:37 2008 @@ -25,7 +25,7 @@ pkg = 'test_getdata_filesys' # Include a LF and a CRLF, to test that binary data is read back - RESOURCE_DATA = 'Hello, world!\nSecond line\r\nThird line' + RESOURCE_DATA = b'Hello, world!\nSecond line\r\nThird line' # Make a package with some resources package_dir = os.path.join(self.dirname, pkg) @@ -48,12 +48,14 @@ res2 = pkgutil.get_data(pkg, 'sub/res.txt') self.assertEqual(res2, RESOURCE_DATA) + del sys.modules[pkg] + def test_getdata_zipfile(self): zip = 'test_getdata_zipfile.zip' pkg = 'test_getdata_zipfile' # Include a LF and a CRLF, to test that binary data is read back - RESOURCE_DATA = 'Hello, world!\nSecond line\r\nThird line' + RESOURCE_DATA = b'Hello, world!\nSecond line\r\nThird line' # Make a package with some resources zip_file = os.path.join(self.dirname, zip) @@ -74,6 +76,8 @@ self.assertEqual(res2, RESOURCE_DATA) del sys.path[0] + del sys.modules[pkg] + class PkgutilPEP302Tests(unittest.TestCase): class MyTestLoader(object): Modified: python/branches/py3k/Lib/test/test_profile.py ============================================================================== --- python/branches/py3k/Lib/test/test_profile.py (original) +++ python/branches/py3k/Lib/test/test_profile.py Sat Apr 19 02:55:37 2008 @@ -22,8 +22,9 @@ def do_profiling(cls): results = [] prof = cls.profilerclass(timer, 0.001) + start_timer = timer() prof.runctx("testfunc()", globals(), locals()) - results.append(timer()) + results.append(timer() - start_timer) for methodname in cls.methodnames: s = StringIO() stats = pstats.Stats(prof, stream=s) @@ -40,7 +41,7 @@ def test_cprofile(self): results = self.do_profiling() - self.assertEqual(results[0], 43000) + self.assertEqual(results[0], 1000) for i, method in enumerate(self.methodnames): if results[i+1] != self.expected_output[method]: print("Stats.%s output for %s doesn't fit expectation!" % Modified: python/branches/py3k/Lib/test/test_structmembers.py ============================================================================== --- python/branches/py3k/Lib/test/test_structmembers.py (original) +++ python/branches/py3k/Lib/test/test_structmembers.py Sat Apr 19 02:55:37 2008 @@ -101,12 +101,6 @@ def test_main(verbose=None): - # Obscure hack so that this test passes after reloads or repeated calls - # to test_main (regrtest -R). - if '__warningregistry__' in globals(): - del globals()['__warningregistry__'] - if hasattr(sys, '__warningregistry__'): - del sys.__warningregistry__ test_support.run_unittest(__name__) if __name__ == "__main__": Modified: python/branches/py3k/Lib/test/test_warnings.py ============================================================================== --- python/branches/py3k/Lib/test/test_warnings.py (original) +++ python/branches/py3k/Lib/test/test_warnings.py Sat Apr 19 02:55:37 2008 @@ -391,6 +391,8 @@ def test_main(): + py_warnings.onceregistry.clear() + c_warnings.onceregistry.clear() test_support.run_unittest(CFilterTests, PyFilterTests, CWarnTests, Modified: python/branches/py3k/Lib/test/test_xmlrpc.py ============================================================================== --- python/branches/py3k/Lib/test/test_xmlrpc.py (original) +++ python/branches/py3k/Lib/test/test_xmlrpc.py Sat Apr 19 02:55:37 2008 @@ -49,6 +49,17 @@ (newdt,), m = xmlrpclib.loads(s, use_datetime=0) self.assertEquals(newdt, xmlrpclib.DateTime('20050210T11:41:23')) + def test_datetime_before_1900(self): + # same as before but with an date before 1900 + dt = datetime.datetime(1, 2, 10, 11, 41, 23) + s = xmlrpclib.dumps((dt,)) + (newdt,), m = xmlrpclib.loads(s, use_datetime=1) + self.assertEquals(newdt, dt) + self.assertEquals(m, None) + + (newdt,), m = xmlrpclib.loads(s, use_datetime=0) + self.assertEquals(newdt, xmlrpclib.DateTime('00010210T11:41:23')) + def test_cmp_datetime_DateTime(self): now = datetime.datetime.now() dt = xmlrpclib.DateTime(now.timetuple()) Modified: python/branches/py3k/Lib/xmlrpclib.py ============================================================================== --- python/branches/py3k/Lib/xmlrpclib.py (original) +++ python/branches/py3k/Lib/xmlrpclib.py Sat Apr 19 02:55:37 2008 @@ -287,6 +287,20 @@ # @param value The time, given as an ISO 8601 string, a time # tuple, or a integer time value. +def _strftime(value): + if datetime: + if isinstance(value, datetime.datetime): + return "%04d%02d%02dT%02d:%02d:%02d" % ( + value.year, value.month, value.day, + value.hour, value.minute, value.second) + + if not isinstance(value, (tuple, time.struct_time)): + if value == 0: + value = time.time() + value = time.localtime(value) + + return "%04d%02d%02dT%02d:%02d:%02d" % value[:6] + class DateTime: """DateTime wrapper for an ISO 8601 string or time tuple or localtime integer value to generate 'dateTime.iso8601' XML-RPC @@ -294,16 +308,10 @@ """ def __init__(self, value=0): - if not isinstance(value, str): - if datetime and isinstance(value, datetime.datetime): - self.value = value.strftime("%Y%m%dT%H:%M:%S") - return - if not isinstance(value, (tuple, time.struct_time)): - if value == 0: - value = time.time() - value = time.localtime(value) - value = time.strftime("%Y%m%dT%H:%M:%S", value) - self.value = value + if isinstance(value, str): + self.value = value + else: + self.value = _strftime(value) def make_comparable(self, other): if isinstance(other, DateTime): @@ -700,7 +708,7 @@ if datetime: def dump_datetime(self, value, write): write("") - write(value.strftime("%Y%m%dT%H:%M:%S")) + write(_strftime(value)) write("\n") dispatch[datetime.datetime] = dump_datetime Modified: python/branches/py3k/Objects/longobject.c ============================================================================== --- python/branches/py3k/Objects/longobject.c (original) +++ python/branches/py3k/Objects/longobject.c Sat Apr 19 02:55:37 2008 @@ -160,6 +160,7 @@ PyLong_FromLong(long ival) { PyLongObject *v; + unsigned long abs_ival; unsigned long t; /* unsigned so >> doesn't propagate sign bit */ int ndigits = 0; int sign = 1; @@ -167,9 +168,15 @@ CHECK_SMALL_INT(ival); if (ival < 0) { - ival = -ival; + /* if LONG_MIN == -LONG_MAX-1 (true on most platforms) then + ANSI C says that the result of -ival is undefined when ival + == LONG_MIN. Hence the following workaround. */ + abs_ival = (unsigned long)(-1-ival) + 1; sign = -1; } + else { + abs_ival = (unsigned long)ival; + } /* Fast path for single-digits ints */ if (!(ival>>PyLong_SHIFT)) { @@ -193,7 +200,7 @@ } /* Larger numbers: loop to determine number of digits */ - t = (unsigned long)ival; + t = abs_ival; while (t) { ++ndigits; t >>= PyLong_SHIFT; @@ -202,7 +209,7 @@ if (v != NULL) { digit *p = v->ob_digit; Py_SIZE(v) = ndigits*sign; - t = (unsigned long)ival; + t = abs_ival; while (t) { *p++ = (digit)(t & PyLong_MASK); t >>= PyLong_SHIFT; @@ -1033,21 +1040,27 @@ PyLong_FromLongLong(PY_LONG_LONG ival) { PyLongObject *v; + unsigned PY_LONG_LONG abs_ival; unsigned PY_LONG_LONG t; /* unsigned so >> doesn't propagate sign bit */ int ndigits = 0; int negative = 0; CHECK_SMALL_INT(ival); if (ival < 0) { - ival = -ival; + /* avoid signed overflow on negation; see comments + in PyLong_FromLong above. */ + abs_ival = (unsigned PY_LONG_LONG)(-1-ival) + 1; negative = 1; } + else { + abs_ival = (unsigned PY_LONG_LONG)ival; + } /* Count the number of Python digits. We used to pick 5 ("big enough for anything"), but that's a waste of time and space given that 5*15 = 75 bits are rarely needed. */ - t = (unsigned PY_LONG_LONG)ival; + t = abs_ival; while (t) { ++ndigits; t >>= PyLong_SHIFT; @@ -1056,7 +1069,7 @@ if (v != NULL) { digit *p = v->ob_digit; Py_SIZE(v) = negative ? -ndigits : ndigits; - t = (unsigned PY_LONG_LONG)ival; + t = abs_ival; while (t) { *p++ = (digit)(t & PyLong_MASK); t >>= PyLong_SHIFT; Modified: python/branches/py3k/Python/sysmodule.c ============================================================================== --- python/branches/py3k/Python/sysmodule.c (original) +++ python/branches/py3k/Python/sysmodule.c Sat Apr 19 02:55:37 2008 @@ -1191,9 +1191,9 @@ /* stdin/stdout/stderr are now set by pythonrun.c */ PyDict_SetItemString(sysdict, "__displayhook__", - PyDict_GetItemString(sysdict, "displayhook")); + PyDict_GetItemString(sysdict, "displayhook")); PyDict_SetItemString(sysdict, "__excepthook__", - PyDict_GetItemString(sysdict, "excepthook")); + PyDict_GetItemString(sysdict, "excepthook")); SET_SYS_FROM_STRING("version", PyUnicode_FromString(Py_GetVersion())); SET_SYS_FROM_STRING("hexversion", @@ -1203,7 +1203,7 @@ Py_BuildValue("(UUU)", "CPython", branch, svn_revision)); SET_SYS_FROM_STRING("dont_write_bytecode", - PyBool_FromLong(Py_DontWriteBytecodeFlag)); + PyBool_FromLong(Py_DontWriteBytecodeFlag)); /* * These release level checks are mutually exclusive and cover * the field, so don't get too fancy with the pre-processor! From buildbot at python.org Sat Apr 19 02:57:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 00:57:18 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080419005718.859461E4024@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/209 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 106, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 03:20:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 01:20:12 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080419012012.3C31D1E4007@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%203.0/builds/326 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_urllib2 test_urllib2net ====================================================================== ERROR: test_file (test.test_urllib2net.OtherNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 117, in test_file self._test_urls(urls, self._extra_handlers(), urllib2.urlopen) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 155, in _test_urls urllib2.install_opener(urllib2.build_opener(*handlers)) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 458, in build_opener opener.add_handler(klass()) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 670, in __init__ proxies = getproxies() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 1244, in getproxies_environment for name, value in os.environ.items(): AttributeError: 'NoneType' object has no attribute 'environ' ====================================================================== ERROR: test_ftp (test.test_urllib2net.OtherNetworkTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 105, in test_ftp self._test_urls(urls, self._extra_handlers()) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 155, in _test_urls urllib2.install_opener(urllib2.build_opener(*handlers)) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 458, in build_opener opener.add_handler(klass()) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 670, in __init__ proxies = getproxies() File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 1244, in getproxies_environment for name, value in os.environ.items(): AttributeError: 'NoneType' object has no attribute 'environ' ====================================================================== ERROR: test_close (test.test_urllib2net.CloseSocketTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 78, in test_close abused_fileobject = response.fp AttributeError: 'addinfourl' object has no attribute 'fp' ====================================================================== ERROR: test_ftp_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 227, in test_ftp_NoneNodefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 378, in open response = self._open(req, data) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 396, in _open '_open', req) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 356, in _call_chain result = func(*args) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 1284, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 836, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_NoneWithdefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 221, in test_ftp_NoneWithdefault u = _urlopen_with_retry(self.FTP_HOST, timeout=None) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 378, in open response = self._open(req, data) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 396, in _open '_open', req) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 356, in _call_chain result = func(*args) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 1284, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 836, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_Value (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 231, in test_ftp_Value u = _urlopen_with_retry(self.FTP_HOST, timeout=60) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 378, in open response = self._open(req, data) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 396, in _open '_open', req) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 356, in _call_chain result = func(*args) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 1284, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 836, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_ftp_basic (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 214, in test_ftp_basic u = _urlopen_with_retry(self.FTP_HOST) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 19, in _urlopen_with_retry return urllib2.urlopen(host, *args, **kwargs) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 122, in urlopen return _opener.open(url, data, timeout) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 378, in open response = self._open(req, data) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 396, in _open '_open', req) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 356, in _call_chain result = func(*args) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib2.py", line 1284, in ftp_open fp, retrlen = fw.retrfile(file, type) File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/urllib.py", line 836, in retrfile self.endtransfer), conn[1]) TypeError: 'NoneType' object is not callable ====================================================================== ERROR: test_http_NoneNodefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 209, in test_http_NoneNodefault self.assertTrue(u.fp.raw.fp._sock.gettimeout() is None) AttributeError: 'addinfourl' object has no attribute 'fp' ====================================================================== ERROR: test_http_NoneWithdefault (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 199, in test_http_NoneWithdefault self.assertTrue(u.fp.raw.fp._sock.gettimeout(), 60) AttributeError: 'addinfourl' object has no attribute 'fp' ====================================================================== ERROR: test_http_Value (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 205, in test_http_Value self.assertEqual(u.fp.raw.fp._sock.gettimeout(), 120) AttributeError: 'addinfourl' object has no attribute 'fp' ====================================================================== ERROR: test_http_basic (test.test_urllib2net.TimeoutTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/3.0.norwitz-amd64/build/Lib/test/test_urllib2net.py", line 192, in test_http_basic self.assertTrue(u.fp.raw.fp._sock.gettimeout() is None) AttributeError: 'addinfourl' object has no attribute 'fp' make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 03:31:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 01:31:33 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080419013133.69D9D1E4014@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/797 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_mailbox sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 04:23:57 2008 From: python-checkins at python.org (christian.heimes) Date: Sat, 19 Apr 2008 04:23:57 +0200 (CEST) Subject: [Python-checkins] r62386 - in python/trunk: Doc/library/subprocess.rst Lib/subprocess.py Lib/test/test_subprocess.py Misc/NEWS Message-ID: <20080419022357.E69DA1E4007@bag.python.org> Author: christian.heimes Date: Sat Apr 19 04:23:57 2008 New Revision: 62386 Log: Added kill, terminate and send_signal to subprocess.Popen The bits and pieces for the Windows side were already in place. The POSIX side is trivial (as usual) and uses os.kill(). Modified: python/trunk/Doc/library/subprocess.rst python/trunk/Lib/subprocess.py python/trunk/Lib/test/test_subprocess.py python/trunk/Misc/NEWS Modified: python/trunk/Doc/library/subprocess.rst ============================================================================== --- python/trunk/Doc/library/subprocess.rst (original) +++ python/trunk/Doc/library/subprocess.rst Sat Apr 19 04:23:57 2008 @@ -208,6 +208,29 @@ size is large or unlimited. +.. method:: Popen.send_signal(signal) + + Sends the signal *signal* to the child. + + .. note:: + + On Windows only SIGTERM is supported so far. It's an alias for + *terminate*. + + +.. method:: Popen.terminate() + + Stop the child. On Posix OSs the method sends SIGTERM to the + child. On Windows the Win32 API function TerminateProcess is called + to stop the child. + + +.. method:: Popen.kill() + + Kills the child. On Posix OSs the function sends SIGKILL to the child. + On Windows *kill* is an alias for *terminate*. + + The following attributes are also available: .. attribute:: Popen.stdin Modified: python/trunk/Lib/subprocess.py ============================================================================== --- python/trunk/Lib/subprocess.py (original) +++ python/trunk/Lib/subprocess.py Sat Apr 19 04:23:57 2008 @@ -357,6 +357,7 @@ import types import traceback import gc +import signal # Exception classes used by this module. class CalledProcessError(Exception): @@ -384,6 +385,7 @@ from win32process import CreateProcess, STARTUPINFO, \ GetExitCodeProcess, STARTF_USESTDHANDLES, \ STARTF_USESHOWWINDOW, CREATE_NEW_CONSOLE + from win32process import TerminateProcess from win32event import WaitForSingleObject, INFINITE, WAIT_OBJECT_0 else: from _subprocess import * @@ -906,6 +908,21 @@ self.wait() return (stdout, stderr) + def send_signal(self, sig): + """Send a signal to the process + """ + if sig == signal.SIGTERM: + self.terminate() + else: + raise ValueError("Only SIGTERM is supported on Windows") + + def terminate(self): + """Terminates the process + """ + TerminateProcess(self._handle, 1) + + kill = terminate + else: # # POSIX methods @@ -1184,6 +1201,21 @@ self.wait() return (stdout, stderr) + def send_signal(self, sig): + """Send a signal to the process + """ + os.kill(self.pid, sig) + + def terminate(self): + """Terminate the process with SIGTERM + """ + self.send_signal(signal.SIGTERM) + + def kill(self): + """Kill the process with SIGKILL + """ + self.send_signal(signal.SIGKILL) + def _demo_posix(): # Modified: python/trunk/Lib/test/test_subprocess.py ============================================================================== --- python/trunk/Lib/test/test_subprocess.py (original) +++ python/trunk/Lib/test/test_subprocess.py Sat Apr 19 04:23:57 2008 @@ -584,6 +584,29 @@ os.remove(fname) self.assertEqual(rc, 47) + def test_send_signal(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.send_signal(signal.SIGINT) + self.assertNotEqual(p.wait(), 0) + + def test_kill(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.kill() + self.assertEqual(p.wait(), -signal.SIGKILL) + + def test_terminate(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.terminate() + self.assertEqual(p.wait(), -signal.SIGTERM) # # Windows tests @@ -655,6 +678,29 @@ ' -c "import sys; sys.exit(47)"') self.assertEqual(rc, 47) + def test_send_signal(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.send_signal(signal.SIGTERM) + self.assertNotEqual(p.wait(), 0) + + def test_kill(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.kill() + self.assertNotEqual(p.wait(), 0) + + def test_terminate(self): + p = subprocess.Popen([sys.executable, + "-c", "input()"]) + + self.assert_(p.poll() is None, p.poll()) + p.terminate() + self.assertNotEqual(p.wait(), 0) def test_main(): test_support.run_unittest(ProcessTestCase) Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Sat Apr 19 04:23:57 2008 @@ -18,6 +18,8 @@ Extensions Modules ------------------ +- Added kill, terminate and send_signal(sig) to subprocess.Popen. + - Added phase(z) -> phi, polar(z) -> r, phi and rect(r, phi) -> z to the cmath module. From buildbot at python.org Sat Apr 19 04:44:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 02:44:34 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080419024434.8E6481E4007@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%203.0/builds/740 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/threading.py", line 493, in _bootstrap_inner self.run() File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/test/test_asynchat.py", line 26, in run conn, client = self.sock.accept() File "/Users/buildslave/bb/3.0.psf-g4/build/Lib/socket.py", line 120, in accept fd, addr = self._accept() socket.error: [Errno 53] Software caused connection abort 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 05:27:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 03:27:12 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080419032712.2E3E31E4007@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3212 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 05:31:21 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 03:31:21 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080419033121.7F25A1E4007@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1295 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_subprocess ====================================================================== FAIL: test_send_signal (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_subprocess.py", line 687, in test_send_signal self.assertNotEqual(p.wait(), 0) AssertionError: 0 == 0 ====================================================================== FAIL: test_terminate (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_subprocess.py", line 703, in test_terminate self.assertNotEqual(p.wait(), 0) AssertionError: 0 == 0 sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 06:17:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 04:17:45 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080419041746.034CC1E4007@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2873 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_math test_smtplib ====================================================================== ERROR: testPow (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_math.py", line 383, in testPow self.assertEqual(math.pow(NINF, 1), NINF) ValueError: math domain error sincerely, -The Buildbot From nnorwitz at gmail.com Sat Apr 19 10:09:33 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 04:09:33 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080419080933.GA2935@python.psfb.org> 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11672 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [590354 refs] From nnorwitz at gmail.com Sat Apr 19 10:15:35 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 04:15:35 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080419081535.GA4123@python.psfb.org> 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] 'import site' failed; use -v for traceback Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [7488 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- errors occurred; run in verbose mode for details test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11672 refs] [14670 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [589849 refs] From buildbot at python.org Sat Apr 19 10:10:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 08:10:09 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080419081009.5191A1E4007@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/983 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: christian.heimes BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_subprocess sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 10:24:00 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 10:24:00 +0200 (CEST) Subject: [Python-checkins] r62387 - python/trunk/Doc/library/subprocess.rst Message-ID: <20080419082400.058B71E4007@bag.python.org> Author: georg.brandl Date: Sat Apr 19 10:23:59 2008 New Revision: 62387 Log: Fix-up docs for revision 62386. Modified: python/trunk/Doc/library/subprocess.rst Modified: python/trunk/Doc/library/subprocess.rst ============================================================================== --- python/trunk/Doc/library/subprocess.rst (original) +++ python/trunk/Doc/library/subprocess.rst Sat Apr 19 10:23:59 2008 @@ -215,7 +215,9 @@ .. note:: On Windows only SIGTERM is supported so far. It's an alias for - *terminate*. + :meth:`terminate`. + + .. versionadded:: 2.6 .. method:: Popen.terminate() @@ -224,11 +226,15 @@ child. On Windows the Win32 API function TerminateProcess is called to stop the child. + .. versionadded:: 2.6 + .. method:: Popen.kill() Kills the child. On Posix OSs the function sends SIGKILL to the child. - On Windows *kill* is an alias for *terminate*. + On Windows :meth:`kill` is an alias for :meth:`terminate`. + + .. versionadded:: 2.6 The following attributes are also available: From nnorwitz at gmail.com Sat Apr 19 11:12:59 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 05:12:59 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080419091259.GA18060@python.psfb.org> More important issues: ---------------------- test_pkgutil leaked [34, 34, 34] references, sum=102 Less important issues: ---------------------- test_asynchat leaked [0, 0, 130] references, sum=130 test_threading leaked [0, -1, 1] references, sum=0 test_urllib2_localnet leaked [146, 137, -131] references, sum=152 From nnorwitz at gmail.com Sat Apr 19 11:29:47 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 05:29:47 -0400 Subject: [Python-checkins] Python Regression Test Failures all (1) Message-ID: <20080419092947.GA20469@python.psfb.org> 325 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler testCompileLibrary still working, be patient... test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- errors occurred; run in verbose mode for details test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11672 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllibnet test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 325 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [602005 refs] From python-checkins at python.org Sat Apr 19 11:50:14 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 11:50:14 +0200 (CEST) Subject: [Python-checkins] r62388 - doctools/trunk/sphinx/__init__.py Message-ID: <20080419095014.81DE41E4007@bag.python.org> Author: georg.brandl Date: Sat Apr 19 11:50:14 2008 New Revision: 62388 Log: Stop appending the rev to the version number. Modified: doctools/trunk/sphinx/__init__.py Modified: doctools/trunk/sphinx/__init__.py ============================================================================== --- doctools/trunk/sphinx/__init__.py (original) +++ doctools/trunk/sphinx/__init__.py Sat Apr 19 11:50:14 2008 @@ -23,7 +23,7 @@ from sphinx.util.console import darkred, nocolor __revision__ = '$Revision$' -__version__ = '0.1.' + __revision__[11:-2] +__version__ = '0.2' def usage(argv, msg=None): From python-checkins at python.org Sat Apr 19 18:57:43 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 18:57:43 +0200 (CEST) Subject: [Python-checkins] r62389 - python/trunk/Doc/library/shutil.rst Message-ID: <20080419165743.CD0391E4003@bag.python.org> Author: georg.brandl Date: Sat Apr 19 18:57:43 2008 New Revision: 62389 Log: #2369: clarify that copyfile() doesn't take a target directory. Modified: python/trunk/Doc/library/shutil.rst Modified: python/trunk/Doc/library/shutil.rst ============================================================================== --- python/trunk/Doc/library/shutil.rst (original) +++ python/trunk/Doc/library/shutil.rst Sat Apr 19 18:57:43 2008 @@ -28,15 +28,6 @@ are not copied. -.. function:: copyfile(src, dst) - - Copy the contents (no metadata) of the file named *src* to a file named *dst*. - The destination location must be writable; otherwise, an :exc:`IOError` exception - will be raised. If *dst* already exists, it will be replaced. Special files - such as character or block devices and pipes cannot be copied with this - function. *src* and *dst* are path names given as strings. - - .. function:: copyfileobj(fsrc, fdst[, length]) Copy the contents of the file-like object *fsrc* to the file-like object *fdst*. @@ -48,6 +39,17 @@ be copied. +.. function:: copyfile(src, dst) + + Copy the contents (no metadata) of the file named *src* to a file named *dst*. + *dst* must be the complete target file name; look at :func:`copy` for a copy that + accepts a target directory path. + The destination location must be writable; otherwise, an :exc:`IOError` exception + will be raised. If *dst* already exists, it will be replaced. Special files + such as character or block devices and pipes cannot be copied with this + function. *src* and *dst* are path names given as strings. + + .. function:: copymode(src, dst) Copy the permission bits from *src* to *dst*. The file contents, owner, and From python-checkins at python.org Sat Apr 19 18:58:29 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 18:58:29 +0200 (CEST) Subject: [Python-checkins] r62390 - python/trunk/Doc/library/os.rst Message-ID: <20080419165829.361501E4003@bag.python.org> Author: georg.brandl Date: Sat Apr 19 18:58:28 2008 New Revision: 62390 Log: #2634: clarify meaning of env parameter to spawn/exec*e. Modified: python/trunk/Doc/library/os.rst Modified: python/trunk/Doc/library/os.rst ============================================================================== --- python/trunk/Doc/library/os.rst (original) +++ python/trunk/Doc/library/os.rst Sat Apr 19 18:58:28 2008 @@ -1464,7 +1464,8 @@ For :func:`execle`, :func:`execlpe`, :func:`execve`, and :func:`execvpe` (note that these all end in "e"), the *env* parameter must be a mapping which is - used to define the environment variables for the new process; the :func:`execl`, + used to define the environment variables for the new process (these are used + instead of the current process' environment); the functions :func:`execl`, :func:`execlp`, :func:`execv`, and :func:`execvp` all cause the new process to inherit the environment of the current process. Availability: Macintosh, Unix, Windows. @@ -1733,7 +1734,8 @@ For :func:`spawnle`, :func:`spawnlpe`, :func:`spawnve`, and :func:`spawnvpe` (note that these all end in "e"), the *env* parameter must be a mapping - which is used to define the environment variables for the new process; the + which is used to define the environment variables for the new process (they are + used instead of the current process' environment); the functions :func:`spawnl`, :func:`spawnlp`, :func:`spawnv`, and :func:`spawnvp` all cause the new process to inherit the environment of the current process. From python-checkins at python.org Sat Apr 19 18:58:49 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 18:58:49 +0200 (CEST) Subject: [Python-checkins] r62391 - python/trunk/Doc/library/subprocess.rst Message-ID: <20080419165849.B49AF1E4003@bag.python.org> Author: georg.brandl Date: Sat Apr 19 18:58:49 2008 New Revision: 62391 Log: #2633: clarify meaning of env parameter. Modified: python/trunk/Doc/library/subprocess.rst Modified: python/trunk/Doc/library/subprocess.rst ============================================================================== --- python/trunk/Doc/library/subprocess.rst (original) +++ python/trunk/Doc/library/subprocess.rst Sat Apr 19 18:58:49 2008 @@ -93,8 +93,9 @@ searching the executable, so you can't specify the program's path relative to *cwd*. - If *env* is not ``None``, it defines the environment variables for the new - process. + If *env* is not ``None``, it must be a mapping that defines the environment + variables for the new process; these are used instead of inheriting the current + process' environment, which is the default behavior. If *universal_newlines* is :const:`True`, the file objects stdout and stderr are opened as text files, but lines may be terminated by any of ``'\n'``, the Unix From python-checkins at python.org Sat Apr 19 18:59:17 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 18:59:17 +0200 (CEST) Subject: [Python-checkins] r62392 - python/trunk/Doc/library/dis.rst Message-ID: <20080419165917.0121A1E400A@bag.python.org> Author: georg.brandl Date: Sat Apr 19 18:59:16 2008 New Revision: 62392 Log: #2631: clarify IMPORT_NAME semantics. Modified: python/trunk/Doc/library/dis.rst Modified: python/trunk/Doc/library/dis.rst ============================================================================== --- python/trunk/Doc/library/dis.rst (original) +++ python/trunk/Doc/library/dis.rst Sat Apr 19 18:59:16 2008 @@ -630,9 +630,11 @@ .. opcode:: IMPORT_NAME (namei) - Imports the module ``co_names[namei]``. The module object is pushed onto the - stack. The current namespace is not affected: for a proper import statement, a - subsequent ``STORE_FAST`` instruction modifies the namespace. + Imports the module ``co_names[namei]``. TOS and TOS1 are popped and provide + the *fromlist* and *level* arguments of :func:`__import__`. The module + object is pushed onto the stack. The current namespace is not affected: + for a proper import statement, a subsequent ``STORE_FAST`` instruction + modifies the namespace. .. opcode:: IMPORT_FROM (namei) From python-checkins at python.org Sat Apr 19 19:00:14 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 19:00:14 +0200 (CEST) Subject: [Python-checkins] r62393 - python/trunk/Doc/documenting/markup.rst Message-ID: <20080419170014.645A01E4003@bag.python.org> Author: georg.brandl Date: Sat Apr 19 19:00:14 2008 New Revision: 62393 Log: :func: et al. should *not* include the parens. Modified: python/trunk/Doc/documenting/markup.rst Modified: python/trunk/Doc/documenting/markup.rst ============================================================================== --- python/trunk/Doc/documenting/markup.rst (original) +++ python/trunk/Doc/documenting/markup.rst Sat Apr 19 19:00:14 2008 @@ -319,8 +319,8 @@ .. describe:: func The name of a Python function; dotted names may be used. The role text - should include trailing parentheses to enhance readability. The parentheses - are stripped when searching for identifiers. + should not include trailing parentheses to enhance readability. The + parentheses are stripped when searching for identifiers. .. describe:: data @@ -338,7 +338,7 @@ .. describe:: meth The name of a method of an object. The role text should include the type - name, method name and the trailing parentheses. A dotted name may be used. + name and the method name. A dotted name may be used. .. describe:: attr From python-checkins at python.org Sat Apr 19 19:00:31 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 19:00:31 +0200 (CEST) Subject: [Python-checkins] r62394 - doctools/trunk/doc/markup/inline.rst Message-ID: <20080419170031.C4C1F1E400A@bag.python.org> Author: georg.brandl Date: Sat Apr 19 19:00:31 2008 New Revision: 62394 Log: :func: et al. should not include parens. Modified: doctools/trunk/doc/markup/inline.rst Modified: doctools/trunk/doc/markup/inline.rst ============================================================================== --- doctools/trunk/doc/markup/inline.rst (original) +++ doctools/trunk/doc/markup/inline.rst Sat Apr 19 19:00:31 2008 @@ -57,8 +57,9 @@ .. role:: func The name of a Python function; dotted names may be used. The role text - should include trailing parentheses to enhance readability. The parentheses - are stripped when searching for identifiers. + needs not include trailing parentheses to enhance readability; they will be + added automatically by Sphinx if the :confval:`add_function_parentheses` + config value is true (the default). .. role:: data @@ -76,7 +77,8 @@ .. role:: meth The name of a method of an object. The role text should include the type - name, method name and the trailing parentheses. A dotted name may be used. + name and the method name; if it occurs within the description of a type, + the type name can be omitted. A dotted name may be used. .. role:: attr From python-checkins at python.org Sat Apr 19 19:52:13 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 19:52:13 +0200 (CEST) Subject: [Python-checkins] r62395 - doctools/trunk/sphinx/quickstart.py Message-ID: <20080419175213.784441E4003@bag.python.org> Author: georg.brandl Date: Sat Apr 19 19:52:13 2008 New Revision: 62395 Log: Use new name for web builder in the Makefile too. Modified: doctools/trunk/sphinx/quickstart.py Modified: doctools/trunk/sphinx/quickstart.py ============================================================================== --- doctools/trunk/sphinx/quickstart.py (original) +++ doctools/trunk/sphinx/quickstart.py Sat Apr 19 19:52:13 2008 @@ -188,12 +188,12 @@ PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d %(rbuilddir)s/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) %(rsrcdir)s -.PHONY: help clean html web htmlhelp latex changes linkcheck +.PHONY: help clean html web pickle htmlhelp latex changes linkcheck help: \t at echo "Please use \\`make ' where is one of" \t at echo " html to make standalone HTML files" -\t at echo " web to make files usable by Sphinx.web" +\t at echo " pickle to make pickle files (usable by e.g. sphinx-web)" \t at echo " htmlhelp to make HTML files and a HTML help project" \t at echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" \t at echo " changes to make an overview over all changed/added/deprecated items" @@ -208,13 +208,15 @@ \t at echo \t at echo "Build finished. The HTML pages are in %(rbuilddir)s/html." -web: -\tmkdir -p %(rbuilddir)s/web %(rbuilddir)s/doctrees -\t$(SPHINXBUILD) -b web $(ALLSPHINXOPTS) %(rbuilddir)s/web -\t at echo -\t at echo "Build finished; now you can run" -\t at echo " python -m sphinx.web %(rbuilddir)s/web" -\t at echo "to start the server." +pickle: +\tmkdir -p %(rbuilddir)s/pickle %(rbuilddir)s/doctrees +\t$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) %(rbuilddir)s/pickle +\t at echo +\t at echo "Build finished; now you can process the pickle files or run" +\t at echo " sphinx-web %(rbuilddir)s/pickle" +\t at echo "to start the sphinx-web server." + +web: pickle htmlhelp: \tmkdir -p %(rbuilddir)s/htmlhelp %(rbuilddir)s/doctrees From python-checkins at python.org Sat Apr 19 20:51:49 2008 From: python-checkins at python.org (mark.dickinson) Date: Sat, 19 Apr 2008 20:51:49 +0200 (CEST) Subject: [Python-checkins] r62396 - in python/trunk: Lib/test/test_math.py Modules/mathmodule.c Message-ID: <20080419185149.762861E401F@bag.python.org> Author: mark.dickinson Date: Sat Apr 19 20:51:48 2008 New Revision: 62396 Log: Additional tests for math.pow, and extra special-case handling code in math.pow, in the hope of making all tests pass on the alpha Tru64 buildbot. Modified: python/trunk/Lib/test/test_math.py python/trunk/Modules/mathmodule.c Modified: python/trunk/Lib/test/test_math.py ============================================================================== --- python/trunk/Lib/test/test_math.py (original) +++ python/trunk/Lib/test/test_math.py Sat Apr 19 20:51:48 2008 @@ -102,7 +102,7 @@ self.ftest('atan(0)', math.atan(0), 0) self.ftest('atan(1)', math.atan(1), math.pi/4) self.ftest('atan(inf)', math.atan(INF), math.pi/2) - self.ftest('atan(-inf)', math.atan(-INF), -math.pi/2) + self.ftest('atan(-inf)', math.atan(NINF), -math.pi/2) self.assert_(math.isnan(math.atan(NAN))) def testAtanh(self): @@ -387,14 +387,128 @@ self.assert_(math.isnan(math.pow(2, NAN))) self.assert_(math.isnan(math.pow(0, NAN))) self.assertEqual(math.pow(1, NAN), 1) - self.assertEqual(1**NAN, 1) - self.assertEqual(1**INF, 1) - self.assertEqual(1**NINF, 1) - self.assertEqual(1**0, 1) - self.assertEqual(1.**NAN, 1) - self.assertEqual(1.**INF, 1) - self.assertEqual(1.**NINF, 1) - self.assertEqual(1.**0, 1) + + # pow(0., x) + self.assertEqual(math.pow(0., INF), 0.) + self.assertEqual(math.pow(0., 3.), 0.) + self.assertEqual(math.pow(0., 2.3), 0.) + self.assertEqual(math.pow(0., 2.), 0.) + self.assertEqual(math.pow(0., 0.), 1.) + self.assertEqual(math.pow(0., -0.), 1.) + self.assertRaises(ValueError, math.pow, 0., -2.) + self.assertRaises(ValueError, math.pow, 0., -2.3) + self.assertRaises(ValueError, math.pow, 0., -3.) + self.assertRaises(ValueError, math.pow, 0., NINF) + self.assert_(math.isnan(math.pow(0., NAN))) + + # pow(INF, x) + self.assertEqual(math.pow(INF, INF), INF) + self.assertEqual(math.pow(INF, 3.), INF) + self.assertEqual(math.pow(INF, 2.3), INF) + self.assertEqual(math.pow(INF, 2.), INF) + self.assertEqual(math.pow(INF, 0.), 1.) + self.assertEqual(math.pow(INF, -0.), 1.) + self.assertEqual(math.pow(INF, -2.), 0.) + self.assertEqual(math.pow(INF, -2.3), 0.) + self.assertEqual(math.pow(INF, -3.), 0.) + self.assertEqual(math.pow(INF, NINF), 0.) + self.assert_(math.isnan(math.pow(INF, NAN))) + + # pow(-0., x) + self.assertEqual(math.pow(-0., INF), 0.) + self.assertEqual(math.pow(-0., 3.), -0.) + self.assertEqual(math.pow(-0., 2.3), 0.) + self.assertEqual(math.pow(-0., 2.), 0.) + self.assertEqual(math.pow(-0., 0.), 1.) + self.assertEqual(math.pow(-0., -0.), 1.) + self.assertRaises(ValueError, math.pow, -0., -2.) + self.assertRaises(ValueError, math.pow, -0., -2.3) + self.assertRaises(ValueError, math.pow, -0., -3.) + self.assertRaises(ValueError, math.pow, -0., NINF) + self.assert_(math.isnan(math.pow(-0., NAN))) + + # pow(NINF, x) + self.assertEqual(math.pow(NINF, INF), INF) + self.assertEqual(math.pow(NINF, 3.), NINF) + self.assertEqual(math.pow(NINF, 2.3), INF) + self.assertEqual(math.pow(NINF, 2.), INF) + self.assertEqual(math.pow(NINF, 0.), 1.) + self.assertEqual(math.pow(NINF, -0.), 1.) + self.assertEqual(math.pow(NINF, -2.), 0.) + self.assertEqual(math.pow(NINF, -2.3), 0.) + self.assertEqual(math.pow(NINF, -3.), -0.) + self.assertEqual(math.pow(NINF, NINF), 0.) + self.assert_(math.isnan(math.pow(NINF, NAN))) + + # pow(-1, x) + self.assertEqual(math.pow(-1., INF), 1.) + self.assertEqual(math.pow(-1., 3.), -1.) + self.assertRaises(ValueError, math.pow, -1., 2.3) + self.assertEqual(math.pow(-1., 2.), 1.) + self.assertEqual(math.pow(-1., 0.), 1.) + self.assertEqual(math.pow(-1., -0.), 1.) + self.assertEqual(math.pow(-1., -2.), 1.) + self.assertRaises(ValueError, math.pow, -1., -2.3) + self.assertEqual(math.pow(-1., -3.), -1.) + self.assertEqual(math.pow(-1., NINF), 1.) + self.assert_(math.isnan(math.pow(-1., NAN))) + + # pow(1, x) + self.assertEqual(math.pow(1., INF), 1.) + self.assertEqual(math.pow(1., 3.), 1.) + self.assertEqual(math.pow(1., 2.3), 1.) + self.assertEqual(math.pow(1., 2.), 1.) + self.assertEqual(math.pow(1., 0.), 1.) + self.assertEqual(math.pow(1., -0.), 1.) + self.assertEqual(math.pow(1., -2.), 1.) + self.assertEqual(math.pow(1., -2.3), 1.) + self.assertEqual(math.pow(1., -3.), 1.) + self.assertEqual(math.pow(1., NINF), 1.) + self.assertEqual(math.pow(1., NAN), 1.) + + # pow(x, 0) should be 1 for any x + self.assertEqual(math.pow(2.3, 0.), 1.) + self.assertEqual(math.pow(-2.3, 0.), 1.) + self.assertEqual(math.pow(NAN, 0.), 1.) + self.assertEqual(math.pow(2.3, -0.), 1.) + self.assertEqual(math.pow(-2.3, -0.), 1.) + self.assertEqual(math.pow(NAN, -0.), 1.) + + # pow(x, y) is invalid if x is negative and y is not integral + self.assertRaises(ValueError, math.pow, -1., 2.3) + self.assertRaises(ValueError, math.pow, -15., -3.1) + + # pow(x, NINF) + self.assertEqual(math.pow(1.9, NINF), 0.) + self.assertEqual(math.pow(1.1, NINF), 0.) + self.assertEqual(math.pow(0.9, NINF), INF) + self.assertEqual(math.pow(0.1, NINF), INF) + self.assertEqual(math.pow(-0.1, NINF), INF) + self.assertEqual(math.pow(-0.9, NINF), INF) + self.assertEqual(math.pow(-1.1, NINF), 0.) + self.assertEqual(math.pow(-1.9, NINF), 0.) + + # pow(x, INF) + self.assertEqual(math.pow(1.9, INF), INF) + self.assertEqual(math.pow(1.1, INF), INF) + self.assertEqual(math.pow(0.9, INF), 0.) + self.assertEqual(math.pow(0.1, INF), 0.) + self.assertEqual(math.pow(-0.1, INF), 0.) + self.assertEqual(math.pow(-0.9, INF), 0.) + self.assertEqual(math.pow(-1.1, INF), INF) + self.assertEqual(math.pow(-1.9, INF), INF) + + # the following tests have been commented out since they don't + # really belong here: the implementation of ** for floats is + # independent of the implemention of math.pow + #self.assertEqual(1**NAN, 1) + #self.assertEqual(1**INF, 1) + #self.assertEqual(1**NINF, 1) + #self.assertEqual(1**0, 1) + #self.assertEqual(1.**NAN, 1) + #self.assertEqual(1.**INF, 1) + #self.assertEqual(1.**NINF, 1) + #self.assertEqual(1.**0, 1) def testRadians(self): self.assertRaises(TypeError, math.radians) @@ -421,7 +535,7 @@ self.ftest('sinh(1)**2-cosh(1)**2', math.sinh(1)**2-math.cosh(1)**2, -1) self.ftest('sinh(1)+sinh(-1)', math.sinh(1)+math.sinh(-1), 0) self.assertEquals(math.sinh(INF), INF) - self.assertEquals(math.sinh(-INF), -INF) + self.assertEquals(math.sinh(NINF), NINF) self.assert_(math.isnan(math.sinh(NAN))) def testSqrt(self): Modified: python/trunk/Modules/mathmodule.c ============================================================================== --- python/trunk/Modules/mathmodule.c (original) +++ python/trunk/Modules/mathmodule.c Sat Apr 19 20:51:48 2008 @@ -513,6 +513,7 @@ { PyObject *ox, *oy; double r, x, y; + int y_is_odd; if (! PyArg_UnpackTuple(args, "pow", 2, 2, &ox, &oy)) return NULL; @@ -523,6 +524,16 @@ /* 1**x and x**0 return 1., even if x is a NaN or infinity. */ if (x == 1.0 || y == 0.0) return PyFloat_FromDouble(1.); + /* inf ** (nonzero, non-NaN) is one of +-0, +-infinity */ + if (Py_IS_INFINITY(x) && !Py_IS_NAN(y)) { + y_is_odd = Py_IS_FINITE(y) && fmod(fabs(y), 2.0) == 1.0; + if (y > 0.) + r = y_is_odd ? x : fabs(x); + else + r = y_is_odd ? copysign(0., x) : 0.; + return PyFloat_FromDouble(r); + } + errno = 0; PyFPE_START_PROTECT("in math_pow", return 0); r = pow(x, y); From buildbot at python.org Sat Apr 19 21:18:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 19:18:49 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080419191849.DA0391E4003@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/364 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_math ====================================================================== ERROR: testPow (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\trunk.nelson-windows\build\lib\test\test_math.py", line 444, in testPow self.assertEqual(math.pow(-1., INF), 1.) ValueError: math domain error sincerely, -The Buildbot From buildbot at python.org Sat Apr 19 21:19:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 19:19:53 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080419191953.6F84C1E4003@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/627 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 1 test failed: test_math ====================================================================== FAIL: testPow (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/test/test_math.py", line 441, in testPow self.assert_(math.isnan(math.pow(NINF, NAN))) AssertionError make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 21:32:08 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 19 Apr 2008 21:32:08 +0200 (CEST) Subject: [Python-checkins] r62397 - python/branches/py3k/Doc/library/io.rst Message-ID: <20080419193208.C3E601E400C@bag.python.org> Author: benjamin.peterson Date: Sat Apr 19 21:32:08 2008 New Revision: 62397 Log: the io module was added in 2.6 (I know not really, but the end user isn't going to care about backporting.) Modified: python/branches/py3k/Doc/library/io.rst Modified: python/branches/py3k/Doc/library/io.rst ============================================================================== --- python/branches/py3k/Doc/library/io.rst (original) +++ python/branches/py3k/Doc/library/io.rst Sat Apr 19 21:32:08 2008 @@ -7,6 +7,7 @@ .. moduleauthor:: Mike Verdone .. moduleauthor:: Mark Russell .. sectionauthor:: Benjamin Peterson +.. versionadded:: 2.6 The :mod:`io` module provides the Python interfaces to stream handling. The builtin :func:`open` function is defined in this module. From python-checkins at python.org Sat Apr 19 21:34:06 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 19 Apr 2008 21:34:06 +0200 (CEST) Subject: [Python-checkins] r62398 - python/trunk/Doc/library/io.rst Message-ID: <20080419193406.0D5611E400A@bag.python.org> Author: benjamin.peterson Date: Sat Apr 19 21:34:05 2008 New Revision: 62398 Log: Copy io documentation back from py3k branch so changes can be merged into it. Modified: python/trunk/Doc/library/io.rst Modified: python/trunk/Doc/library/io.rst ============================================================================== --- python/trunk/Doc/library/io.rst (original) +++ python/trunk/Doc/library/io.rst Sat Apr 19 21:34:05 2008 @@ -34,7 +34,7 @@ Finally, :class:`StringIO` is a in-memory stream for text. Argument names are not part of the specification, and only the arguments of -:func:`open()` are intended to be used as keyword arguments. +:func:`open` are intended to be used as keyword arguments. Module Interface @@ -43,7 +43,7 @@ .. data:: DEFAULT_BUFFER_SIZE An int containing the default buffer size used by the module's buffered I/O - classes. :func:`open()` uses the file's blksize (as obtained by + classes. :func:`open` uses the file's blksize (as obtained by :func:`os.stat`) if possible. .. function:: open(file[, mode[, buffering[, encoding[, errors[, newline[, closefd=True]]]]]]) @@ -101,13 +101,14 @@ dependent, but any encoding supported by Python can be passed. See the :mod:`codecs` module for the list of supported encodings. - *errors* is an optional string that specifies how encoding errors are to be - handled---this argument should not be used in binary mode. Pass ``'strict'`` - to raise a :exc:`ValueError` exception if there is an encoding error (the - default of ``None`` has the same effect), or pass ``'ignore'`` to ignore - errors. (Note that ignoring encoding errors can lead to data loss.) See the - documentation for :func:`codecs.register` for a list of the permitted - encoding error strings. + *errors* is an optional string that specifies how encoding and decoding + errors are to be handled---this argument should not be used in binary mode. + Pass ``'strict'`` to raise a :exc:`ValueError` exception if there is an + encoding error (the default of ``None`` has the same effect), or pass + ``'ignore'`` to ignore errors. (Note that ignoring encoding errors can lead + to data loss.) ``'replace'`` causes a replacement marker (such as ``'?'``) + to be inserted where there is malformed data. For all possible values, see + :func:`codecs.register`. *newline* controls how universal newlines works (it only applies to text mode). It can be ``None``, ``''``, ``'\n'``, ``'\r'``, and ``'\r\n'``. It @@ -131,15 +132,14 @@ when the file is closed. This does not work when a file name is given and must be ``True`` in that case. - :func:`open()` returns a file object whose type depends on the mode, and + :func:`open` returns a file object whose type depends on the mode, and through which the standard file operations such as reading and writing are - performed. When :func:`open()` is used to open a file in a text mode - (``'w'``, ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a - :class:`TextIOWrapper`. When used to open a file in a binary mode, the - returned class varies: in read binary mode, it returns a - :class:`BufferedReader`; in write binary and append binary modes, it returns - a :class:`BufferedWriter`, and in read/write mode, it returns a - :class:`BufferedRandom`. + performed. When :func:`open` is used to open a file in a text mode (``'w'``, + ``'r'``, ``'wt'``, ``'rt'``, etc.), it returns a :class:`TextIOWrapper`. + When used to open a file in a binary mode, the returned class varies: in read + binary mode, it returns a :class:`BufferedReader`; in write binary and append + binary modes, it returns a :class:`BufferedWriter`, and in read/write mode, + it returns a :class:`BufferedRandom`. It is also possible to use a string or bytearray as a file for both reading and writing. For strings :class:`StringIO` can be used like a file opened in @@ -221,8 +221,8 @@ .. method:: flush() - Flush the write buffers of the stream if applicable. This is not - implemented for read-only and non-blocking streams. + Flush the write buffers of the stream if applicable. This does nothing + for read-only and non-blocking streams. .. method:: isatty() @@ -239,7 +239,7 @@ *limit* bytes will be read. The line terminator is always ``b'\n'`` for binary files; for text files, - the *newlines* argument to :func:`.open()` can be used to select the line + the *newlines* argument to :func:`open` can be used to select the line terminator(s) recognized. .. method:: readlines([hint]) @@ -438,17 +438,17 @@ .. method:: read1() - In :class:`BytesIO`, this is the same as :meth:`read()`. + In :class:`BytesIO`, this is the same as :meth:`read`. .. method:: truncate([pos]) Truncate the file to at most *pos* bytes. *pos* defaults to the current - stream position, as returned by :meth:`tell()`. + stream position, as returned by :meth:`tell`. .. class:: BufferedReader(raw[, buffer_size]) - A buffer for a readable, sequential :class:`BaseRawIO` object. It inherits + A buffer for a readable, sequential :class:`RawIOBase` object. It inherits :class:`BufferedIOBase`. The constructor creates a :class:`BufferedReader` for the given readable @@ -577,8 +577,13 @@ *encoding* gives the name of the encoding that the stream will be decoded or encoded with. It defaults to :func:`locale.getpreferredencoding`. - *errors* determines the strictness of encoding and decoding (see the errors - argument of :func:`codecs.register`) and defaults to ``'strict'``. + *errors* is an optional string that specifies how encoding and decoding + errors are to be handled. Pass ``'strict'`` to raise a :exc:`ValueError` + exception if there is an encoding error (the default of ``None`` has the same + effect), or pass ``'ignore'`` to ignore errors. (Note that ignoring encoding + errors can lead to data loss.) ``'replace'`` causes a replacement marker + (such as ``'?'``) to be inserted where there is malformed data. For all + possible values see :func:`codecs.register`. *newline* can be ``None``, ``''``, ``'\n'``, ``'\r'``, or ``'\r\n'``. It controls the handling of line endings. If it is ``None``, universal newlines From buildbot at python.org Sat Apr 19 21:36:41 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 19:36:41 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080419193641.9B7D01E401C@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%20trunk/builds/732 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_math ====================================================================== FAIL: testPow (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/test/test_math.py", line 441, in testPow self.assert_(math.isnan(math.pow(NINF, NAN))) AssertionError make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Apr 19 21:38:01 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 19 Apr 2008 21:38:01 +0200 (CEST) Subject: [Python-checkins] r62399 - python/branches/py3k Message-ID: <20080419193801.3D3E21E4024@bag.python.org> Author: benjamin.peterson Date: Sat Apr 19 21:38:00 2008 New Revision: 62399 Log: Blocked revisions 62398 via svnmerge ........ r62398 | benjamin.peterson | 2008-04-19 14:34:05 -0500 (Sat, 19 Apr 2008) | 2 lines Copy io documentation back from py3k branch so changes can be merged into it. ........ Modified: python/branches/py3k/ (props changed) From python-checkins at python.org Sat Apr 19 21:41:52 2008 From: python-checkins at python.org (mark.dickinson) Date: Sat, 19 Apr 2008 21:41:52 +0200 (CEST) Subject: [Python-checkins] r62400 - python/trunk/Modules/mathmodule.c Message-ID: <20080419194152.60AF01E4064@bag.python.org> Author: mark.dickinson Date: Sat Apr 19 21:41:52 2008 New Revision: 62400 Log: Additional special-case handling for math.pow. Windows/VS2008 doesn't like (-1)**(+-inf). Modified: python/trunk/Modules/mathmodule.c Modified: python/trunk/Modules/mathmodule.c ============================================================================== --- python/trunk/Modules/mathmodule.c (original) +++ python/trunk/Modules/mathmodule.c Sat Apr 19 21:41:52 2008 @@ -521,9 +521,19 @@ y = PyFloat_AsDouble(oy); if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) return NULL; - /* 1**x and x**0 return 1., even if x is a NaN or infinity. */ - if (x == 1.0 || y == 0.0) + + /* deal directly with various special cases, to cope with problems on + various platforms whose semantics don't exactly match C99 */ + + /* 1**x, x**0, and (-1)**(+-infinity) return 1., even if x is NaN or + an infinity. */ + if (x == 1. || y == 0. || (x == -1. && Py_IS_INFINITY(y))) return PyFloat_FromDouble(1.); + /* otherwise, return a NaN if either input was a NaN */ + if (Py_IS_NAN(x)) + return PyFloat_FromDouble(x); + if (Py_IS_NAN(y)) + return PyFloat_FromDouble(y); /* inf ** (nonzero, non-NaN) is one of +-0, +-infinity */ if (Py_IS_INFINITY(x) && !Py_IS_NAN(y)) { y_is_odd = Py_IS_FINITE(y) && fmod(fabs(y), 2.0) == 1.0; @@ -539,10 +549,7 @@ r = pow(x, y); PyFPE_END_PROTECT(r); if (Py_IS_NAN(r)) { - if (!Py_IS_NAN(x) && !Py_IS_NAN(y)) - errno = EDOM; - else - errno = 0; + errno = EDOM; } /* an infinite result arises either from: From python-checkins at python.org Sat Apr 19 21:47:34 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 19 Apr 2008 21:47:34 +0200 (CEST) Subject: [Python-checkins] r62401 - python/trunk/Doc/library/io.rst Message-ID: <20080419194734.4F7D41E4013@bag.python.org> Author: benjamin.peterson Date: Sat Apr 19 21:47:34 2008 New Revision: 62401 Log: Complete documentation for errors argument of io's open and TextIOWrapper Modified: python/trunk/Doc/library/io.rst Modified: python/trunk/Doc/library/io.rst ============================================================================== --- python/trunk/Doc/library/io.rst (original) +++ python/trunk/Doc/library/io.rst Sat Apr 19 21:47:34 2008 @@ -102,13 +102,15 @@ :mod:`codecs` module for the list of supported encodings. *errors* is an optional string that specifies how encoding and decoding - errors are to be handled---this argument should not be used in binary mode. - Pass ``'strict'`` to raise a :exc:`ValueError` exception if there is an - encoding error (the default of ``None`` has the same effect), or pass - ``'ignore'`` to ignore errors. (Note that ignoring encoding errors can lead - to data loss.) ``'replace'`` causes a replacement marker (such as ``'?'``) - to be inserted where there is malformed data. For all possible values, see - :func:`codecs.register`. + errors are to be handled. Pass ``'strict'`` to raise a :exc:`ValueError` + exception if there is an encoding error (the default of ``None`` has the same + effect), or pass ``'ignore'`` to ignore errors. (Note that ignoring encoding + errors can lead to data loss.) ``'replace'`` causes a replacement marker + (such as ``'?'``) to be inserted where there is malformed data. When + writing, ``'xmlcharrefreplace'`` (replace with the appropriate XML character + reference) or ``'backslashreplace'`` (replace with backslashed escape + sequences) can be used. Any other error handling name that has been + registered with :func:`codecs.register_error` is also valid. *newline* controls how universal newlines works (it only applies to text mode). It can be ``None``, ``''``, ``'\n'``, ``'\r'``, and ``'\r\n'``. It @@ -582,8 +584,11 @@ exception if there is an encoding error (the default of ``None`` has the same effect), or pass ``'ignore'`` to ignore errors. (Note that ignoring encoding errors can lead to data loss.) ``'replace'`` causes a replacement marker - (such as ``'?'``) to be inserted where there is malformed data. For all - possible values see :func:`codecs.register`. + (such as ``'?'``) to be inserted where there is malformed data. When + writing, ``'xmlcharrefreplace'`` (replace with the appropriate XML character + reference) or ``'backslashreplace'`` (replace with backslashed escape + sequences) can be used. Any other error handling name that has been + registered with :func:`codecs.register_error` is also valid. *newline* can be ``None``, ``''``, ``'\n'``, ``'\r'``, or ``'\r\n'``. It controls the handling of line endings. If it is ``None``, universal newlines From python-checkins at python.org Sat Apr 19 22:31:16 2008 From: python-checkins at python.org (mark.dickinson) Date: Sat, 19 Apr 2008 22:31:16 +0200 (CEST) Subject: [Python-checkins] r62402 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080419203116.A033A1E4016@bag.python.org> Author: mark.dickinson Date: Sat Apr 19 22:31:16 2008 New Revision: 62402 Log: Document updates to math and cmath modules. Modified: python/trunk/Doc/whatsnew/2.6.rst Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Sat Apr 19 22:31:16 2008 @@ -1415,6 +1415,33 @@ available, instead of restricting itself to protocol 1. (Contributed by W. Barnes; :issue:`1551443`.) +* The :mod:`cmath` module has gained five new functions: :func:`polar` + converts a complex number to polar form, returning the modulus and + argument of that complex number. :func:`rect` does the opposite, + turning a (modulus, argument) pair back into the corresponding + complex number. :func:`phase` returns the phase or argument of a + complex number. :func:`isnan` returns True if either the real or + imaginary part of its argument is a NaN. :func:`isinf` returns True + if either the real or imaginary part of its argument is infinite. + + The :mod:`cmath` module is no longer numerically unsound. (See + :issue:`1381`): for all functions, the real and imaginary parts of + the results are accurate to within a few ulps, whenever possible. + + The branch cuts for :func:`asinh`, :func:`atanh`: and :func:`atan` + have been corrected. + + The tests for the :mod:`cmath` module have been greatly expanded. A + set of nearly 2000 new testcases provides tests for the algebraic + functions. + + On IEEE 754 platforms, the :mod:`cmath` module now handles IEEE 754 + special values and floating-point exceptions in a manner consistent + with Annex 'G' of the C99 standard. + + (Updates to :mod:`cmath` contributed by Mark Dickinson and Christian + Heimes.) + * A new data type in the :mod:`collections` module: :class:`namedtuple(typename, fieldnames)` is a factory function that creates subclasses of the standard tuple whose fields are accessible by name as well as index. For example:: @@ -1651,6 +1678,30 @@ :func:`macostools.touched` function to be removed because it depended on the :mod:`macfs` module. (:issue:`1490190`) +* The :mod:`math` module has seven new functions, and the existing + functions have been improved to give more consistent behaviour + across platforms, especially with respect to handling of + floating-point exceptions and IEEE 754 special values. + + The new functions are: :func:`isinf` and :func:`isnan`, which + determine whether a given float is a (positive or negative) infinity + or a NaN (Not a Number), respectively; :func:`copysign`; the inverse + hyperbolic functions :func:`acosh`, :func:`asinh` and :func:`atanh`; + and the function :func:`log1p`. (There's also a new function + :func:`trunc` as a result of the backport of PEP 3141; see above.) + + The existing math functions have been modified to follow the + recommendations of the C99 standard with respect to special values + whenever possible. For example, sqrt(-1.) should now give a + ValueError across (nearly) all platforms, while sqrt(float('NaN')) + should return a NaN on all IEEE 754 platforms. Where Annex 'F' of + the C99 standard recommends signaling 'divide-by-zero' or 'invalid', + Python will raise ValueError. Where Annex 'F' of the C99 standard + recommends signaling 'overflow', Python will raise OverflowError. + (See :issue:`711019`, :issue:`1640`.) + + (Contributed by Christian Heimes and Mark Dickinson.) + * :class:`mmap` objects now have a :meth:`rfind` method that finds a substring, beginning at the end of the string and searching backwards. The :meth:`find` method From python-checkins at python.org Sat Apr 19 22:50:31 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 22:50:31 +0200 (CEST) Subject: [Python-checkins] r62403 - doctools/trunk/sphinx/static/sphinxdoc.css Message-ID: <20080419205031.69E2A1E4016@bag.python.org> Author: georg.brandl Date: Sat Apr 19 22:50:30 2008 New Revision: 62403 Log: Fix style sheet and remove unused styles. Modified: doctools/trunk/sphinx/static/sphinxdoc.css Modified: doctools/trunk/sphinx/static/sphinxdoc.css ============================================================================== --- doctools/trunk/sphinx/static/sphinxdoc.css (original) +++ doctools/trunk/sphinx/static/sphinxdoc.css Sat Apr 19 22:50:30 2008 @@ -56,7 +56,6 @@ font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; font-size: 0.95em; letter-spacing: 0.01em; - font-style: normal; } hr { @@ -314,20 +313,6 @@ text-align: center; } -p.noshell em { - color: #3ca8e7; - text-decoration: underline; - font-style: normal; -} - -p.noshell:hover, div.nutshell { - background-color: white; -} - -p.noshell { - cursor: pointer; -} - div.sidebar ul.toc { margin: 1em 0 1em 0; padding: 0 0 0 0.5em; From python-checkins at python.org Sat Apr 19 23:10:13 2008 From: python-checkins at python.org (collin.winter) Date: Sat, 19 Apr 2008 23:10:13 +0200 (CEST) Subject: [Python-checkins] r62404 - sandbox/trunk/2to3/README Message-ID: <20080419211013.B0D311E400A@bag.python.org> Author: collin.winter Date: Sat Apr 19 23:10:11 2008 New Revision: 62404 Log: Add a note on where to report 2to3-related bugs Modified: sandbox/trunk/2to3/README Modified: sandbox/trunk/2to3/README ============================================================================== --- sandbox/trunk/2to3/README (original) +++ sandbox/trunk/2to3/README Sat Apr 19 23:10:11 2008 @@ -3,7 +3,8 @@ A refactoring tool for converting Python 2.x code to 3.0. -This is a work in progress! +This is a work in progress! Bugs should be reported to +http://bugs.python.org/ under the "2to3" category. General usage From nnorwitz at gmail.com Sat Apr 19 23:40:49 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 17:40:49 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080419214049.GA19606@python.psfb.org> More important issues: ---------------------- test_pkgutil leaked [34, 34, 34] references, sum=102 Less important issues: ---------------------- test_socketserver leaked [0, 0, 78] references, sum=78 test_urllib2_localnet leaked [146, 126, -120] references, sum=152 From python-checkins at python.org Sat Apr 19 23:24:29 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 19 Apr 2008 23:24:29 +0200 (CEST) Subject: [Python-checkins] r62405 - python/branches/py3k/Doc/library/io.rst Message-ID: <20080419212429.BCEEB1E4016@bag.python.org> Author: benjamin.peterson Date: Sat Apr 19 23:24:29 2008 New Revision: 62405 Log: Reverted 62397; no versionadded/changed in 3.0 docs Modified: python/branches/py3k/Doc/library/io.rst Modified: python/branches/py3k/Doc/library/io.rst ============================================================================== --- python/branches/py3k/Doc/library/io.rst (original) +++ python/branches/py3k/Doc/library/io.rst Sat Apr 19 23:24:29 2008 @@ -7,7 +7,6 @@ .. moduleauthor:: Mike Verdone .. moduleauthor:: Mark Russell .. sectionauthor:: Benjamin Peterson -.. versionadded:: 2.6 The :mod:`io` module provides the Python interfaces to stream handling. The builtin :func:`open` function is defined in this module. From python-checkins at python.org Sat Apr 19 23:28:25 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 23:28:25 +0200 (CEST) Subject: [Python-checkins] r62406 - in doctools/trunk: CHANGES doc/_templates/index.html doc/concepts.rst doc/conf.py doc/config.rst sphinx/builder.py sphinx/config.py sphinx/quickstart.py sphinx/templates/changes/frameset.html sphinx/templates/changes/rstsource.html sphinx/templates/changes/versionchanges.html sphinx/templates/defindex.html sphinx/templates/index.html sphinx/templates/layout.html sphinx/templates/search.html Message-ID: <20080419212825.15F0D1E402D@bag.python.org> Author: georg.brandl Date: Sat Apr 19 23:28:24 2008 New Revision: 62406 Log: * Use a customizable title for the docs. * Fix up the clumsy index template handling. Added: doctools/trunk/sphinx/templates/defindex.html Removed: doctools/trunk/sphinx/templates/index.html Modified: doctools/trunk/CHANGES doctools/trunk/doc/_templates/index.html doctools/trunk/doc/concepts.rst doctools/trunk/doc/conf.py doctools/trunk/doc/config.rst doctools/trunk/sphinx/builder.py doctools/trunk/sphinx/config.py doctools/trunk/sphinx/quickstart.py doctools/trunk/sphinx/templates/changes/frameset.html doctools/trunk/sphinx/templates/changes/rstsource.html doctools/trunk/sphinx/templates/changes/versionchanges.html doctools/trunk/sphinx/templates/layout.html doctools/trunk/sphinx/templates/search.html Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sat Apr 19 23:28:24 2008 @@ -1,6 +1,29 @@ Changes in trunk ================ +Incompatible changes +-------------------- + +* Jinja, the template engine used for the default HTML templates, is now + no longer shipped with Sphinx. If it is not installed automatically for + you (it is now listed as a dependency in ``setup.py``), install it manually + from PyPI. This will also be needed if you're using Sphinx from a SVN + checkout; in that case please also remove the ``sphinx/jinja`` directory + that may be left over from old revisions. + +* The clumsy handling of the ``index.html`` template was removed. The config + value ``html_index`` is gone, and ``html_additional_pages`` should be used + instead. If you need it, the old ``index.html`` template is still there, + called ``defindex.html``, and you can port your html_index template, using + Jinja inheritance, by changing your template:: + + {% extends "defindex.html" %} + {% block tables %} + ... old html_index template content ... + {% endblock %} + + and putting ``'index': name of your template`` in ``html_additional_pages``. + New features added ------------------ @@ -27,6 +50,16 @@ - Allow giving multiple options in a ``cmdoption`` directive. - Fix display of class members without explicit class name given. +* Templates: + + - ``index.html`` renamed to ``defindex.html``, see above. + - There's a new config value, ``html_title``, that controls the overall + "title" of the set of Sphinx docs. It is used instead everywhere instead of + "Projectname vX.Y documentation" now. + - All references to "documentation" in the templates have been removed, so + that it is now easier to use Sphinx for non-documentation documents with + the default templates. + Thanks to Jacob Kaplan-Moss, Talin and Sebastian Wiesner for suggestions. Bugs fixed Modified: doctools/trunk/doc/_templates/index.html ============================================================================== --- doctools/trunk/doc/_templates/index.html (original) +++ doctools/trunk/doc/_templates/index.html Sat Apr 19 23:28:24 2008 @@ -1,11 +1,6 @@ {% extends "layout.html" %} {% set title = 'Overview' %} {% block body %} - -

Welcome

Modified: doctools/trunk/doc/concepts.rst ============================================================================== --- doctools/trunk/doc/concepts.rst (original) +++ doctools/trunk/doc/concepts.rst Sat Apr 19 23:28:24 2008 @@ -109,6 +109,3 @@ Though only few such names are currently used by Sphinx, you should not create documents or document-containing directories with such names. (Using ``_`` as a prefix for a custom template directory is fine.) - -``index`` is a special name, too, if the :confval:`html_index` config value is -nonempty. Modified: doctools/trunk/doc/conf.py ============================================================================== --- doctools/trunk/doc/conf.py (original) +++ doctools/trunk/doc/conf.py Sat Apr 19 23:28:24 2008 @@ -95,7 +95,7 @@ # Additional templates that should be rendered to pages, maps page names to # templates. -#html_additional_pages = {} +html_additional_pages = {'index': 'index.html'} # If true, the reST sources are included in the HTML build as _sources/. #html_copy_source = True Modified: doctools/trunk/doc/config.rst ============================================================================== --- doctools/trunk/doc/config.rst (original) +++ doctools/trunk/doc/config.rst Sat Apr 19 23:28:24 2008 @@ -149,6 +149,14 @@ These options influence HTML as well as HTML Help output, and other builders that use Sphinx' HTMLWriter class. +.. confval:: html_title + + The "title" for HTML documentation generated with Sphinx' own templates. + This is appended to the ```` tag of individual pages, and used in the + navigation bar as the "topmost" element. It defaults to :samp:`'{<project>} + v{<revision>} documentation'`, where the placeholders are replaced by the + config values of the same name. + .. confval:: html_style The style sheet to use for HTML pages. A file of that name must exist either @@ -173,17 +181,6 @@ If true, *SmartyPants* will be used to convert quotes and dashes to typographically correct entities. Default: ``True``. -.. confval:: html_index - - Content template for the index page, filename relative to this file. If this - is not the empty string, the "index" document will not be created from a - reStructuredText file but from the ``index.html`` template. The template you - specify in this value will be included in the ``index.html``, together with - a list of tables. - - If you want to completely override the resulting ``index`` document, set this - to some nonempty value and override the ``index.html`` template. - .. confval:: html_sidebars Custom sidebar templates, must be a dictionary that maps document names to @@ -210,6 +207,19 @@ This will render the template ``customdownload.html`` as the page ``download.html``. + .. note:: + + Earlier versions of Sphinx had a value called :confval:`html_index` which + was a clumsy way of controlling the content of the "index" document. If + you used this feature, migrate it by adding an ``'index'`` key to this + setting, with your custom template as the value, and in your custom + template, use :: + + {% extend "defindex.html" %} + {% block tables %} + ... old template content ... + {% endblock %} + .. confval:: html_use_modindex If true, add a module index to the HTML documents. Default is ``True``. Modified: doctools/trunk/sphinx/builder.py ============================================================================== --- doctools/trunk/sphinx/builder.py (original) +++ doctools/trunk/sphinx/builder.py Sat Apr 19 23:28:24 2008 @@ -317,12 +317,17 @@ else: self.last_updated = None + docstitle = self.config.html_title or \ + '%s v%s documentation' % (self.config.project, + self.config.release) + self.globalcontext = dict( project = self.config.project, - copyright = self.config.copyright, release = self.config.release, version = self.config.version, last_updated = self.last_updated, + docstitle = docstitle, + copyright = self.config.copyright, style = self.config.html_style, use_modindex = self.config.html_use_modindex, builder = self.name, @@ -463,12 +468,6 @@ self.info(' '+pagename, nonl=1) self.handle_page(pagename, {}, template) - # the index page - indextemplate = self.config.html_index - if indextemplate: - self.info(' index', nonl=1) - self.handle_page('index', {'indextemplate': indextemplate}, 'index.html') - self.info() # copy image files @@ -859,9 +858,14 @@ otherchanges.setdefault((docname, title), []).append( (entry, docname, lineno)) + docstitle = self.config.html_title or \ + '%s v%s documentation' % (self.config.project, + self.config.release) + ctx = { 'project': self.config.project, 'version': version, + 'docstitle': docstitle, 'libchanges': sorted(libchanges.iteritems()), 'apichanges': sorted(apichanges), 'otherchanges': sorted(otherchanges.iteritems()), Modified: doctools/trunk/sphinx/config.py ============================================================================== --- doctools/trunk/sphinx/config.py (original) +++ doctools/trunk/sphinx/config.py Sat Apr 19 23:28:24 2008 @@ -45,12 +45,12 @@ template_bridge = (None, False), # HTML options + html_title = (None, False), html_style = ('default.css', False), html_static_path = ([], False), html_last_updated_fmt = ('%b %d, %Y', False), html_use_smartypants = (True, False), html_translator_class = (None, False), - html_index = ('', False), html_sidebars = ({}, False), html_additional_pages = ({}, False), html_use_modindex = (True, False), Modified: doctools/trunk/sphinx/quickstart.py ============================================================================== --- doctools/trunk/sphinx/quickstart.py (original) +++ doctools/trunk/sphinx/quickstart.py Sat Apr 19 23:28:24 2008 @@ -96,6 +96,10 @@ # given in html_static_path. html_style = 'default.css' +# The name for this set of Sphinx documents. If None, it defaults to +# "<project> v<release> documentation". +#html_title = None + # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". @@ -109,9 +113,6 @@ # typographically correct entities. #html_use_smartypants = True -# Content template for the index page. -#html_index = '' - # Custom sidebar templates, maps document names to template names. #html_sidebars = {} Modified: doctools/trunk/sphinx/templates/changes/frameset.html ============================================================================== --- doctools/trunk/sphinx/templates/changes/frameset.html (original) +++ doctools/trunk/sphinx/templates/changes/frameset.html Sat Apr 19 23:28:24 2008 @@ -2,7 +2,7 @@ "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> - <title>Changes in Version {{ version }} — {{ project }} Documentation + Changes in Version {{ version }} — {{ docstitle }} Modified: doctools/trunk/sphinx/templates/changes/rstsource.html ============================================================================== --- doctools/trunk/sphinx/templates/changes/rstsource.html (original) +++ doctools/trunk/sphinx/templates/changes/rstsource.html Sat Apr 19 23:28:24 2008 @@ -2,7 +2,7 @@ "http://www.w3.org/TR/html4/loose.dtd"> - {{ filename }} — {{ project }} Documentation + {{ filename }} — {{ docstitle }} Modified: doctools/trunk/sphinx/templates/changes/versionchanges.html ============================================================================== --- doctools/trunk/sphinx/templates/changes/versionchanges.html (original) +++ doctools/trunk/sphinx/templates/changes/versionchanges.html Sat Apr 19 23:28:24 2008 @@ -9,7 +9,7 @@ - Changes in Version {{ version }} — {{ project }} Documentation + Changes in Version {{ version }} — {{ docstitle }}

Added: doctools/trunk/sphinx/templates/defindex.html ============================================================================== --- (empty file) +++ doctools/trunk/sphinx/templates/defindex.html Sat Apr 19 23:28:24 2008 @@ -0,0 +1,30 @@ +{% extends "layout.html" %} +{% set title = 'Overview' %} +{% block body %} +

{{ docstitle }}

+

+ Welcome! This is + {% block description %}the documentation for {{ project }} + {{ release }}{% if last_updated %}, last updated {{ last_updated }}{% endif %}{% endblock %}. +

+ {% block beforetables %} + {% endblock %} + {% block tables %} +

Indices and tables:

+ + +
+ + + + + +
+ {% endblock %} + {% block aftertables %} + {% endblock %} +{% endblock %} Deleted: doctools/trunk/sphinx/templates/index.html ============================================================================== --- doctools/trunk/sphinx/templates/index.html Sat Apr 19 23:28:24 2008 +++ (empty file) @@ -1,30 +0,0 @@ -{% extends "layout.html" %} -{% set title = 'Overview' %} -{% set page_links = [ - (pathto('@rss/recent'), 'application/rss+xml', 'Recent Comments') -] %} -{% block body %} -

{{ project }} Documentation

-

- Welcome! This is the documentation for {{ project }} - {{ release }}{% if last_updated %}, last updated {{ last_updated }}{% endif %}. -

- {% if indextemplate %} - {{ rendertemplate(indextemplate) }} - {% else %} -

Indices and tables:

- - -
- - - - - -
- {% endif %} -{% endblock %} Modified: doctools/trunk/sphinx/templates/layout.html ============================================================================== --- doctools/trunk/sphinx/templates/layout.html (original) +++ doctools/trunk/sphinx/templates/layout.html Sat Apr 19 23:28:24 2008 @@ -23,7 +23,7 @@ title="Customize your viewing settings" accesskey="S">settings | {%- endif %} {%- block rootrellink %} -
  • {{ project }} v{{ release }} documentation »
  • +
  • {{ docstitle }} »
  • {%- endblock %} {%- for parent in parents %}
  • {{ parent.title }} »
  • @@ -36,7 +36,7 @@ {%- if builder != 'htmlhelp' %} - {%- set titlesuffix = " — " + project + " Documentation" %} + {%- set titlesuffix = " — " + docstitle %} {%- endif %} {{ title|striptags }}{{ titlesuffix }} {%- if builder == 'web' %} @@ -70,7 +70,7 @@ {%- if hasdoc('copyright') %} {%- endif %} - + {%- if parents %} {%- endif %} Modified: doctools/trunk/sphinx/templates/search.html ============================================================================== --- doctools/trunk/sphinx/templates/search.html (original) +++ doctools/trunk/sphinx/templates/search.html Sat Apr 19 23:28:24 2008 @@ -1,12 +1,12 @@ {% extends "layout.html" %} -{% set title = 'Search Documentation' %} +{% set title = 'Search' %} {% block extrahead %} {% endblock %} {% block body %} -

    Search Documentation

    +

    Search

    - From here you can search the {{ project }} documentation. Enter your search + From here you can search these documents. Enter your search words into the box below and click "search". Note that the search function will automatically search for all of the words. Pages containing less words won't appear in the result list. From python-checkins at python.org Sat Apr 19 23:28:39 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 23:28:39 +0200 (CEST) Subject: [Python-checkins] r62407 - in python/trunk/Doc: conf.py tools/sphinxext/indexcontent.html Message-ID: <20080419212839.390A01E400C@bag.python.org> Author: georg.brandl Date: Sat Apr 19 23:28:38 2008 New Revision: 62407 Log: Update template for newest Sphinx. Modified: python/trunk/Doc/conf.py python/trunk/Doc/tools/sphinxext/indexcontent.html Modified: python/trunk/Doc/conf.py ============================================================================== --- python/trunk/Doc/conf.py (original) +++ python/trunk/Doc/conf.py Sat Apr 19 23:28:38 2008 @@ -74,9 +74,6 @@ # typographically correct entities. html_use_smartypants = True -# Content template for the index page, filename relative to this file. -html_index = 'indexcontent.html' - # Custom sidebar templates, filenames relative to this file. html_sidebars = { 'index': 'indexsidebar.html', @@ -85,6 +82,7 @@ # Additional templates that should be rendered to pages. html_additional_pages = { 'download': 'download.html', + 'index': 'indexcontent.html', } # Output file base name for HTML help builder. Modified: python/trunk/Doc/tools/sphinxext/indexcontent.html ============================================================================== --- python/trunk/Doc/tools/sphinxext/indexcontent.html (original) +++ python/trunk/Doc/tools/sphinxext/indexcontent.html Sat Apr 19 23:28:38 2008 @@ -1,3 +1,5 @@ +{% extends "defindex.html" %} +{% block tables %}

    Parts of the documentation:

    @@ -54,3 +56,4 @@
    +{% endblock %} From nnorwitz at gmail.com Sat Apr 19 23:57:13 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sat, 19 Apr 2008 17:57:13 -0400 Subject: [Python-checkins] Python Regression Test Failures all (2) Message-ID: <20080419215713.GA21946@python.psfb.org> 324 tests OK. 2 tests failed: test_socket_ssl test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler testCompileLibrary still working, be patient... test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test test_socket_ssl failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_socket_ssl.py", line 52, in testBasic buf = f.read() File "/tmp/python-test/local/lib/python2.6/ssl.py", line 333, in read data = self._sslobj.read(recv_size) SSLError: [Errno 8] _ssl.c:1276: EOF occurred in violation of protocol test_socketserver test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11672 refs] [14670 refs] test_threading_local test_threadsignals test_time test_timeout test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllibnet test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 324 tests OK. 2 tests failed: test_socket_ssl test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [602024 refs] From python-checkins at python.org Sat Apr 19 23:33:07 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 19 Apr 2008 23:33:07 +0200 (CEST) Subject: [Python-checkins] r62408 - doctools/trunk/sphinx/static/jquery.js Message-ID: <20080419213307.300921E4013@bag.python.org> Author: georg.brandl Date: Sat Apr 19 23:33:06 2008 New Revision: 62408 Log: Update jQuery and use minified version. Modified: doctools/trunk/sphinx/static/jquery.js Modified: doctools/trunk/sphinx/static/jquery.js ============================================================================== --- doctools/trunk/sphinx/static/jquery.js (original) +++ doctools/trunk/sphinx/static/jquery.js Sat Apr 19 23:33:06 2008 @@ -1,2344 +1,32 @@ -// prevent execution of jQuery if included more than once -if(typeof window.jQuery == "undefined") { /* - * jQuery 1.1.3.1 - New Wave Javascript + * jQuery 1.2.3 - New Wave Javascript * - * Copyright (c) 2007 John Resig (jquery.com) + * Copyright (c) 2008 John Resig (jquery.com) * Dual licensed under the MIT (MIT-LICENSE.txt) * and GPL (GPL-LICENSE.txt) licenses. * - * $Date: 2007-07-05 00:43:24 -0400 (Thu, 05 Jul 2007) $ - * $Rev: 2243 $ + * $Date: 2008-02-06 00:21:25 -0500 (Wed, 06 Feb 2008) $ + * $Rev: 4663 $ */ - -// Global undefined variable -window.undefined = window.undefined; -var jQuery = function(a,c) { - // If the context is global, return a new object - if ( window == this || !this.init ) - return new jQuery(a,c); - - return this.init(a,c); -}; - -// Map over the $ in case of overwrite -if ( typeof $ != "undefined" ) - jQuery._$ = $; - -// Map the jQuery namespace to the '$' one -var $ = jQuery; - -jQuery.fn = jQuery.prototype = { - init: function(a,c) { - // Make sure that a selection was provided - a = a || document; - - // HANDLE: $(function) - // Shortcut for document ready - if ( jQuery.isFunction(a) ) - return new jQuery(document)[ jQuery.fn.ready ? "ready" : "load" ]( a ); - - // Handle HTML strings - if ( typeof a == "string" ) { - // HANDLE: $(html) -> $(array) - var m = /^[^<]*(<(.|\s)+>)[^>]*$/.exec(a); - if ( m ) - a = jQuery.clean( [ m[1] ] ); - - // HANDLE: $(expr) - else - return new jQuery( c ).find( a ); - } - - return this.setArray( - // HANDLE: $(array) - a.constructor == Array && a || - - // HANDLE: $(arraylike) - // Watch for when an array-like object is passed as the selector - (a.jquery || a.length && a != window && !a.nodeType && a[0] != undefined && a[0].nodeType) && jQuery.makeArray( a ) || - - // HANDLE: $(*) - [ a ] ); - }, - jquery: "1.1.3.1", - - size: function() { - return this.length; - }, - - length: 0, - - get: function( num ) { - return num == undefined ? - - // Return a 'clean' array - jQuery.makeArray( this ) : - - // Return just the object - this[num]; - }, - pushStack: function( a ) { - var ret = jQuery(a); - ret.prevObject = this; - return ret; - }, - setArray: function( a ) { - this.length = 0; - [].push.apply( this, a ); - return this; - }, - each: function( fn, args ) { - return jQuery.each( this, fn, args ); - }, - index: function( obj ) { - var pos = -1; - this.each(function(i){ - if ( this == obj ) pos = i; - }); - return pos; - }, - - attr: function( key, value, type ) { - var obj = key; - - // Look for the case where we're accessing a style value - if ( key.constructor == String ) - if ( value == undefined ) - return this.length && jQuery[ type || "attr" ]( this[0], key ) || undefined; - else { - obj = {}; - obj[ key ] = value; - } - - // Check to see if we're setting style values - return this.each(function(index){ - // Set all the styles - for ( var prop in obj ) - jQuery.attr( - type ? this.style : this, - prop, jQuery.prop(this, obj[prop], type, index, prop) - ); - }); - }, - - css: function( key, value ) { - return this.attr( key, value, "curCSS" ); - }, - - text: function(e) { - if ( typeof e == "string" ) - return this.empty().append( document.createTextNode( e ) ); - - var t = ""; - jQuery.each( e || this, function(){ - jQuery.each( this.childNodes, function(){ - if ( this.nodeType != 8 ) - t += this.nodeType != 1 ? - this.nodeValue : jQuery.fn.text([ this ]); - }); - }); - return t; - }, - - wrap: function() { - // The elements to wrap the target around - var a, args = arguments; - - // Wrap each of the matched elements individually - return this.each(function(){ - if ( !a ) - a = jQuery.clean(args, this.ownerDocument); - - // Clone the structure that we're using to wrap - var b = a[0].cloneNode(true); - - // Insert it before the element to be wrapped - this.parentNode.insertBefore( b, this ); - - // Find the deepest point in the wrap structure - while ( b.firstChild ) - b = b.firstChild; - - // Move the matched element to within the wrap structure - b.appendChild( this ); - }); - }, - append: function() { - return this.domManip(arguments, true, 1, function(a){ - this.appendChild( a ); - }); - }, - prepend: function() { - return this.domManip(arguments, true, -1, function(a){ - this.insertBefore( a, this.firstChild ); - }); - }, - before: function() { - return this.domManip(arguments, false, 1, function(a){ - this.parentNode.insertBefore( a, this ); - }); - }, - after: function() { - return this.domManip(arguments, false, -1, function(a){ - this.parentNode.insertBefore( a, this.nextSibling ); - }); - }, - end: function() { - return this.prevObject || jQuery([]); - }, - find: function(t) { - var data = jQuery.map(this, function(a){ return jQuery.find(t,a); }); - return this.pushStack( /[^+>] [^+>]/.test( t ) || t.indexOf("..") > -1 ? - jQuery.unique( data ) : data ); - }, - clone: function(deep) { - // Need to remove events on the element and its descendants - var $this = this.add(this.find("*")); - $this.each(function() { - this._$events = {}; - for (var type in this.$events) - this._$events[type] = jQuery.extend({},this.$events[type]); - }).unbind(); - - // Do the clone - var r = this.pushStack( jQuery.map( this, function(a){ - return a.cloneNode( deep != undefined ? deep : true ); - }) ); - - // Add the events back to the original and its descendants - $this.each(function() { - var events = this._$events; - for (var type in events) - for (var handler in events[type]) - jQuery.event.add(this, type, events[type][handler], events[type][handler].data); - this._$events = null; - }); - - // Return the cloned set - return r; - }, - - filter: function(t) { - return this.pushStack( - jQuery.isFunction( t ) && - jQuery.grep(this, function(el, index){ - return t.apply(el, [index]) - }) || - - jQuery.multiFilter(t,this) ); - }, - - not: function(t) { - return this.pushStack( - t.constructor == String && - jQuery.multiFilter(t, this, true) || - - jQuery.grep(this, function(a) { - return ( t.constructor == Array || t.jquery ) - ? jQuery.inArray( a, t ) < 0 - : a != t; - }) - ); - }, - - add: function(t) { - return this.pushStack( jQuery.merge( - this.get(), - t.constructor == String ? - jQuery(t).get() : - t.length != undefined && (!t.nodeName || t.nodeName == "FORM") ? - t : [t] ) - ); - }, - is: function(expr) { - return expr ? jQuery.multiFilter(expr,this).length > 0 : false; - }, - - val: function( val ) { - return val == undefined ? - ( this.length ? this[0].value : null ) : - this.attr( "value", val ); - }, - - html: function( val ) { - return val == undefined ? - ( this.length ? this[0].innerHTML : null ) : - this.empty().append( val ); - }, - domManip: function(args, table, dir, fn){ - var clone = this.length > 1, a; - - return this.each(function(){ - if ( !a ) { - a = jQuery.clean(args, this.ownerDocument); - if ( dir < 0 ) - a.reverse(); - } - - var obj = this; - - if ( table && jQuery.nodeName(this, "table") && jQuery.nodeName(a[0], "tr") ) - obj = this.getElementsByTagName("tbody")[0] || this.appendChild(document.createElement("tbody")); - - jQuery.each( a, function(){ - fn.apply( obj, [ clone ? this.cloneNode(true) : this ] ); - }); - - }); - } -}; - -jQuery.extend = jQuery.fn.extend = function() { - // copy reference to target object - var target = arguments[0], a = 1; - - // extend jQuery itself if only one argument is passed - if ( arguments.length == 1 ) { - target = this; - a = 0; - } - var prop; - while ( (prop = arguments[a++]) != null ) - // Extend the base object - for ( var i in prop ) target[i] = prop[i]; - - // Return the modified object - return target; -}; - -jQuery.extend({ - noConflict: function() { - if ( jQuery._$ ) - $ = jQuery._$; - return jQuery; - }, - - // This may seem like some crazy code, but trust me when I say that this - // is the only cross-browser way to do this. --John - isFunction: function( fn ) { - return !!fn && typeof fn != "string" && !fn.nodeName && - fn.constructor != Array && /function/i.test( fn + "" ); - }, - - // check if an element is in a XML document - isXMLDoc: function(elem) { - return elem.tagName && elem.ownerDocument && !elem.ownerDocument.body; - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toUpperCase() == name.toUpperCase(); - }, - // args is for internal usage only - each: function( obj, fn, args ) { - if ( obj.length == undefined ) - for ( var i in obj ) - fn.apply( obj[i], args || [i, obj[i]] ); - else - for ( var i = 0, ol = obj.length; i < ol; i++ ) - if ( fn.apply( obj[i], args || [i, obj[i]] ) === false ) break; - return obj; - }, - - prop: function(elem, value, type, index, prop){ - // Handle executable functions - if ( jQuery.isFunction( value ) ) - value = value.call( elem, [index] ); - - // exclude the following css properties to add px - var exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i; - - // Handle passing in a number to a CSS property - return value && value.constructor == Number && type == "curCSS" && !exclude.test(prop) ? - value + "px" : - value; - }, - - className: { - // internal only, use addClass("class") - add: function( elem, c ){ - jQuery.each( c.split(/\s+/), function(i, cur){ - if ( !jQuery.className.has( elem.className, cur ) ) - elem.className += ( elem.className ? " " : "" ) + cur; - }); - }, - - // internal only, use removeClass("class") - remove: function( elem, c ){ - elem.className = c != undefined ? - jQuery.grep( elem.className.split(/\s+/), function(cur){ - return !jQuery.className.has( c, cur ); - }).join(" ") : ""; - }, - - // internal only, use is(".class") - has: function( t, c ) { - return jQuery.inArray( c, (t.className || t).toString().split(/\s+/) ) > -1; - } - }, - swap: function(e,o,f) { - for ( var i in o ) { - e.style["old"+i] = e.style[i]; - e.style[i] = o[i]; - } - f.apply( e, [] ); - for ( var i in o ) - e.style[i] = e.style["old"+i]; - }, - - css: function(e,p) { - if ( p == "height" || p == "width" ) { - var old = {}, oHeight, oWidth, d = ["Top","Bottom","Right","Left"]; - - jQuery.each( d, function(){ - old["padding" + this] = 0; - old["border" + this + "Width"] = 0; - }); - - jQuery.swap( e, old, function() { - if ( jQuery(e).is(':visible') ) { - oHeight = e.offsetHeight; - oWidth = e.offsetWidth; - } else { - e = jQuery(e.cloneNode(true)) - .find(":radio").removeAttr("checked").end() - .css({ - visibility: "hidden", position: "absolute", display: "block", right: "0", left: "0" - }).appendTo(e.parentNode)[0]; - - var parPos = jQuery.css(e.parentNode,"position") || "static"; - if ( parPos == "static" ) - e.parentNode.style.position = "relative"; - - oHeight = e.clientHeight; - oWidth = e.clientWidth; - - if ( parPos == "static" ) - e.parentNode.style.position = "static"; - - e.parentNode.removeChild(e); - } - }); - - return p == "height" ? oHeight : oWidth; - } - - return jQuery.curCSS( e, p ); - }, - - curCSS: function(elem, prop, force) { - var ret; - - if (prop == "opacity" && jQuery.browser.msie) { - ret = jQuery.attr(elem.style, "opacity"); - return ret == "" ? "1" : ret; - } - - if (prop.match(/float/i)) - prop = jQuery.styleFloat; - - if (!force && elem.style[prop]) - ret = elem.style[prop]; - - else if (document.defaultView && document.defaultView.getComputedStyle) { - - if (prop.match(/float/i)) - prop = "float"; - - prop = prop.replace(/([A-Z])/g,"-$1").toLowerCase(); - var cur = document.defaultView.getComputedStyle(elem, null); - - if ( cur ) - ret = cur.getPropertyValue(prop); - else if ( prop == "display" ) - ret = "none"; - else - jQuery.swap(elem, { display: "block" }, function() { - var c = document.defaultView.getComputedStyle(this, ""); - ret = c && c.getPropertyValue(prop) || ""; - }); - - } else if (elem.currentStyle) { - var newProp = prop.replace(/\-(\w)/g,function(m,c){return c.toUpperCase();}); - ret = elem.currentStyle[prop] || elem.currentStyle[newProp]; - } - - return ret; - }, - - clean: function(a, doc) { - var r = []; - doc = doc || document; - - jQuery.each( a, function(i,arg){ - if ( !arg ) return; - - if ( arg.constructor == Number ) - arg = arg.toString(); - - // Convert html string into DOM nodes - if ( typeof arg == "string" ) { - // Trim whitespace, otherwise indexOf won't work as expected - var s = jQuery.trim(arg).toLowerCase(), div = doc.createElement("div"), tb = []; - - var wrap = - // option or optgroup - !s.indexOf("", ""] || - - !s.indexOf("", ""] || - - (!s.indexOf("", ""] || - - !s.indexOf("", ""] || - - // matched above - (!s.indexOf("", ""] || - - !s.indexOf("", ""] || - - [0,"",""]; - - // Go to html and back, then peel off extra wrappers - div.innerHTML = wrap[1] + arg + wrap[2]; - - // Move to the right depth - while ( wrap[0]-- ) - div = div.firstChild; - - // Remove IE's autoinserted from table fragments - if ( jQuery.browser.msie ) { - - // String was a , *may* have spurious - if ( !s.indexOf(" or - else if ( wrap[1] == "
    " && s.indexOf("= 0 ; --n ) - if ( jQuery.nodeName(tb[n], "tbody") && !tb[n].childNodes.length ) - tb[n].parentNode.removeChild(tb[n]); - - } - - arg = jQuery.makeArray( div.childNodes ); - } - - if ( 0 === arg.length && (!jQuery.nodeName(arg, "form") && !jQuery.nodeName(arg, "select")) ) - return; - - if ( arg[0] == undefined || jQuery.nodeName(arg, "form") || arg.options ) - r.push( arg ); - else - r = jQuery.merge( r, arg ); - - }); - - return r; - }, - - attr: function(elem, name, value){ - var fix = jQuery.isXMLDoc(elem) ? {} : jQuery.props; - - // Certain attributes only work when accessed via the old DOM 0 way - if ( fix[name] ) { - if ( value != undefined ) elem[fix[name]] = value; - return elem[fix[name]]; - - } else if ( value == undefined && jQuery.browser.msie && jQuery.nodeName(elem, "form") && (name == "action" || name == "method") ) - return elem.getAttributeNode(name).nodeValue; - - // IE elem.getAttribute passes even for style - else if ( elem.tagName ) { - - - if ( value != undefined ) elem.setAttribute( name, value ); - if ( jQuery.browser.msie && /href|src/.test(name) && !jQuery.isXMLDoc(elem) ) - return elem.getAttribute( name, 2 ); - return elem.getAttribute( name ); - - // elem is actually elem.style ... set the style - } else { - // IE actually uses filters for opacity - if ( name == "opacity" && jQuery.browser.msie ) { - if ( value != undefined ) { - // IE has trouble with opacity if it does not have layout - // Force it by setting the zoom level - elem.zoom = 1; - - // Set the alpha filter to set the opacity - elem.filter = (elem.filter || "").replace(/alpha\([^)]*\)/,"") + - (parseFloat(value).toString() == "NaN" ? "" : "alpha(opacity=" + value * 100 + ")"); - } - - return elem.filter ? - (parseFloat( elem.filter.match(/opacity=([^)]*)/)[1] ) / 100).toString() : ""; - } - name = name.replace(/-([a-z])/ig,function(z,b){return b.toUpperCase();}); - if ( value != undefined ) elem[name] = value; - return elem[name]; - } - }, - trim: function(t){ - return t.replace(/^\s+|\s+$/g, ""); - }, - - makeArray: function( a ) { - var r = []; - - // Need to use typeof to fight Safari childNodes crashes - if ( typeof a != "array" ) - for ( var i = 0, al = a.length; i < al; i++ ) - r.push( a[i] ); - else - r = a.slice( 0 ); - - return r; - }, - - inArray: function( b, a ) { - for ( var i = 0, al = a.length; i < al; i++ ) - if ( a[i] == b ) - return i; - return -1; - }, - merge: function(first, second) { - // We have to loop this way because IE & Opera overwrite the length - // expando of getElementsByTagName - for ( var i = 0; second[i]; i++ ) - first.push(second[i]); - return first; - }, - unique: function(first) { - var r = [], num = jQuery.mergeNum++; - - for ( var i = 0, fl = first.length; i < fl; i++ ) - if ( num != first[i].mergeNum ) { - first[i].mergeNum = num; - r.push(first[i]); - } - - return r; - }, - - mergeNum: 0, - grep: function(elems, fn, inv) { - // If a string is passed in for the function, make a function - // for it (a handy shortcut) - if ( typeof fn == "string" ) - fn = new Function("a","i","return " + fn); - - var result = []; - - // Go through the array, only saving the items - // that pass the validator function - for ( var i = 0, el = elems.length; i < el; i++ ) - if ( !inv && fn(elems[i],i) || inv && !fn(elems[i],i) ) - result.push( elems[i] ); - - return result; - }, - map: function(elems, fn) { - // If a string is passed in for the function, make a function - // for it (a handy shortcut) - if ( typeof fn == "string" ) - fn = new Function("a","return " + fn); - - var result = []; - - // Go through the array, translating each of the items to their - // new value (or values). - for ( var i = 0, el = elems.length; i < el; i++ ) { - var val = fn(elems[i],i); - - if ( val !== null && val != undefined ) { - if ( val.constructor != Array ) val = [val]; - result = result.concat( val ); - } - } - - return result; - } -}); - -/* - * Whether the W3C compliant box model is being used. - * - * @property - * @name $.boxModel - * @type Boolean - * @cat JavaScript - */ -new function() { - var b = navigator.userAgent.toLowerCase(); - - // Figure out what browser is being used - jQuery.browser = { - version: (b.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1], - safari: /webkit/.test(b), - opera: /opera/.test(b), - msie: /msie/.test(b) && !/opera/.test(b), - mozilla: /mozilla/.test(b) && !/(compatible|webkit)/.test(b) - }; - - // Check to see if the W3C box model is being used - jQuery.boxModel = !jQuery.browser.msie || document.compatMode == "CSS1Compat"; - - jQuery.styleFloat = jQuery.browser.msie ? "styleFloat" : "cssFloat", - - jQuery.props = { - "for": "htmlFor", - "class": "className", - "float": jQuery.styleFloat, - cssFloat: jQuery.styleFloat, - styleFloat: jQuery.styleFloat, - innerHTML: "innerHTML", - className: "className", - value: "value", - disabled: "disabled", - checked: "checked", - readonly: "readOnly", - selected: "selected", - maxlength: "maxLength" - }; -}; - -jQuery.each({ - parent: "a.parentNode", - parents: "jQuery.parents(a)", - next: "jQuery.nth(a,2,'nextSibling')", - prev: "jQuery.nth(a,2,'previousSibling')", - siblings: "jQuery.sibling(a.parentNode.firstChild,a)", - children: "jQuery.sibling(a.firstChild)" -}, function(i,n){ - jQuery.fn[ i ] = function(a) { - var ret = jQuery.map(this,n); - if ( a && typeof a == "string" ) - ret = jQuery.multiFilter(a,ret); - return this.pushStack( ret ); - }; -}); - -jQuery.each({ - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after" -}, function(i,n){ - jQuery.fn[ i ] = function(){ - var a = arguments; - return this.each(function(){ - for ( var j = 0, al = a.length; j < al; j++ ) - jQuery(a[j])[n]( this ); - }); - }; -}); - -jQuery.each( { - removeAttr: function( key ) { - jQuery.attr( this, key, "" ); - this.removeAttribute( key ); - }, - addClass: function(c){ - jQuery.className.add(this,c); - }, - removeClass: function(c){ - jQuery.className.remove(this,c); - }, - toggleClass: function( c ){ - jQuery.className[ jQuery.className.has(this,c) ? "remove" : "add" ](this, c); - }, - remove: function(a){ - if ( !a || jQuery.filter( a, [this] ).r.length ) - this.parentNode.removeChild( this ); - }, - empty: function() { - while ( this.firstChild ) - this.removeChild( this.firstChild ); - } -}, function(i,n){ - jQuery.fn[ i ] = function() { - return this.each( n, arguments ); - }; -}); - -jQuery.each( [ "eq", "lt", "gt", "contains" ], function(i,n){ - jQuery.fn[ n ] = function(num,fn) { - return this.filter( ":" + n + "(" + num + ")", fn ); - }; -}); - -jQuery.each( [ "height", "width" ], function(i,n){ - jQuery.fn[ n ] = function(h) { - return h == undefined ? - ( this.length ? jQuery.css( this[0], n ) : null ) : - this.css( n, h.constructor == String ? h : h + "px" ); - }; -}); -jQuery.extend({ - expr: { - "": "m[2]=='*'||jQuery.nodeName(a,m[2])", - "#": "a.getAttribute('id')==m[2]", - ":": { - // Position Checks - lt: "im[3]-0", - nth: "m[3]-0==i", - eq: "m[3]-0==i", - first: "i==0", - last: "i==r.length-1", - even: "i%2==0", - odd: "i%2", - - // Child Checks - "first-child": "a.parentNode.getElementsByTagName('*')[0]==a", - "last-child": "jQuery.nth(a.parentNode.lastChild,1,'previousSibling')==a", - "only-child": "!jQuery.nth(a.parentNode.lastChild,2,'previousSibling')", - - // Parent Checks - parent: "a.firstChild", - empty: "!a.firstChild", - - // Text Check - contains: "(a.textContent||a.innerText||'').indexOf(m[3])>=0", - - // Visibility - visible: '"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden"', - hidden: '"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden"', - - // Form attributes - enabled: "!a.disabled", - disabled: "a.disabled", - checked: "a.checked", - selected: "a.selected||jQuery.attr(a,'selected')", - - // Form elements - text: "'text'==a.type", - radio: "'radio'==a.type", - checkbox: "'checkbox'==a.type", - file: "'file'==a.type", - password: "'password'==a.type", - submit: "'submit'==a.type", - image: "'image'==a.type", - reset: "'reset'==a.type", - button: '"button"==a.type||jQuery.nodeName(a,"button")', - input: "/input|select|textarea|button/i.test(a.nodeName)" - }, - "[": "jQuery.find(m[2],a).length" - }, - - // The regular expressions that power the parsing engine - parse: [ - // Match: [@value='test'], [@foo] - /^\[ *(@)([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/, - - // Match: [div], [div p] - /^(\[)\s*(.*?(\[.*?\])?[^[]*?)\s*\]/, - - // Match: :contains('foo') - /^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/, - - // Match: :even, :last-chlid, #id, .class - new RegExp("^([:.#]*)(" + - ( jQuery.chars = jQuery.browser.safari && jQuery.browser.version < "3.0.0" ? "\\w" : "(?:[\\w\u0128-\uFFFF*_-]|\\\\.)" ) + "+)") - ], - - multiFilter: function( expr, elems, not ) { - var old, cur = []; - - while ( expr && expr != old ) { - old = expr; - var f = jQuery.filter( expr, elems, not ); - expr = f.t.replace(/^\s*,\s*/, "" ); - cur = not ? elems = f.r : jQuery.merge( cur, f.r ); - } - - return cur; - }, - find: function( t, context ) { - // Quickly handle non-string expressions - if ( typeof t != "string" ) - return [ t ]; - - // Make sure that the context is a DOM Element - if ( context && !context.nodeType ) - context = null; - - // Set the correct context (if none is provided) - context = context || document; - - // Handle the common XPath // expression - if ( !t.indexOf("//") ) { - context = context.documentElement; - t = t.substr(2,t.length); - - // And the / root expression - } else if ( !t.indexOf("/") && !context.ownerDocument ) { - context = context.documentElement; - t = t.substr(1,t.length); - if ( t.indexOf("/") >= 1 ) - t = t.substr(t.indexOf("/"),t.length); - } - - // Initialize the search - var ret = [context], done = [], last; - - // Continue while a selector expression exists, and while - // we're no longer looping upon ourselves - while ( t && last != t ) { - var r = []; - last = t; - - t = jQuery.trim(t).replace( /^\/\//, "" ); - - var foundToken = false; - - // An attempt at speeding up child selectors that - // point to a specific element tag - var re = new RegExp("^[/>]\\s*(" + jQuery.chars + "+)"); - var m = re.exec(t); - - if ( m ) { - var nodeName = m[1].toUpperCase(); - - // Perform our own iteration and filter - for ( var i = 0; ret[i]; i++ ) - for ( var c = ret[i].firstChild; c; c = c.nextSibling ) - if ( c.nodeType == 1 && (nodeName == "*" || c.nodeName.toUpperCase() == nodeName.toUpperCase()) ) - r.push( c ); - - ret = r; - t = t.replace( re, "" ); - if ( t.indexOf(" ") == 0 ) continue; - foundToken = true; - } else { - re = /^((\/?\.\.)|([>\/+~]))\s*([a-z]*)/i; - - if ( (m = re.exec(t)) != null ) { - r = []; - - var nodeName = m[4], mergeNum = jQuery.mergeNum++; - m = m[1]; - - for ( var j = 0, rl = ret.length; j < rl; j++ ) - if ( m.indexOf("..") < 0 ) { - var n = m == "~" || m == "+" ? ret[j].nextSibling : ret[j].firstChild; - for ( ; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) { - if ( m == "~" && n.mergeNum == mergeNum ) break; - - if (!nodeName || n.nodeName.toUpperCase() == nodeName.toUpperCase() ) { - if ( m == "~" ) n.mergeNum = mergeNum; - r.push( n ); - } - - if ( m == "+" ) break; - } - } else - r.push( ret[j].parentNode ); - - ret = r; - - // And remove the token - t = jQuery.trim( t.replace( re, "" ) ); - foundToken = true; - } - } - - // See if there's still an expression, and that we haven't already - // matched a token - if ( t && !foundToken ) { - // Handle multiple expressions - if ( !t.indexOf(",") ) { - // Clean the result set - if ( context == ret[0] ) ret.shift(); - - // Merge the result sets - done = jQuery.merge( done, ret ); - - // Reset the context - r = ret = [context]; - - // Touch up the selector string - t = " " + t.substr(1,t.length); - - } else { - // Optomize for the case nodeName#idName - var re2 = new RegExp("^(" + jQuery.chars + "+)(#)(" + jQuery.chars + "+)"); - var m = re2.exec(t); - - // Re-organize the results, so that they're consistent - if ( m ) { - m = [ 0, m[2], m[3], m[1] ]; - - } else { - // Otherwise, do a traditional filter check for - // ID, class, and element selectors - re2 = new RegExp("^([#.]?)(" + jQuery.chars + "*)"); - m = re2.exec(t); - } - - m[2] = m[2].replace(/\\/g, ""); - - var elem = ret[ret.length-1]; - - // Try to do a global search by ID, where we can - if ( m[1] == "#" && elem && elem.getElementById ) { - // Optimization for HTML document case - var oid = elem.getElementById(m[2]); - - // Do a quick check for the existence of the actual ID attribute - // to avoid selecting by the name attribute in IE - // also check to insure id is a string to avoid selecting an element with the name of 'id' inside a form - if ( (jQuery.browser.msie||jQuery.browser.opera) && oid && typeof oid.id == "string" && oid.id != m[2] ) - oid = jQuery('[@id="'+m[2]+'"]', elem)[0]; - - // Do a quick check for node name (where applicable) so - // that div#foo searches will be really fast - ret = r = oid && (!m[3] || jQuery.nodeName(oid, m[3])) ? [oid] : []; - } else { - // We need to find all descendant elements - for ( var i = 0; ret[i]; i++ ) { - // Grab the tag name being searched for - var tag = m[1] != "" || m[0] == "" ? "*" : m[2]; - - // Handle IE7 being really dumb about s - if ( tag == "*" && ret[i].nodeName.toLowerCase() == "object" ) - tag = "param"; - - r = jQuery.merge( r, ret[i].getElementsByTagName( tag )); - } - - // It's faster to filter by class and be done with it - if ( m[1] == "." ) - r = jQuery.classFilter( r, m[2] ); - - // Same with ID filtering - if ( m[1] == "#" ) { - var tmp = []; - - // Try to find the element with the ID - for ( var i = 0; r[i]; i++ ) - if ( r[i].getAttribute("id") == m[2] ) { - tmp = [ r[i] ]; - break; - } - - r = tmp; - } - - ret = r; - } - - t = t.replace( re2, "" ); - } - - } - - // If a selector string still exists - if ( t ) { - // Attempt to filter it - var val = jQuery.filter(t,r); - ret = r = val.r; - t = jQuery.trim(val.t); - } - } - - // An error occurred with the selector; - // just return an empty set instead - if ( t ) - ret = []; - - // Remove the root context - if ( ret && context == ret[0] ) - ret.shift(); - - // And combine the results - done = jQuery.merge( done, ret ); - - return done; - }, - - classFilter: function(r,m,not){ - m = " " + m + " "; - var tmp = []; - for ( var i = 0; r[i]; i++ ) { - var pass = (" " + r[i].className + " ").indexOf( m ) >= 0; - if ( !not && pass || not && !pass ) - tmp.push( r[i] ); - } - return tmp; - }, - - filter: function(t,r,not) { - var last; - - // Look for common filter expressions - while ( t && t != last ) { - last = t; - - var p = jQuery.parse, m; - - for ( var i = 0; p[i]; i++ ) { - m = p[i].exec( t ); - - if ( m ) { - // Remove what we just matched - t = t.substring( m[0].length ); - - m[2] = m[2].replace(/\\/g, ""); - break; - } - } - - if ( !m ) - break; - - // :not() is a special case that can be optimized by - // keeping it out of the expression list - if ( m[1] == ":" && m[2] == "not" ) - r = jQuery.filter(m[3], r, true).r; - - // We can get a big speed boost by filtering by class here - else if ( m[1] == "." ) - r = jQuery.classFilter(r, m[2], not); - - else if ( m[1] == "@" ) { - var tmp = [], type = m[3]; - - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var a = r[i], z = a[ jQuery.props[m[2]] || m[2] ]; - - if ( z == null || /href|src/.test(m[2]) ) - z = jQuery.attr(a,m[2]) || ''; - - if ( (type == "" && !!z || - type == "=" && z == m[5] || - type == "!=" && z != m[5] || - type == "^=" && z && !z.indexOf(m[5]) || - type == "$=" && z.substr(z.length - m[5].length) == m[5] || - (type == "*=" || type == "~=") && z.indexOf(m[5]) >= 0) ^ not ) - tmp.push( a ); - } - - r = tmp; - - // We can get a speed boost by handling nth-child here - } else if ( m[1] == ":" && m[2] == "nth-child" ) { - var num = jQuery.mergeNum++, tmp = [], - test = /(\d*)n\+?(\d*)/.exec( - m[3] == "even" && "2n" || m[3] == "odd" && "2n+1" || - !/\D/.test(m[3]) && "n+" + m[3] || m[3]), - first = (test[1] || 1) - 0, last = test[2] - 0; - - for ( var i = 0, rl = r.length; i < rl; i++ ) { - var node = r[i], parentNode = node.parentNode; - - if ( num != parentNode.mergeNum ) { - var c = 1; - - for ( var n = parentNode.firstChild; n; n = n.nextSibling ) - if ( n.nodeType == 1 ) - n.nodeIndex = c++; - - parentNode.mergeNum = num; - } - - var add = false; - - if ( first == 1 ) { - if ( last == 0 || node.nodeIndex == last ) - add = true; - } else if ( (node.nodeIndex + last) % first == 0 ) - add = true; - - if ( add ^ not ) - tmp.push( node ); - } - - r = tmp; - - // Otherwise, find the expression to execute - } else { - var f = jQuery.expr[m[1]]; - if ( typeof f != "string" ) - f = jQuery.expr[m[1]][m[2]]; - - // Build a custom macro to enclose it - eval("f = function(a,i){return " + f + "}"); - - // Execute it against the current filter - r = jQuery.grep( r, f, not ); - } - } - - // Return an array of filtered elements (r) - // and the modified expression string (t) - return { r: r, t: t }; - }, - parents: function( elem ){ - var matched = []; - var cur = elem.parentNode; - while ( cur && cur != document ) { - matched.push( cur ); - cur = cur.parentNode; - } - return matched; - }, - nth: function(cur,result,dir,elem){ - result = result || 1; - var num = 0; - - for ( ; cur; cur = cur[dir] ) - if ( cur.nodeType == 1 && ++num == result ) - break; - - return cur; - }, - sibling: function( n, elem ) { - var r = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType == 1 && (!elem || n != elem) ) - r.push( n ); - } - - return r; - } -}); -/* - * A number of helper functions used for managing events. - * Many of the ideas behind this code orignated from - * Dean Edwards' addEvent library. - */ -jQuery.event = { - - // Bind an event to an element - // Original by Dean Edwards - add: function(element, type, handler, data) { - // For whatever reason, IE has trouble passing the window object - // around, causing it to be cloned in the process - if ( jQuery.browser.msie && element.setInterval != undefined ) - element = window; - - // Make sure that the function being executed has a unique ID - if ( !handler.guid ) - handler.guid = this.guid++; - - // if data is passed, bind to handler - if( data != undefined ) { - // Create temporary function pointer to original handler - var fn = handler; - - // Create unique handler function, wrapped around original handler - handler = function() { - // Pass arguments and context to original handler - return fn.apply(this, arguments); - }; - - // Store data in unique handler - handler.data = data; - - // Set the guid of unique handler to the same of original handler, so it can be removed - handler.guid = fn.guid; - } - - // Init the element's event structure - if (!element.$events) - element.$events = {}; - - if (!element.$handle) - element.$handle = function() { - // returned undefined or false - var val; - - // Handle the second event of a trigger and when - // an event is called after a page has unloaded - if ( typeof jQuery == "undefined" || jQuery.event.triggered ) - return val; - - val = jQuery.event.handle.apply(element, arguments); - - return val; - }; - - // Get the current list of functions bound to this event - var handlers = element.$events[type]; - - // Init the event handler queue - if (!handlers) { - handlers = element.$events[type] = {}; - - // And bind the global event handler to the element - if (element.addEventListener) - element.addEventListener(type, element.$handle, false); - else - element.attachEvent("on" + type, element.$handle); - } - - // Add the function to the element's handler list - handlers[handler.guid] = handler; - - // Remember the function in a global list (for triggering) - if (!this.global[type]) - this.global[type] = []; - // Only add the element to the global list once - if (jQuery.inArray(element, this.global[type]) == -1) - this.global[type].push( element ); - }, - - guid: 1, - global: {}, - - // Detach an event or set of events from an element - remove: function(element, type, handler) { - var events = element.$events, ret, index; - - if ( events ) { - // type is actually an event object here - if ( type && type.type ) { - handler = type.handler; - type = type.type; - } - - if ( !type ) { - for ( type in events ) - this.remove( element, type ); - - } else if ( events[type] ) { - // remove the given handler for the given type - if ( handler ) - delete events[type][handler.guid]; - - // remove all handlers for the given type - else - for ( handler in element.$events[type] ) - delete events[type][handler]; - - // remove generic event handler if no more handlers exist - for ( ret in events[type] ) break; - if ( !ret ) { - if (element.removeEventListener) - element.removeEventListener(type, element.$handle, false); - else - element.detachEvent("on" + type, element.$handle); - ret = null; - delete events[type]; - - // Remove element from the global event type cache - while ( this.global[type] && ( (index = jQuery.inArray(element, this.global[type])) >= 0 ) ) - delete this.global[type][index]; - } - } - - // Remove the expando if it's no longer used - for ( ret in events ) break; - if ( !ret ) - element.$handle = element.$events = null; - } - }, - - trigger: function(type, data, element) { - // Clone the incoming data, if any - data = jQuery.makeArray(data || []); - - // Handle a global trigger - if ( !element ) - jQuery.each( this.global[type] || [], function(){ - jQuery.event.trigger( type, data, this ); - }); - - // Handle triggering a single element - else { - var val, ret, fn = jQuery.isFunction( element[ type ] || null ); - - // Pass along a fake event - data.unshift( this.fix({ type: type, target: element }) ); - - // Trigger the event - if ( jQuery.isFunction(element.$handle) && (val = element.$handle.apply( element, data )) !== false ) - this.triggered = true; - - if ( fn && val !== false && !jQuery.nodeName(element, 'a') ) - element[ type ](); - - this.triggered = false; - } - }, - - handle: function(event) { - // returned undefined or false - var val; - - // Empty object is for triggered events with no data - event = jQuery.event.fix( event || window.event || {} ); - - var c = this.$events && this.$events[event.type], args = [].slice.call( arguments, 1 ); - args.unshift( event ); - - for ( var j in c ) { - // Pass in a reference to the handler function itself - // So that we can later remove it - args[0].handler = c[j]; - args[0].data = c[j].data; - - if ( c[j].apply( this, args ) === false ) { - event.preventDefault(); - event.stopPropagation(); - val = false; - } - } - - // Clean up added properties in IE to prevent memory leak - if (jQuery.browser.msie) - event.target = event.preventDefault = event.stopPropagation = - event.handler = event.data = null; - - return val; - }, - - fix: function(event) { - // store a copy of the original event object - // and clone to set read-only properties - var originalEvent = event; - event = jQuery.extend({}, originalEvent); - - // add preventDefault and stopPropagation since - // they will not work on the clone - event.preventDefault = function() { - // if preventDefault exists run it on the original event - if (originalEvent.preventDefault) - return originalEvent.preventDefault(); - // otherwise set the returnValue property of the original event to false (IE) - originalEvent.returnValue = false; - }; - event.stopPropagation = function() { - // if stopPropagation exists run it on the original event - if (originalEvent.stopPropagation) - return originalEvent.stopPropagation(); - // otherwise set the cancelBubble property of the original event to true (IE) - originalEvent.cancelBubble = true; - }; - - // Fix target property, if necessary - if ( !event.target && event.srcElement ) - event.target = event.srcElement; - - // check if target is a textnode (safari) - if (jQuery.browser.safari && event.target.nodeType == 3) - event.target = originalEvent.target.parentNode; - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && event.fromElement ) - event.relatedTarget = event.fromElement == event.target ? event.toElement : event.fromElement; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && event.clientX != null ) { - var e = document.documentElement, b = document.body; - event.pageX = event.clientX + (e && e.scrollLeft || b.scrollLeft); - event.pageY = event.clientY + (e && e.scrollTop || b.scrollTop); - } - - // Add which for key events - if ( !event.which && (event.charCode || event.keyCode) ) - event.which = event.charCode || event.keyCode; - - // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) - if ( !event.metaKey && event.ctrlKey ) - event.metaKey = event.ctrlKey; - - // Add which for click: 1 == left; 2 == middle; 3 == right - // Note: button is not normalized, so don't use it - if ( !event.which && event.button ) - event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); - - return event; - } -}; - -jQuery.fn.extend({ - bind: function( type, data, fn ) { - return type == "unload" ? this.one(type, data, fn) : this.each(function(){ - jQuery.event.add( this, type, fn || data, fn && data ); - }); - }, - one: function( type, data, fn ) { - return this.each(function(){ - jQuery.event.add( this, type, function(event) { - jQuery(this).unbind(event); - return (fn || data).apply( this, arguments); - }, fn && data); - }); - }, - unbind: function( type, fn ) { - return this.each(function(){ - jQuery.event.remove( this, type, fn ); - }); - }, - trigger: function( type, data ) { - return this.each(function(){ - jQuery.event.trigger( type, data, this ); - }); - }, - toggle: function() { - // Save reference to arguments for access in closure - var a = arguments; - - return this.click(function(e) { - // Figure out which function to execute - this.lastToggle = 0 == this.lastToggle ? 1 : 0; - - // Make sure that clicks stop - e.preventDefault(); - - // and execute the function - return a[this.lastToggle].apply( this, [e] ) || false; - }); - }, - hover: function(f,g) { - - // A private function for handling mouse 'hovering' - function handleHover(e) { - // Check if mouse(over|out) are still within the same parent element - var p = e.relatedTarget; - - // Traverse up the tree - while ( p && p != this ) try { p = p.parentNode } catch(e) { p = this; }; - - // If we actually just moused on to a sub-element, ignore it - if ( p == this ) return false; - - // Execute the right function - return (e.type == "mouseover" ? f : g).apply(this, [e]); - } - - // Bind the function to the two event listeners - return this.mouseover(handleHover).mouseout(handleHover); - }, - ready: function(f) { - // If the DOM is already ready - if ( jQuery.isReady ) - // Execute the function immediately - f.apply( document, [jQuery] ); - - // Otherwise, remember the function for later - else - // Add the function to the wait list - jQuery.readyList.push( function() { return f.apply(this, [jQuery]) } ); - - return this; - } -}); - -jQuery.extend({ - /* - * All the code that makes DOM Ready work nicely. - */ - isReady: false, - readyList: [], - - // Handle when the DOM is ready - ready: function() { - // Make sure that the DOM is not already loaded - if ( !jQuery.isReady ) { - // Remember that the DOM is ready - jQuery.isReady = true; - - // If there are functions bound, to execute - if ( jQuery.readyList ) { - // Execute all of them - jQuery.each( jQuery.readyList, function(){ - this.apply( document ); - }); - - // Reset the list of functions - jQuery.readyList = null; - } - // Remove event listener to avoid memory leak - if ( jQuery.browser.mozilla || jQuery.browser.opera ) - document.removeEventListener( "DOMContentLoaded", jQuery.ready, false ); - - // Remove script element used by IE hack - if( !window.frames.length ) // don't remove if frames are present (#1187) - jQuery(window).load(function(){ jQuery("#__ie_init").remove(); }); - } - } -}); - -new function(){ - - jQuery.each( ("blur,focus,load,resize,scroll,unload,click,dblclick," + - "mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + - "submit,keydown,keypress,keyup,error").split(","), function(i,o){ - - // Handle event binding - jQuery.fn[o] = function(f){ - return f ? this.bind(o, f) : this.trigger(o); - }; - - }); - - // If Mozilla is used - if ( jQuery.browser.mozilla || jQuery.browser.opera ) - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", jQuery.ready, false ); - - // If IE is used, use the excellent hack by Matthias Miller - // http://www.outofhanwell.com/blog/index.php?title=the_window_onload_problem_revisited - else if ( jQuery.browser.msie ) { - - // Only works if you document.write() it - document.write("<\/script>"); - - // Use the defer script hack - var script = document.getElementById("__ie_init"); - - // script does not exist if jQuery is loaded dynamically - if ( script ) - script.onreadystatechange = function() { - if ( this.readyState != "complete" ) return; - jQuery.ready(); - }; - - // Clear from memory - script = null; - - // If Safari is used - } else if ( jQuery.browser.safari ) - // Continually check to see if the document.readyState is valid - jQuery.safariTimer = setInterval(function(){ - // loaded and complete are both valid states - if ( document.readyState == "loaded" || - document.readyState == "complete" ) { - - // If either one are found, remove the timer - clearInterval( jQuery.safariTimer ); - jQuery.safariTimer = null; - - // and execute any waiting functions - jQuery.ready(); - } - }, 10); - - // A fallback to window.onload, that will always work - jQuery.event.add( window, "load", jQuery.ready ); - -}; - -// Clean up after IE to avoid memory leaks -if (jQuery.browser.msie) - jQuery(window).one("unload", function() { - var global = jQuery.event.global; - for ( var type in global ) { - var els = global[type], i = els.length; - if ( i && type != 'unload' ) - do - els[i-1] && jQuery.event.remove(els[i-1], type); - while (--i); - } - }); -jQuery.fn.extend({ - loadIfModified: function( url, params, callback ) { - this.load( url, params, callback, 1 ); - }, - load: function( url, params, callback, ifModified ) { - if ( jQuery.isFunction( url ) ) - return this.bind("load", url); - - callback = callback || function(){}; - - // Default to a GET request - var type = "GET"; - - // If the second parameter was provided - if ( params ) - // If it's a function - if ( jQuery.isFunction( params ) ) { - // We assume that it's the callback - callback = params; - params = null; - - // Otherwise, build a param string - } else { - params = jQuery.param( params ); - type = "POST"; - } - - var self = this; - - // Request the remote document - jQuery.ajax({ - url: url, - type: type, - data: params, - ifModified: ifModified, - complete: function(res, status){ - if ( status == "success" || !ifModified && status == "notmodified" ) - // Inject the HTML into all the matched elements - self.attr("innerHTML", res.responseText) - // Execute all the scripts inside of the newly-injected HTML - .evalScripts() - // Execute callback - .each( callback, [res.responseText, status, res] ); - else - callback.apply( self, [res.responseText, status, res] ); - } - }); - return this; - }, - serialize: function() { - return jQuery.param( this ); - }, - evalScripts: function() { - return this.find("script").each(function(){ - if ( this.src ) - jQuery.getScript( this.src ); - else - jQuery.globalEval( this.text || this.textContent || this.innerHTML || "" ); - }).end(); - } - -}); - -// Attach a bunch of functions for handling common AJAX events - -jQuery.each( "ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","), function(i,o){ - jQuery.fn[o] = function(f){ - return this.bind(o, f); - }; -}); - -jQuery.extend({ - get: function( url, data, callback, type, ifModified ) { - // shift arguments if data argument was ommited - if ( jQuery.isFunction( data ) ) { - callback = data; - data = null; - } - - return jQuery.ajax({ - type: "GET", - url: url, - data: data, - success: callback, - dataType: type, - ifModified: ifModified - }); - }, - getIfModified: function( url, data, callback, type ) { - return jQuery.get(url, data, callback, type, 1); - }, - getScript: function( url, callback ) { - return jQuery.get(url, null, callback, "script"); - }, - getJSON: function( url, data, callback ) { - return jQuery.get(url, data, callback, "json"); - }, - post: function( url, data, callback, type ) { - if ( jQuery.isFunction( data ) ) { - callback = data; - data = {}; - } - - return jQuery.ajax({ - type: "POST", - url: url, - data: data, - success: callback, - dataType: type - }); - }, - ajaxTimeout: function( timeout ) { - jQuery.ajaxSettings.timeout = timeout; - }, - ajaxSetup: function( settings ) { - jQuery.extend( jQuery.ajaxSettings, settings ); - }, - - ajaxSettings: { - global: true, - type: "GET", - timeout: 0, - contentType: "application/x-www-form-urlencoded", - processData: true, - async: true, - data: null - }, - - // Last-Modified header cache for next request - lastModified: {}, - ajax: function( s ) { - // TODO introduce global settings, allowing the client to modify them for all requests, not only timeout - s = jQuery.extend({}, jQuery.ajaxSettings, s); - - // if data available - if ( s.data ) { - // convert data if not already a string - if (s.processData && typeof s.data != "string") - s.data = jQuery.param(s.data); - // append data to url for get requests - if( s.type.toLowerCase() == "get" ) { - // "?" + data or "&" + data (in case there are already params) - s.url += ((s.url.indexOf("?") > -1) ? "&" : "?") + s.data; - // IE likes to send both get and post data, prevent this - s.data = null; - } - } - - // Watch for a new set of requests - if ( s.global && ! jQuery.active++ ) - jQuery.event.trigger( "ajaxStart" ); - - var requestDone = false; - - // Create the request object; Microsoft failed to properly - // implement the XMLHttpRequest in IE7, so we use the ActiveXObject when it is available - var xml = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); - - // Open the socket - xml.open(s.type, s.url, s.async); - - // Set the correct header, if data is being sent - if ( s.data ) - xml.setRequestHeader("Content-Type", s.contentType); - - // Set the If-Modified-Since header, if ifModified mode. - if ( s.ifModified ) - xml.setRequestHeader("If-Modified-Since", - jQuery.lastModified[s.url] || "Thu, 01 Jan 1970 00:00:00 GMT" ); - - // Set header so the called script knows that it's an XMLHttpRequest - xml.setRequestHeader("X-Requested-With", "XMLHttpRequest"); - - // Allow custom headers/mimetypes - if( s.beforeSend ) - s.beforeSend(xml); - - if ( s.global ) - jQuery.event.trigger("ajaxSend", [xml, s]); - - // Wait for a response to come back - var onreadystatechange = function(isTimeout){ - // The transfer is complete and the data is available, or the request timed out - if ( xml && (xml.readyState == 4 || isTimeout == "timeout") ) { - requestDone = true; - - // clear poll interval - if (ival) { - clearInterval(ival); - ival = null; - } - - var status; - try { - status = jQuery.httpSuccess( xml ) && isTimeout != "timeout" ? - s.ifModified && jQuery.httpNotModified( xml, s.url ) ? "notmodified" : "success" : "error"; - // Make sure that the request was successful or notmodified - if ( status != "error" ) { - // Cache Last-Modified header, if ifModified mode. - var modRes; - try { - modRes = xml.getResponseHeader("Last-Modified"); - } catch(e) {} // swallow exception thrown by FF if header is not available - - if ( s.ifModified && modRes ) - jQuery.lastModified[s.url] = modRes; - - // process the data (runs the xml through httpData regardless of callback) - var data = jQuery.httpData( xml, s.dataType ); - - // If a local callback was specified, fire it and pass it the data - if ( s.success ) - s.success( data, status ); - - // Fire the global callback - if( s.global ) - jQuery.event.trigger( "ajaxSuccess", [xml, s] ); - } else - jQuery.handleError(s, xml, status); - } catch(e) { - status = "error"; - jQuery.handleError(s, xml, status, e); - } - - // The request was completed - if( s.global ) - jQuery.event.trigger( "ajaxComplete", [xml, s] ); - - // Handle the global AJAX counter - if ( s.global && ! --jQuery.active ) - jQuery.event.trigger( "ajaxStop" ); - - // Process result - if ( s.complete ) - s.complete(xml, status); - - // Stop memory leaks - if(s.async) - xml = null; - } - }; - - // don't attach the handler to the request, just poll it instead - var ival = setInterval(onreadystatechange, 13); - - // Timeout checker - if ( s.timeout > 0 ) - setTimeout(function(){ - // Check to see if the request is still happening - if ( xml ) { - // Cancel the request - xml.abort(); - - if( !requestDone ) - onreadystatechange( "timeout" ); - } - }, s.timeout); - - // Send the data - try { - xml.send(s.data); - } catch(e) { - jQuery.handleError(s, xml, null, e); - } - - // firefox 1.5 doesn't fire statechange for sync requests - if ( !s.async ) - onreadystatechange(); - - // return XMLHttpRequest to allow aborting the request etc. - return xml; - }, - - handleError: function( s, xml, status, e ) { - // If a local callback was specified, fire it - if ( s.error ) s.error( xml, status, e ); - - // Fire the global callback - if ( s.global ) - jQuery.event.trigger( "ajaxError", [xml, s, e] ); - }, - - // Counter for holding the number of active queries - active: 0, - - // Determines if an XMLHttpRequest was successful or not - httpSuccess: function( r ) { - try { - return !r.status && location.protocol == "file:" || - ( r.status >= 200 && r.status < 300 ) || r.status == 304 || - jQuery.browser.safari && r.status == undefined; - } catch(e){} - return false; - }, - - // Determines if an XMLHttpRequest returns NotModified - httpNotModified: function( xml, url ) { - try { - var xmlRes = xml.getResponseHeader("Last-Modified"); - - // Firefox always returns 200. check Last-Modified date - return xml.status == 304 || xmlRes == jQuery.lastModified[url] || - jQuery.browser.safari && xml.status == undefined; - } catch(e){} - return false; - }, - - /* Get the data out of an XMLHttpRequest. - * Return parsed XML if content-type header is "xml" and type is "xml" or omitted, - * otherwise return plain text. - * (String) data - The type of data that you're expecting back, - * (e.g. "xml", "html", "script") - */ - httpData: function( r, type ) { - var ct = r.getResponseHeader("content-type"); - var data = !type && ct && ct.indexOf("xml") >= 0; - data = type == "xml" || data ? r.responseXML : r.responseText; - - // If the type is "script", eval it in global context - if ( type == "script" ) - jQuery.globalEval( data ); - - // Get the JavaScript object, if JSON is used. - if ( type == "json" ) - data = eval("(" + data + ")"); - - // evaluate scripts within html - if ( type == "html" ) - jQuery("
    ").html(data).evalScripts(); - - return data; - }, - - // Serialize an array of form elements or a set of - // key/values into a query string - param: function( a ) { - var s = []; - - // If an array was passed in, assume that it is an array - // of form elements - if ( a.constructor == Array || a.jquery ) - // Serialize the form elements - jQuery.each( a, function(){ - s.push( encodeURIComponent(this.name) + "=" + encodeURIComponent( this.value ) ); - }); - - // Otherwise, assume that it's an object of key/value pairs - else - // Serialize the key/values - for ( var j in a ) - // If the value is an array then the key names need to be repeated - if ( a[j] && a[j].constructor == Array ) - jQuery.each( a[j], function(){ - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( this ) ); - }); - else - s.push( encodeURIComponent(j) + "=" + encodeURIComponent( a[j] ) ); - - // Return the resulting serialization - return s.join("&"); - }, - - // evalulates a script in global context - // not reliable for safari - globalEval: function( data ) { - if ( window.execScript ) - window.execScript( data ); - else if ( jQuery.browser.safari ) - // safari doesn't provide a synchronous global eval - window.setTimeout( data, 0 ); - else - eval.call( window, data ); - } - -}); -jQuery.fn.extend({ - - show: function(speed,callback){ - return speed ? - this.animate({ - height: "show", width: "show", opacity: "show" - }, speed, callback) : - - this.filter(":hidden").each(function(){ - this.style.display = this.oldblock ? this.oldblock : ""; - if ( jQuery.css(this,"display") == "none" ) - this.style.display = "block"; - }).end(); - }, - - hide: function(speed,callback){ - return speed ? - this.animate({ - height: "hide", width: "hide", opacity: "hide" - }, speed, callback) : - - this.filter(":visible").each(function(){ - this.oldblock = this.oldblock || jQuery.css(this,"display"); - if ( this.oldblock == "none" ) - this.oldblock = "block"; - this.style.display = "none"; - }).end(); - }, - - // Save the old toggle function - _toggle: jQuery.fn.toggle, - toggle: function( fn, fn2 ){ - return jQuery.isFunction(fn) && jQuery.isFunction(fn2) ? - this._toggle( fn, fn2 ) : - fn ? - this.animate({ - height: "toggle", width: "toggle", opacity: "toggle" - }, fn, fn2) : - this.each(function(){ - jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ](); - }); - }, - slideDown: function(speed,callback){ - return this.animate({height: "show"}, speed, callback); - }, - slideUp: function(speed,callback){ - return this.animate({height: "hide"}, speed, callback); - }, - slideToggle: function(speed, callback){ - return this.animate({height: "toggle"}, speed, callback); - }, - fadeIn: function(speed, callback){ - return this.animate({opacity: "show"}, speed, callback); - }, - fadeOut: function(speed, callback){ - return this.animate({opacity: "hide"}, speed, callback); - }, - fadeTo: function(speed,to,callback){ - return this.animate({opacity: to}, speed, callback); - }, - animate: function( prop, speed, easing, callback ) { - return this.queue(function(){ - var hidden = jQuery(this).is(":hidden"), - opt = jQuery.speed(speed, easing, callback), - self = this; - - for ( var p in prop ) { - if ( prop[p] == "hide" && hidden || prop[p] == "show" && !hidden ) - return jQuery.isFunction(opt.complete) && opt.complete.apply(this); - - if ( p == "height" || p == "width" ) { - // Store display property - opt.display = jQuery.css(this, "display"); - - // Make sure that nothing sneaks out - opt.overflow = this.style.overflow; - } - } - - if ( opt.overflow != null ) - this.style.overflow = "hidden"; - - this.curAnim = jQuery.extend({}, prop); - - jQuery.each( prop, function(name, val){ - var e = new jQuery.fx( self, opt, name ); - if ( val.constructor == Number ) - e.custom( e.cur(), val ); - else - e[ val == "toggle" ? hidden ? "show" : "hide" : val ]( prop ); - }); - }); - }, - queue: function(type,fn){ - if ( !fn ) { - fn = type; - type = "fx"; - } - - return this.each(function(){ - if ( !this.queue ) - this.queue = {}; - - if ( !this.queue[type] ) - this.queue[type] = []; - - this.queue[type].push( fn ); - - if ( this.queue[type].length == 1 ) - fn.apply(this); - }); - } - -}); - -jQuery.extend({ - - speed: function(speed, easing, fn) { - var opt = speed && speed.constructor == Object ? speed : { - complete: fn || !fn && easing || - jQuery.isFunction( speed ) && speed, - duration: speed, - easing: fn && easing || easing && easing.constructor != Function && easing || (jQuery.easing.swing ? "swing" : "linear") - }; - - opt.duration = (opt.duration && opt.duration.constructor == Number ? - opt.duration : - { slow: 600, fast: 200 }[opt.duration]) || 400; - - // Queueing - opt.old = opt.complete; - opt.complete = function(){ - jQuery.dequeue(this, "fx"); - if ( jQuery.isFunction( opt.old ) ) - opt.old.apply( this ); - }; - - return opt; - }, - - easing: { - linear: function( p, n, firstNum, diff ) { - return firstNum + diff * p; - }, - swing: function( p, n, firstNum, diff ) { - return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum; - } - }, - - queue: {}, - - dequeue: function(elem,type){ - type = type || "fx"; - - if ( elem.queue && elem.queue[type] ) { - // Remove self - elem.queue[type].shift(); - - // Get next function - var f = elem.queue[type][0]; - - if ( f ) f.apply( elem ); - } - }, - - timers: [], - - /* - * I originally wrote fx() as a clone of moo.fx and in the process - * of making it small in size the code became illegible to sane - * people. You've been warned. - */ - - fx: function( elem, options, prop ){ - - var z = this; - - // The styles - var y = elem.style; - - // Simple function for setting a style value - z.a = function(){ - if ( options.step ) - options.step.apply( elem, [ z.now ] ); - - if ( prop == "opacity" ) - jQuery.attr(y, "opacity", z.now); // Let attr handle opacity - else { - y[prop] = parseInt(z.now) + "px"; - y.display = "block"; // Set display property to block for animation - } - }; - - // Figure out the maximum number to run to - z.max = function(){ - return parseFloat( jQuery.css(elem,prop) ); - }; - - // Get the current size - z.cur = function(){ - var r = parseFloat( jQuery.curCSS(elem, prop) ); - return r && r > -10000 ? r : z.max(); - }; - - // Start an animation from one number to another - z.custom = function(from,to){ - z.startTime = (new Date()).getTime(); - z.now = from; - z.a(); - - jQuery.timers.push(function(){ - return z.step(from, to); - }); - - if ( jQuery.timers.length == 1 ) { - var timer = setInterval(function(){ - var timers = jQuery.timers; - - for ( var i = 0; i < timers.length; i++ ) - if ( !timers[i]() ) - timers.splice(i--, 1); - - if ( !timers.length ) - clearInterval( timer ); - }, 13); - } - }; - - // Simple 'show' function - z.show = function(){ - if ( !elem.orig ) elem.orig = {}; - - // Remember where we started, so that we can go back to it later - elem.orig[prop] = jQuery.attr( elem.style, prop ); - - options.show = true; - - // Begin the animation - z.custom(0, this.cur()); - - // Make sure that we start at a small width/height to avoid any - // flash of content - if ( prop != "opacity" ) - y[prop] = "1px"; - - // Start by showing the element - jQuery(elem).show(); - }; - - // Simple 'hide' function - z.hide = function(){ - if ( !elem.orig ) elem.orig = {}; - - // Remember where we started, so that we can go back to it later - elem.orig[prop] = jQuery.attr( elem.style, prop ); - - options.hide = true; - - // Begin the animation - z.custom(this.cur(), 0); - }; - - // Each step of an animation - z.step = function(firstNum, lastNum){ - var t = (new Date()).getTime(); - - if (t > options.duration + z.startTime) { - z.now = lastNum; - z.a(); - - if (elem.curAnim) elem.curAnim[ prop ] = true; - - var done = true; - for ( var i in elem.curAnim ) - if ( elem.curAnim[i] !== true ) - done = false; - - if ( done ) { - if ( options.display != null ) { - // Reset the overflow - y.overflow = options.overflow; - - // Reset the display - y.display = options.display; - if ( jQuery.css(elem, "display") == "none" ) - y.display = "block"; - } - - // Hide the element if the "hide" operation was done - if ( options.hide ) - y.display = "none"; - - // Reset the properties, if the item has been hidden or shown - if ( options.hide || options.show ) - for ( var p in elem.curAnim ) - jQuery.attr(y, p, elem.orig[p]); - } - - // If a callback was provided, execute it - if ( done && jQuery.isFunction( options.complete ) ) - // Execute the complete function - options.complete.apply( elem ); - - return false; - } else { - var n = t - this.startTime; - // Figure out where in the animation we are and set the number - var p = n / options.duration; - - // Perform the easing function, defaults to swing - z.now = jQuery.easing[options.easing](p, n, firstNum, (lastNum-firstNum), options.duration); - - // Perform the next step of the animation - z.a(); - } - - return true; - }; - - } -}); -} +(function(){if(window.jQuery)var _jQuery=window.jQuery;var jQuery=window.jQuery=function(selector,context){return new jQuery.prototype.init(selector,context);};if(window.$)var _$=window.$;window.$=jQuery;var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/;var isSimple=/^.[^:#\[\.]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}else if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem)if(elem.id!=match[3])return jQuery().find(selector);else{this[0]=elem;this.length=1;return this;}else +selector=[];}}else +return new jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return new jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(selector.constructor==Array&&selector||(selector.jquery||selector.length&&selector!=window&&!selector.nodeType&&selector[0]!=undefined&&selector[0].nodeType)&&jQuery.makeArray(selector)||[selector]);},jquery:"1.2.3",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;this.each(function(i){if(this==elem)ret=i;});return ret;},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value==undefined)return this.length&&jQuery[type||"attr"](this[0],name)||undefined;else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return!selector?this:this.pushStack(jQuery.merge(this.get(),selector.constructor==String?jQuery(selector).get():selector.length!=undefined&&(!selector.nodeName||jQuery.nodeName(selector,"form"))?selector:[selector]));},is:function(selector){return selector?jQuery.multiFilter(selector,this).length>0:false;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=value.constructor==Array?value:[value];jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this.length?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value==null){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data==undefined&&this.length)data=jQuery.data(this[0],key);return data==null&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")){scripts=scripts.add(elem);}else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.prototype.init.prototype=jQuery.prototype;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==1){target=this;i=0;}for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret;function color(elem){if(!jQuery.browser.safari)return false;var ret=document.defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(elem.style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=elem.style.outline;elem.style.outline="0 solid black";elem.style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&elem.style&&elem.style[name])ret=elem.style[name];else if(document.defaultView&&document.defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var getComputedStyle=document.defaultView.getComputedStyle(elem,null);if(getComputedStyle&&!color(elem))ret=getComputedStyle.getPropertyValue(name);else{var swap=[],stack=[];for(var a=elem;a&&color(a);a=a.parentNode)stack.unshift(a);for(var i=0;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"
    ","
    "]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
    ","
    "]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var fix=jQuery.isXMLDoc(elem)?{}:jQuery.props;if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(fix[name]){if(value!=undefined)elem[fix[name]]=value;return elem[fix[name]];}else if(jQuery.browser.msie&&name=="style")return jQuery.attr(elem.style,"cssText",value);else if(value==undefined&&jQuery.browser.msie&&jQuery.nodeName(elem,"form")&&(name=="action"||name=="method"))return elem.getAttributeNode(name).nodeValue;else if(elem.tagName){if(value!=undefined){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem.setAttribute(name,""+value);}if(jQuery.browser.msie&&/href|src/.test(name)&&!jQuery.isXMLDoc(elem))return elem.getAttribute(name,2);return elem.getAttribute(name);}else{if(name=="opacity"&&jQuery.browser.msie){if(value!=undefined){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseFloat(value).toString()=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100).toString():"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(value!=undefined)elem[name]=value;return elem[name];}},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(typeof array!="array")for(var i=0,length=array.length;i*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false;var re=quickChild;var m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[];var cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&(!elem||n!=elem))r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval!=undefined)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=function(){return fn.apply(this,arguments);};handler.data=data;handler.guid=fn.guid;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){var val;if(typeof jQuery=="undefined"||jQuery.event.triggered)return val;val=jQuery.event.handle.apply(arguments.callee.elem,arguments);return val;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else +for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data||[]);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event)data.unshift(this.fix({type:type,target:elem}));data[0].type=type;if(exclusive)data[0].exclusive=true;if(jQuery.isFunction(jQuery.data(elem,"handle")))val=jQuery.data(elem,"handle").apply(elem,data);if(!fn&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val;event=jQuery.event.fix(event||window.event||{});var parts=event.type.split(".");event.type=parts[0];var handlers=jQuery.data(this,"events")&&jQuery.data(this,"events")[event.type],args=Array.prototype.slice.call(arguments,1);args.unshift(event);for(var j in handlers){var handler=handlers[j];args[0].handler=handler;args[0].data=handler.data;if(!parts[1]&&!event.exclusive||handler.type==parts[1]){var ret=handler.apply(this,args);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}if(jQuery.browser.msie)event.target=event.preventDefault=event.stopPropagation=event.handler=event.data=null;return val;},fix:function(event){var originalEvent=event;event=jQuery.extend({},originalEvent);event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=originalEvent.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;arguments[0].type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;arguments[0].type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){return this.each(function(){jQuery.event.add(this,type,function(event){jQuery(this).unbind(event);return(fn||data).apply(this,arguments);},fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){if(this[0])return jQuery.event.trigger(type,data,this[0],false,fn);return undefined;},toggle:function(){var args=arguments;return this.click(function(event){this.lastToggle=0==this.lastToggle?1:0;event.preventDefault();return args[this.lastToggle].apply(this,arguments)||false;});},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else +jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.apply(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("
    ").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=(new Date).getTime();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){var jsonp,jsre=/=\?(&|$)/g,status,data;s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(s.type.toLowerCase()=="get"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&s.type.toLowerCase()=="get"){var ts=(new Date()).getTime();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&s.type.toLowerCase()=="get"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");if((!s.url.indexOf("http")||!s.url.indexOf("//"))&&s.dataType=="script"&&s.type.toLowerCase()=="get"){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xml=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();xml.open(s.type,s.url,s.async,s.username,s.password);try{if(s.data)xml.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xml.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xml.setRequestHeader("X-Requested-With","XMLHttpRequest");xml.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend)s.beforeSend(xml);if(s.global)jQuery.event.trigger("ajaxSend",[xml,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xml&&(xml.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xml)&&"error"||s.ifModified&&jQuery.httpNotModified(xml,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xml,s.dataType);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xml.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else +jQuery.handleError(s,xml,status);complete();if(s.async)xml=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xml){xml.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xml.send(s.data);}catch(e){jQuery.handleError(s,xml,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xml,s]);}function complete(){if(s.complete)s.complete(xml,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xml,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xml;},handleError:function(s,xml,status,e){if(s.error)s.error(xml,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xml,s,e]);},active:0,httpSuccess:function(r){try{return!r.status&&location.protocol=="file:"||(r.status>=200&&r.status<300)||r.status==304||r.status==1223||jQuery.browser.safari&&r.status==undefined;}catch(e){}return false;},httpNotModified:function(xml,url){try{var xmlRes=xml.getResponseHeader("Last-Modified");return xml.status==304||xmlRes==jQuery.lastModified[url]||jQuery.browser.safari&&xml.status==undefined;}catch(e){}return false;},httpData:function(r,type){var ct=r.getResponseHeader("content-type");var xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0;var data=xml?r.responseXML:r.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle(fn,fn2):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall);var hidden=jQuery(this).is(":hidden"),self=this;for(var p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return jQuery.isFunction(opt.complete)&&opt.complete.apply(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.apply(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(!elem)return undefined;type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",array?jQuery.makeArray(array):[]);return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].apply(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:{slow:600,fast:200}[opt.duration])||400;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.apply(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.apply(this.elem,[this.now,this]);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=(new Date()).getTime();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done&&jQuery.isFunction(this.options.complete))this.options.complete.apply(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.fx.step={scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}};jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),fixed=jQuery.css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&jQuery.css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(jQuery.css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&jQuery.css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||jQuery.css(offsetChild,"position")=="absolute"))||(mozilla&&jQuery.css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l)||0;top+=parseInt(t)||0;}return results;};})(); \ No newline at end of file From python-checkins at python.org Sat Apr 19 23:35:36 2008 From: python-checkins at python.org (mark.dickinson) Date: Sat, 19 Apr 2008 23:35:36 +0200 (CEST) Subject: [Python-checkins] r62409 - python/trunk/Doc/library/math.rst Message-ID: <20080419213536.1FD2D1E4029@bag.python.org> Author: mark.dickinson Date: Sat Apr 19 23:35:35 2008 New Revision: 62409 Log: Correct documentation for math.pow; 0**nan is nan, not 0. (But nan**0 and 1**nan are 1.) Also fix minor typo: 'quite NaN' -> 'quiet NaN' Modified: python/trunk/Doc/library/math.rst Modified: python/trunk/Doc/library/math.rst ============================================================================== --- python/trunk/Doc/library/math.rst (original) +++ python/trunk/Doc/library/math.rst Sat Apr 19 23:35:35 2008 @@ -154,11 +154,15 @@ .. function:: pow(x, y) - Return ``x**y``. ``1.0**y`` returns *1.0*, even for ``1.0**nan``. ``0**y`` - returns *0.* for all positive *y*, *0* and *NAN*. + Return ``x`` raised to the power ``y``. Exceptional cases follow + Annex 'F' of the C99 standard as far as possible. In particular, + ``pow(1.0, x)`` and ``pow(x, 0.0)`` always return ``1.0``, even + when ``x`` is a zero or a NaN. If both ``x`` and ``y`` are finite, + ``x`` is negative, and ``y`` is not an integer then ``pow(x, y)`` + is undefined, and raises :exc:`ValueError`. .. versionchanged:: 2.6 - The outcome of ``1**nan`` and ``0**nan`` was undefined. + The outcome of ``1**nan`` and ``nan**0`` was undefined. .. function:: sqrt(x) @@ -290,7 +294,7 @@ :exc:`OverflowError` isn't defined, and in cases where ``math.log(0)`` raises :exc:`OverflowError`, ``math.log(0L)`` may raise :exc:`ValueError` instead. - All functions return a quite *NaN* if at least one of the args is *NaN*. + All functions return a quiet *NaN* if at least one of the args is *NaN*. Signaling *NaN*s raise an exception. The exception type still depends on the platform and libm implementation. It's usually :exc:`ValueError` for *EDOM* and :exc:`OverflowError` for errno *ERANGE*. From python-checkins at python.org Sat Apr 19 23:49:23 2008 From: python-checkins at python.org (mark.dickinson) Date: Sat, 19 Apr 2008 23:49:23 +0200 (CEST) Subject: [Python-checkins] r62410 - python/trunk/Doc/library/math.rst Message-ID: <20080419214923.0B83A1E4015@bag.python.org> Author: mark.dickinson Date: Sat Apr 19 23:49:22 2008 New Revision: 62410 Log: Move asinh documentation to the proper place. Remove meaningless 'in radians' from inverse hyperbolic functions. Modified: python/trunk/Doc/library/math.rst Modified: python/trunk/Doc/library/math.rst ============================================================================== --- python/trunk/Doc/library/math.rst (original) +++ python/trunk/Doc/library/math.rst Sat Apr 19 23:49:22 2008 @@ -213,13 +213,6 @@ Return the sine of *x* radians. -.. function:: asinh(x) - - Return the inverse hyperbolic sine of *x*, in radians. - - .. versionadded:: 2.6 - - .. function:: tan(x) Return the tangent of *x* radians. @@ -239,18 +232,32 @@ Hyperbolic functions: -.. function:: cosh(x) +.. function:: acosh(x) - Return the hyperbolic cosine of *x*. + Return the inverse hyperbolic cosine of *x*. + .. versionadded:: 2.6 -.. function:: acosh(x) - Return the inverse hyperbolic cosine of *x*, in radians. +.. function:: asinh(x) + + Return the inverse hyperbolic sine of *x*. .. versionadded:: 2.6 +.. function:: atanh(x) + + Return the inverse hyperbolic tangent of *x*. + + .. versionadded:: 2.6 + + +.. function:: cosh(x) + + Return the hyperbolic cosine of *x*. + + .. function:: sinh(x) Return the hyperbolic sine of *x*. @@ -261,12 +268,6 @@ Return the hyperbolic tangent of *x*. -.. function:: atanh(x) - - Return the inverse hyperbolic tangent of *x*, in radians. - - .. versionadded:: 2.6 - The module also defines two mathematical constants: From python-checkins at python.org Sun Apr 20 00:18:33 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 20 Apr 2008 00:18:33 +0200 (CEST) Subject: [Python-checkins] r62411 - python/branches/py3k/Doc/library/functools.rst Message-ID: <20080419221833.59A021E400A@bag.python.org> Author: georg.brandl Date: Sun Apr 20 00:18:33 2008 New Revision: 62411 Log: Remove duplicated reduce() entry. Modified: python/branches/py3k/Doc/library/functools.rst Modified: python/branches/py3k/Doc/library/functools.rst ============================================================================== --- python/branches/py3k/Doc/library/functools.rst (original) +++ python/branches/py3k/Doc/library/functools.rst Sun Apr 20 00:18:33 2008 @@ -15,13 +15,6 @@ The :mod:`functools` module defines the following functions: - -.. function:: reduce(function, iterable[, initializer]) - - This is the same function as :func:`reduce`. It is made available in this module - to allow writing code more forward-compatible with Python 3. - - .. function:: partial(func[,*args][, **keywords]) Return a new :class:`partial` object which when called will behave like *func* @@ -53,7 +46,7 @@ 18 -.. function:: reduce(function, sequence[, initializer]) +.. function:: reduce(function, iterable[, initializer]) Apply *function* of two arguments cumulatively to the items of *sequence*, from left to right, so as to reduce the sequence to a single value. For example, From buildbot at python.org Sun Apr 20 01:00:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 23:00:06 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080419230008.5F0541E400A@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/799 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 16 tests failed: test_bufio test_deque test_distutils test_filecmp test_gzip test_io test_iter test_mailbox test_marshal test_mmap test_pep277 test_set test_univnewlines test_urllib2 test_zipfile test_zipimport ====================================================================== ERROR: test_nullpat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 59, in test_nullpat self.drive_one(bytes(1000)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 50, in drive_one self.try_one(teststring + b"x") File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_primepat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 56, in test_primepat self.drive_one(b"1234567890\00\01\02\03\04\05\06") File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 49, in drive_one self.try_one(teststring) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 80, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 294, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_build (distutils.tests.test_build_scripts.BuildScriptsTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\distutils\tests\support.py", line 34, in tearDown shutil.rmtree(d) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 188, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "c:\buildbot\work\3.0.heller-windows\build\lib\shutil.py", line 186, in rmtree os.rmdir(path) WindowsError: [Error 145] The directory is not empty: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpmycqn0' ====================================================================== ERROR: test_matching (test.test_filecmp.FileCompareTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_filecmp.py", line 13, in setUp output = open(name, 'w') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_1647484 (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 155, in test_1647484 f = gzip.GzipFile(self.filename, mode) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_append (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 51, in test_append self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_many_append (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 62, in test_many_append f = gzip.open(self.filename, 'wb', 9) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 45, in open return GzipFile(filename, mode, compresslevel) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_mode (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 148, in test_mode self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_array_writes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 262, in test_array_writes f = io.open(test_support.TESTFN, "wb", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 809, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 734, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 814, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 766, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 2] No such file or directory: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 62, in tearDown self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 45, in _delete_recursively os.rmdir(target) WindowsError: [Error 145] The directory is not empty: '@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 57, in setUp self._delete_recursively(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 42, in _delete_recursively os.remove(os.path.join(path, name)) WindowsError: [Error 5] Access is denied: '@test\\1' ====================================================================== ERROR: test_ints (test.test_marshal.IntTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 34, in test_ints self.helper(expected) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_floats (test.test_marshal.FloatTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 72, in test_floats self.helper(float(expected)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bytes (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 103, in test_bytes self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_string (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 99, in test_string self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 95, in test_unicode self.helper(marshal.loads(marshal.dumps(s))) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_dict (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 128, in test_dict self.helper(self.d) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_list (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 131, in test_list self.helper(list(self.d.items())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_sets (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 138, in test_sets self.helper(constructor(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tuple (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 134, in test_tuple self.helper(tuple(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_rfind (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 277, in test_rfind f = open(TESTFN, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tougher_find (test.test_mmap.MmapTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mmap.py", line 241, in test_tougher_find f = open(TESTFN, 'wb+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_directory (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_failures (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_listdir (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_open (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_rename (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'wb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestCRNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tell (test.test_univnewlines.TestCRLFNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek (test.test_univnewlines.TestMixedNewlines) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_univnewlines.py", line 38, in setUp fp = open(test_support.TESTFN, self.WRITEMODE) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_urllib2.py", line 607, in test_file f = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAbsoluteArcnames (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 704, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 01:52:40 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 19 Apr 2008 23:52:40 +0000 Subject: [Python-checkins] buildbot failure in alpha Debian trunk Message-ID: <20080419235240.EAAE31E400A@bag.python.org> The Buildbot has detected a new failure of alpha Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Debian%20trunk/builds/84 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-alpha Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,benjamin.peterson,christian.heimes,georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/threading.py", line 500, in __bootstrap_inner self.run() File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 3 tests failed: test_cmath test_mailbox test_math ====================================================================== FAIL: test_specific_values (test.test_cmath.CMathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/test/test_cmath.py", line 366, in test_specific_values self.fail(error_message) AssertionError: asin0020: asin(complex(-9.8813129168249309e-324, 0.0)) ====================================================================== ERROR: test_testfile (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/test/test_math.py", line 675, in test_testfile result = func(ar) ValueError: math domain error 3 tests failed: test_cmath test_mailbox test_math ====================================================================== FAIL: test_specific_values (test.test_cmath.CMathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/test/test_cmath.py", line 366, in test_specific_values self.fail(error_message) AssertionError: asin0020: asin(complex(-9.8813129168249309e-324, 0.0)) ====================================================================== ERROR: test_testfile (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-alpha/build/Lib/test/test_math.py", line 675, in test_testfile result = func(ar) ValueError: math domain error make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sun Apr 20 03:22:30 2008 From: python-checkins at python.org (mark.dickinson) Date: Sun, 20 Apr 2008 03:22:30 +0200 (CEST) Subject: [Python-checkins] r62412 - python/trunk/Lib/test/test_math.py Message-ID: <20080420012230.62C071E4005@bag.python.org> Author: mark.dickinson Date: Sun Apr 20 03:22:30 2008 New Revision: 62412 Log: Report additional diagnostic information in test_math, to help track down debian-alpha buildbot failure. Modified: python/trunk/Lib/test/test_math.py Modified: python/trunk/Lib/test/test_math.py ============================================================================== --- python/trunk/Lib/test/test_math.py (original) +++ python/trunk/Lib/test/test_math.py Sun Apr 20 03:22:30 2008 @@ -672,7 +672,12 @@ # no real versions of rect, polar continue func = getattr(math, fn) - result = func(ar) + try: + result = func(ar) + except ValueError: + message = ("Unexpected ValueError in " + + "test %s:%s(%r)\n" % (id, fn, ar)) + self.fail(message) self.ftest("%s:%s(%r)" % (id, fn, ar), result, er) def test_main(): From python-checkins at python.org Sun Apr 20 03:39:24 2008 From: python-checkins at python.org (mark.dickinson) Date: Sun, 20 Apr 2008 03:39:24 +0200 (CEST) Subject: [Python-checkins] r62413 - python/trunk/Modules/mathmodule.c Message-ID: <20080420013924.DF8021E4005@bag.python.org> Author: mark.dickinson Date: Sun Apr 20 03:39:24 2008 New Revision: 62413 Log: FreeBSD doesn't follow C99 for modf(inf); so add explicit special-value handling to math.modf code. Modified: python/trunk/Modules/mathmodule.c Modified: python/trunk/Modules/mathmodule.c ============================================================================== --- python/trunk/Modules/mathmodule.c (original) +++ python/trunk/Modules/mathmodule.c Sun Apr 20 03:39:24 2008 @@ -341,6 +341,15 @@ double y, x = PyFloat_AsDouble(arg); if (x == -1.0 && PyErr_Occurred()) return NULL; + /* some platforms don't do the right thing for NaNs and + infinities, so we take care of special cases directly. */ + if (!Py_IS_FINITE(x)) { + if (Py_IS_INFINITY(x)) + return Py_BuildValue("(dd)", copysign(0., x), x); + else if (Py_IS_NAN(x)) + return Py_BuildValue("(dd)", x, x); + } + errno = 0; PyFPE_START_PROTECT("in math_modf", return 0); x = modf(x, &y); From buildbot at python.org Sun Apr 20 04:14:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 02:14:34 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080420021434.A6C571E4005@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/68 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson,georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 04:35:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 02:35:23 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080420023524.1D9AF1E4005@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2876 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson,georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_math test_smtplib ====================================================================== ERROR: testPow (test.test_math.MathTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_math.py", line 486, in testPow self.assertEqual(math.pow(-0.1, NINF), INF) ValueError: math domain error sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 05:28:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 03:28:43 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080420032843.E0A681E4005@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1298 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson,georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 20 tests failed: test_bufio test_cookielib test_deque test_descr test_distutils test_file test_filecmp test_fileinput test_gzip test_hotshot test_io test_iter test_mailbox test_mmap test_multibytecodec test_pep277 test_set test_urllib2 test_uu test_zipfile ====================================================================== ERROR: test_nullpat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 59, in test_nullpat self.drive_one("\0" * 1000) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 51, in drive_one self.try_one(teststring[:-1]) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_primepat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 56, in test_primepat self.drive_one("1234567890\00\01\02\03\04\05\06") File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 49, in drive_one self.try_one(teststring) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 79, in test_maxlen fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_deque.py", line 286, in test_print fo = open(test_support.TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_build (distutils.tests.test_build_scripts.BuildScriptsTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\distutils\tests\support.py", line 34, in tearDown shutil.rmtree(d) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 188, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "c:\buildbot\work\trunk.heller-windows\build\lib\shutil.py", line 186, in rmtree os.rmdir(path) WindowsError: [Error 145] The directory is not empty: 'c:\\docume~1\\theller\\locals~1\\temp\\tmpthk8ij' ====================================================================== ERROR: test_matching (test.test_filecmp.FileCompareTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_filecmp.py", line 13, in setUp output = open(name, 'w') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\trunk.heller-windows\build\lib\gzip.py", line 79, in __init__ fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb') IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_addinfo (test.test_hotshot.HotShotTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 74, in test_addinfo profiler = self.new_profiler() File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_hotshot.py", line 42, in new_profiler return hotshot.Profile(self.logfn, lineevents, linetimings) File "C:\buildbot\work\trunk.heller-windows\build\lib\hotshot\__init__.py", line 15, in __init__ logfn, self.lineevents, self.linetimings) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: Test seek/tell using the StatefulIncrementalDecoder. ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 944, in testSeekAndTell testSeekAndTellWithData(input) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 924, in testSeekAndTellWithData decoded = f.read() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1616, in read decoder = self._decoder or self._get_decoder() File "C:\buildbot\work\trunk.heller-windows\build\lib\io.py", line 1413, in _get_decoder decoder = make_decoder(self._errors) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_io.py", line 523, in __init__ codecs.IncrementalDecoder.__init__(self, errors) AttributeError: 'NoneType' object has no attribute 'IncrementalDecoder' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_from_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_mbox_or_mmdf_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMbox) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 811, in _factory = lambda self, path, factory=None: mailbox.mbox(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 736, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_close (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_conflict (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_open_close_open (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_relock (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMMDF) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 816, in _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 768, in __init__ _mboxMMDF.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add_and_remove_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_folder (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_has_key (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_list_folders (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pack (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_sequences (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 821, in _factory = lambda self, path, factory=None: mailbox.MH(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 815, in __init__ os.mkdir(self._path, 0700) WindowsError: [Error 5] Access is denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_add (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_clear (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_close (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_contains (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_delitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_discard (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_dump_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_flush (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_mailbox.py", line 940, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 1123, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\trunk.heller-windows\build\lib\mailbox.py", line 515, in __init__ f = open(self._path, 'rb') IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\trunk.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_bug1728403 (test.test_multibytecodec.Test_StreamReader) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_multibytecodec.py", line 148, in test_bug1728403 os.unlink(TESTFN) WindowsError: [Error 5] Access is denied: '@test' ====================================================================== ERROR: test_directory (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'w') IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_failures (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'w') IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_listdir (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'w') IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_open (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'w') IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_rename (test.test_pep277.UnicodeFileTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_pep277.py", line 39, in setUp f = open(name, 'w') IOError: [Errno 13] Permission denied: '@test\\abc' ====================================================================== ERROR: test_file (test.test_urllib2.HandlerTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_urllib2.py", line 612, in test_file f = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testGoodPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 716, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testNoPassword (test.test_zipfile.DecryptionTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\trunk.heller-windows\build\lib\test\test_zipfile.py", line 716, in setUp fp = open(TESTFN, "wb") IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 05:33:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 03:33:10 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080420033310.6D8271E4014@bag.python.org> The Buildbot has detected a new failure of x86 XP-4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-4%20trunk/builds/986 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson,georg.brandl,mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_subprocess ====================================================================== FAIL: test_kill (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\test\test_subprocess.py", line 695, in test_kill self.assertNotEqual(p.wait(), 0) AssertionError: 0 == 0 ====================================================================== FAIL: test_terminate (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\test\test_subprocess.py", line 703, in test_terminate self.assertNotEqual(p.wait(), 0) AssertionError: 0 == 0 sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 05:44:44 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 03:44:44 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080420034444.D6DD51E4005@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1165 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.dickinson BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Sun Apr 20 06:13:13 2008 From: python-checkins at python.org (mark.dickinson) Date: Sun, 20 Apr 2008 06:13:13 +0200 (CEST) Subject: [Python-checkins] r62414 - in python/trunk: Lib/test/test_math.py Modules/mathmodule.c Message-ID: <20080420041313.C6C3A1E4005@bag.python.org> Author: mark.dickinson Date: Sun Apr 20 06:13:13 2008 New Revision: 62414 Log: Yet more explicit special case handling to make math.pow behave on alpha Tru64. All IEEE 754 special values are now handled directly; only the finite**finite case is handled by libm. Modified: python/trunk/Lib/test/test_math.py python/trunk/Modules/mathmodule.c Modified: python/trunk/Lib/test/test_math.py ============================================================================== --- python/trunk/Lib/test/test_math.py (original) +++ python/trunk/Lib/test/test_math.py Sun Apr 20 06:13:13 2008 @@ -498,6 +498,18 @@ self.assertEqual(math.pow(-1.1, INF), INF) self.assertEqual(math.pow(-1.9, INF), INF) + # pow(x, y) should work for x negative, y an integer + self.ftest('(-2.)**3.', math.pow(-2.0, 3.0), -8.0) + self.ftest('(-2.)**2.', math.pow(-2.0, 2.0), 4.0) + self.ftest('(-2.)**1.', math.pow(-2.0, 1.0), -2.0) + self.ftest('(-2.)**0.', math.pow(-2.0, 0.0), 1.0) + self.ftest('(-2.)**-0.', math.pow(-2.0, -0.0), 1.0) + self.ftest('(-2.)**-1.', math.pow(-2.0, -1.0), -0.5) + self.ftest('(-2.)**-2.', math.pow(-2.0, -2.0), 0.25) + self.ftest('(-2.)**-3.', math.pow(-2.0, -3.0), -0.125) + self.assertRaises(ValueError, math.pow, -2.0, -0.5) + self.assertRaises(ValueError, math.pow, -2.0, 0.5) + # the following tests have been commented out since they don't # really belong here: the implementation of ** for floats is # independent of the implemention of math.pow Modified: python/trunk/Modules/mathmodule.c ============================================================================== --- python/trunk/Modules/mathmodule.c (original) +++ python/trunk/Modules/mathmodule.c Sun Apr 20 06:13:13 2008 @@ -522,7 +522,7 @@ { PyObject *ox, *oy; double r, x, y; - int y_is_odd; + int odd_y; if (! PyArg_UnpackTuple(args, "pow", 2, 2, &ox, &oy)) return NULL; @@ -531,53 +531,61 @@ if ((x == -1.0 || y == -1.0) && PyErr_Occurred()) return NULL; - /* deal directly with various special cases, to cope with problems on - various platforms whose semantics don't exactly match C99 */ - - /* 1**x, x**0, and (-1)**(+-infinity) return 1., even if x is NaN or - an infinity. */ - if (x == 1. || y == 0. || (x == -1. && Py_IS_INFINITY(y))) - return PyFloat_FromDouble(1.); - /* otherwise, return a NaN if either input was a NaN */ - if (Py_IS_NAN(x)) - return PyFloat_FromDouble(x); - if (Py_IS_NAN(y)) - return PyFloat_FromDouble(y); - /* inf ** (nonzero, non-NaN) is one of +-0, +-infinity */ - if (Py_IS_INFINITY(x) && !Py_IS_NAN(y)) { - y_is_odd = Py_IS_FINITE(y) && fmod(fabs(y), 2.0) == 1.0; - if (y > 0.) - r = y_is_odd ? x : fabs(x); - else - r = y_is_odd ? copysign(0., x) : 0.; - return PyFloat_FromDouble(r); + /* deal directly with IEEE specials, to cope with problems on various + platforms whose semantics don't exactly match C99 */ + if (!Py_IS_FINITE(x) || !Py_IS_FINITE(y)) { + errno = 0; + if (Py_IS_NAN(x)) + r = y == 0. ? 1. : x; /* NaN**0 = 1 */ + else if (Py_IS_NAN(y)) + r = x == 1. ? 1. : y; /* 1**NaN = 1 */ + else if (Py_IS_INFINITY(x)) { + odd_y = Py_IS_FINITE(y) && fmod(fabs(y), 2.0) == 1.0; + if (y > 0.) + r = odd_y ? x : fabs(x); + else if (y == 0.) + r = 1.; + else /* y < 0. */ + r = odd_y ? copysign(0., x) : 0.; + } + else if (Py_IS_INFINITY(y)) { + if (fabs(x) == 1.0) + r = 1.; + else if (y > 0. && fabs(x) > 1.0) + r = y; + else if (y < 0. && fabs(x) < 1.0) { + r = -y; /* result is +inf */ + if (x == 0.) /* 0**-inf: divide-by-zero */ + errno = EDOM; + } + else + r = 0.; + } } - - errno = 0; - PyFPE_START_PROTECT("in math_pow", return 0); - r = pow(x, y); - PyFPE_END_PROTECT(r); - if (Py_IS_NAN(r)) { - errno = EDOM; - } - /* an infinite result arises either from: - - (A) (+/-0.)**negative, - (B) overflow of x**y with both x and y finite (and x nonzero) - (C) (+/-inf)**positive, or - (D) x**inf with |x| > 1, or x**-inf with |x| < 1. - - In case (A) we want ValueError to be raised. In case (B) - OverflowError should be raised. In cases (C) and (D) the infinite - result should be returned. - */ - else if (Py_IS_INFINITY(r)) { - if (x == 0.) - errno = EDOM; - else if (Py_IS_FINITE(x) && Py_IS_FINITE(y)) - errno = ERANGE; - else - errno = 0; + else { + /* let libm handle finite**finite */ + errno = 0; + PyFPE_START_PROTECT("in math_pow", return 0); + r = pow(x, y); + PyFPE_END_PROTECT(r); + /* a NaN result should arise only from (-ve)**(finite + non-integer); in this case we want to raise ValueError. */ + if (!Py_IS_FINITE(r)) { + if (Py_IS_NAN(r)) { + errno = EDOM; + } + /* + an infinite result here arises either from: + (A) (+/-0.)**negative (-> divide-by-zero) + (B) overflow of x**y with x and y finite + */ + else if (Py_IS_INFINITY(r)) { + if (x == 0.) + errno = EDOM; + else + errno = ERANGE; + } + } } if (errno && is_error(r)) From buildbot at python.org Sun Apr 20 06:43:11 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 04:43:11 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080420044311.AE2F21E4005@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/320 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_ssl sincerely, -The Buildbot From buildbot at python.org Sun Apr 20 06:53:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 20 Apr 2008 04:53:31 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo trunk Message-ID: <20080420045331.D728B1E4005@bag.python.org> The Buildbot has detected a new failure of x86 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%20trunk/builds/3439 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: mark.dickinson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From nnorwitz at gmail.com Sun Apr 20 10:14:15 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 20 Apr 2008 04:14:15 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080420081415.GA11658@python.psfb.org> 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11672 refs] [14670 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 320 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [589887 refs] From nnorwitz at gmail.com Sun Apr 20 11:11:17 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 20 Apr 2008 05:11:17 -0400 Subject: [Python-checkins] Python Regression Test Failures refleak (1) Message-ID: <20080420091117.GA19555@python.psfb.org> More important issues: ---------------------- test_pkgutil leaked [34, 34, 34] references, sum=102 Less important issues: ---------------------- test_asynchat leaked [-123, 126, -126] references, sum=-123 test_cmd_line leaked [-23, 0, 23] references, sum=0 test_file leaked [76, -76, 0] references, sum=0 test_smtplib leaked [2, 0, 0] references, sum=2 test_socketserver leaked [0, 89, -89] references, sum=0 test_urllib2_localnet leaked [146, 126, -120] references, sum=152 From python-checkins at python.org Sun Apr 20 16:58:50 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 20 Apr 2008 16:58:50 +0200 (CEST) Subject: [Python-checkins] r62415 - in doctools/trunk: CHANGES sphinx/latexwriter.py sphinx/texinputs/sphinx.sty Message-ID: <20080420145850.E881D1E4016@bag.python.org> Author: georg.brandl Date: Sun Apr 20 16:58:50 2008 New Revision: 62415 Log: Implement option lists. Modified: doctools/trunk/CHANGES doctools/trunk/sphinx/latexwriter.py doctools/trunk/sphinx/texinputs/sphinx.sty Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 20 16:58:50 2008 @@ -70,6 +70,8 @@ * sphinx.htmlwriter: Don't use os.path for joining image HREFs. +* sphinx.latexwriter: Implement option lists. + * sphinx.roles: Fix referencing glossary terms with explicit targets. * sphinx.environment: Don't swallow TOC entries when resolving subtrees. Modified: doctools/trunk/sphinx/latexwriter.py ============================================================================== --- doctools/trunk/sphinx/latexwriter.py (original) +++ doctools/trunk/sphinx/latexwriter.py Sun Apr 20 16:58:50 2008 @@ -27,6 +27,7 @@ \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[colorlinks,breaklinks]{hyperref} +\usepackage{tabularx} \title{%(title)s} \date{%(date)s} \release{%(release)s} @@ -762,6 +763,53 @@ if not done: self.body.append('\\end{quote}\n') + # option node handling copied from docutils' latex writer + + def visit_option(self, node): + if self.context[-1]: + # this is not the first option + self.body.append(', ') + def depart_option(self, node): + # flag that the first option is done. + self.context[-1] += 1 + + def visit_option_argument(self, node): + """The delimiter betweeen an option and its argument.""" + self.body.append(node.get('delimiter', ' ')) + def depart_option_argument(self, node): + pass + + def visit_option_group(self, node): + self.body.append('\\item [') + # flag for first option + self.context.append(0) + def depart_option_group(self, node): + self.context.pop() # the flag + self.body.append('] ') + + def visit_option_list(self, node): + self.body.append('% [option list]\n') + self.body.append('\\begin{optionlist}{3cm}\n') + def depart_option_list(self, node): + self.body.append('\\end{optionlist}\n') + + def visit_option_list_item(self, node): + pass + def depart_option_list_item(self, node): + pass + + def visit_option_string(self, node): + pass + def depart_option_string(self, node): + pass + + def visit_description(self, node): + self.body.append( ' ' ) + def depart_description(self, node): + pass + + # text handling + replacements = [ (u"\\", u"\x00"), (u"$", ur"\$"), Modified: doctools/trunk/sphinx/texinputs/sphinx.sty ============================================================================== --- doctools/trunk/sphinx/texinputs/sphinx.sty (original) +++ doctools/trunk/sphinx/texinputs/sphinx.sty Sun Apr 20 16:58:50 2008 @@ -1268,3 +1268,28 @@ % Tell TeX about pathological hyphenation cases: \hyphenation{Base-HTTP-Re-quest-Hand-ler} + + +% The following is stuff copied from docutils' latex writer. +% +\newcommand{\optionlistlabel}[1]{\bf #1 \hfill} +\newenvironment{optionlist}[1] +{\begin{list}{} + {\setlength{\labelwidth}{#1} + \setlength{\rightmargin}{1cm} + \setlength{\leftmargin}{\rightmargin} + \addtolength{\leftmargin}{\labelwidth} + \addtolength{\leftmargin}{\labelsep} + \renewcommand{\makelabel}{\optionlistlabel}} +}{\end{list}} + +\newlength{\lineblockindentation} +\setlength{\lineblockindentation}{2.5em} +\newenvironment{lineblock}[1] +{\begin{list}{} + {\setlength{\partopsep}{\parskip} + \addtolength{\partopsep}{\baselineskip} + \topsep0pt\itemsep0.15\baselineskip\parsep0pt + \leftmargin#1} + \raggedright} +{\end{list}} From python-checkins at python.org Sun Apr 20 17:07:53 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 20 Apr 2008 17:07:53 +0200 (CEST) Subject: [Python-checkins] r62416 - in doctools/trunk/sphinx/templates: genindex.html layout.html macros.html modindex.html search.html Message-ID: <20080420150753.464221E401F@bag.python.org> Author: georg.brandl Date: Sun Apr 20 17:07:52 2008 New Revision: 62416 Log: Since docutils output XHTML, make the templates respect that. Modified: doctools/trunk/sphinx/templates/genindex.html doctools/trunk/sphinx/templates/layout.html doctools/trunk/sphinx/templates/macros.html doctools/trunk/sphinx/templates/modindex.html doctools/trunk/sphinx/templates/search.html Modified: doctools/trunk/sphinx/templates/genindex.html ============================================================================== --- doctools/trunk/sphinx/templates/genindex.html (original) +++ doctools/trunk/sphinx/templates/genindex.html Sun Apr 20 17:07:52 2008 @@ -8,7 +8,7 @@ {{ key }} {% if not loop.last %}| {% endif %} {%- endfor %} -
    +
    {% for key, entries in genindexentries %}

    {{ key }}

    Modified: doctools/trunk/sphinx/templates/layout.html ============================================================================== --- doctools/trunk/sphinx/templates/layout.html (original) +++ doctools/trunk/sphinx/templates/layout.html Sun Apr 20 17:07:52 2008 @@ -1,7 +1,7 @@ {%- include "macros.html" %} {%- block doctype -%} - + {%- endblock %} {%- macro relbar %} {# this macro needs to stay in layout.html due to it containing blocks #} @@ -32,22 +32,22 @@
    {%- endmacro %} - + - + {%- if builder != 'htmlhelp' %} {%- set titlesuffix = " — " + docstitle %} {%- endif %} {{ title|striptags }}{{ titlesuffix }} {%- if builder == 'web' %} + if in_admin_panel %}&admin=yes{% endif %}" type="text/css" /> {%- for link, type, title in page_links %} - + {%- endfor %} {%- else %} - - + + {%- endif %} {%- if builder != 'htmlhelp' %} {%- endif %} + {%- if use_opensearch %} + + {%- endif %} {%- block rellinks %} {%- if hasdoc('about') %} Added: doctools/trunk/sphinx/templates/opensearch.xml ============================================================================== --- (empty file) +++ doctools/trunk/sphinx/templates/opensearch.xml Sun Apr 27 20:08:55 2008 @@ -0,0 +1,13 @@ + + + {{ project }} + {{ docstitle }} + Search {{ docstitle }} + utf-8 + + + + + +{% block extra %}{# Put e.g. an element here. #}{% endblock %} + From python-checkins at python.org Sun Apr 27 20:09:49 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 20:09:49 +0200 (CEST) Subject: [Python-checkins] r62533 - doctools/trunk/doc/conf.py Message-ID: <20080427180949.B1C421E400B@bag.python.org> Author: georg.brandl Date: Sun Apr 27 20:09:49 2008 New Revision: 62533 Log: Use OpenSearch for Sphinx docs. Modified: doctools/trunk/doc/conf.py Modified: doctools/trunk/doc/conf.py ============================================================================== --- doctools/trunk/doc/conf.py (original) +++ doctools/trunk/doc/conf.py Sun Apr 27 20:09:49 2008 @@ -100,6 +100,8 @@ # If true, the reST sources are included in the HTML build as _sources/. #html_copy_source = True +html_use_opensearch = True + # Output file base name for HTML help builder. htmlhelp_basename = 'Sphinxdoc' From python-checkins at python.org Sun Apr 27 20:10:48 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 20:10:48 +0200 (CEST) Subject: [Python-checkins] r62534 - doctools/trunk/doc/templating.rst Message-ID: <20080427181048.87FC81E4020@bag.python.org> Author: georg.brandl Date: Sun Apr 27 20:10:48 2008 New Revision: 62534 Log: Fix markup. Modified: doctools/trunk/doc/templating.rst Modified: doctools/trunk/doc/templating.rst ============================================================================== --- doctools/trunk/doc/templating.rst (original) +++ doctools/trunk/doc/templating.rst Sun Apr 27 20:10:48 2008 @@ -122,7 +122,7 @@ {% block sidebar1 %}{{ sidebar() }}{% endblock %} {% block sidebar2 %}{% endblock %} - (The `sidebar2` location for the sidebar is needed by the ``sphinxdoc.css` + (The `sidebar2` location for the sidebar is needed by the ``sphinxdoc.css`` stylesheet, for example.) `footer` From python-checkins at python.org Sun Apr 27 20:14:39 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sun, 27 Apr 2008 20:14:39 +0200 (CEST) Subject: [Python-checkins] r62535 - python/trunk/Doc/c-api/number.rst Message-ID: <20080427181439.775971E400C@bag.python.org> Author: benjamin.peterson Date: Sun Apr 27 20:14:39 2008 New Revision: 62535 Log: #2700 Document PyNumber_ToBase Modified: python/trunk/Doc/c-api/number.rst Modified: python/trunk/Doc/c-api/number.rst ============================================================================== --- python/trunk/Doc/c-api/number.rst (original) +++ python/trunk/Doc/c-api/number.rst Sun Apr 27 20:14:39 2008 @@ -290,6 +290,17 @@ .. versionadded:: 2.5 +.. cfunction:: PyObject* PyNumber_ToBase(PyObject *n, int base) + + Returns the the integer *n* converted to *base* as a string with a base + marker of ``'0b'``, ``'0o'``, or ``'0x'`` if appended applicable. When + *base* is not 2, 8, 10, or 16, the format is ``'x#num'`` where x is the + base. If *n* is not an int object, it is converted with + :cfunc:`PyNumber_Index` first. + + .. versionadded:: 2.6 + + .. cfunction:: Py_ssize_t PyNumber_AsSsize_t(PyObject *o, PyObject *exc) Returns *o* converted to a Py_ssize_t value if *o* can be interpreted as an From python-checkins at python.org Sun Apr 27 20:40:22 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sun, 27 Apr 2008 20:40:22 +0200 (CEST) Subject: [Python-checkins] r62536 - in python/trunk: Modules/arraymodule.c Objects/cellobject.c Objects/codeobject.c Objects/dictobject.c Objects/exceptions.c Objects/fileobject.c Objects/listobject.c Objects/methodobject.c Python/bltinmodule.c Python/ceval.c Python/sysmodule.c Message-ID: <20080427184022.7B9F11E4014@bag.python.org> Author: benjamin.peterson Date: Sun Apr 27 20:40:21 2008 New Revision: 62536 Log: A little reformating of Py3k warnings Modified: python/trunk/Modules/arraymodule.c python/trunk/Objects/cellobject.c python/trunk/Objects/codeobject.c python/trunk/Objects/dictobject.c python/trunk/Objects/exceptions.c python/trunk/Objects/fileobject.c python/trunk/Objects/listobject.c python/trunk/Objects/methodobject.c python/trunk/Python/bltinmodule.c python/trunk/Python/ceval.c python/trunk/Python/sysmodule.c Modified: python/trunk/Modules/arraymodule.c ============================================================================== --- python/trunk/Modules/arraymodule.c (original) +++ python/trunk/Modules/arraymodule.c Sun Apr 27 20:40:21 2008 @@ -1258,7 +1258,7 @@ array_fromfile_as_read(arrayobject *self, PyObject *args) { if (PyErr_WarnPy3k("array.read() not supported in 3.x; " - "use array.fromfile()", 1) < 0) + "use array.fromfile()", 1) < 0) return NULL; return array_fromfile(self, args); } @@ -1297,7 +1297,7 @@ array_tofile_as_write(arrayobject *self, PyObject *f) { if (PyErr_WarnPy3k("array.write() not supported in 3.x; " - "use array.tofile()", 1) < 0) + "use array.tofile()", 1) < 0) return NULL; return array_tofile(self, f); } Modified: python/trunk/Objects/cellobject.c ============================================================================== --- python/trunk/Objects/cellobject.c (original) +++ python/trunk/Objects/cellobject.c Sun Apr 27 20:40:21 2008 @@ -56,7 +56,7 @@ { /* Py3K warning for comparisons */ if (PyErr_WarnPy3k("cell comparisons not supported in 3.x", - 1) < 0) { + 1) < 0) { return -2; } Modified: python/trunk/Objects/codeobject.c ============================================================================== --- python/trunk/Objects/codeobject.c (original) +++ python/trunk/Objects/codeobject.c Sun Apr 27 20:40:21 2008 @@ -339,9 +339,9 @@ !PyCode_Check(other)) { /* Py3K warning if types are not equal and comparison - isn't == or != */ + isn't == or != */ if (PyErr_WarnPy3k("code inequality comparisons not supported " - "in 3.x", 1) < 0) { + "in 3.x", 1) < 0) { return NULL; } Modified: python/trunk/Objects/dictobject.c ============================================================================== --- python/trunk/Objects/dictobject.c (original) +++ python/trunk/Objects/dictobject.c Sun Apr 27 20:40:21 2008 @@ -1779,7 +1779,7 @@ else { /* Py3K warning if comparison isn't == or != */ if (PyErr_WarnPy3k("dict inequality comparisons not supported " - "in 3.x", 1) < 0) { + "in 3.x", 1) < 0) { return NULL; } res = Py_NotImplemented; @@ -1810,7 +1810,7 @@ dict_has_key(register PyDictObject *mp, PyObject *key) { if (PyErr_WarnPy3k("dict.has_key() not supported in 3.x; " - "use the in operator", 1) < 0) + "use the in operator", 1) < 0) return NULL; return dict_contains(mp, key); } Modified: python/trunk/Objects/exceptions.c ============================================================================== --- python/trunk/Objects/exceptions.c (original) +++ python/trunk/Objects/exceptions.c Sun Apr 27 20:40:21 2008 @@ -279,9 +279,8 @@ int ret; ret = PyErr_WarnEx(PyExc_DeprecationWarning, "BaseException.message has been deprecated as " - "of Python 2.6", - 1); - if (ret == -1) + "of Python 2.6", 1); + if (ret < 0) return NULL; Py_INCREF(self->message); @@ -294,9 +293,8 @@ int ret; ret = PyErr_WarnEx(PyExc_DeprecationWarning, "BaseException.message has been deprecated as " - "of Python 2.6", - 1); - if (ret == -1) + "of Python 2.6", 1); + if (ret < 0) return -1; Py_INCREF(val); Py_DECREF(self->message); Modified: python/trunk/Objects/fileobject.c ============================================================================== --- python/trunk/Objects/fileobject.c (original) +++ python/trunk/Objects/fileobject.c Sun Apr 27 20:40:21 2008 @@ -627,8 +627,9 @@ return NULL; /* Deprecated in 2.6 */ PyErr_Clear(); - if (PyErr_Warn(PyExc_DeprecationWarning, - "integer argument expected, got float")) + if (PyErr_WarnEx(PyExc_DeprecationWarning, + "integer argument expected, got float", + 1) < 0) return NULL; off_index = offobj; Py_INCREF(offobj); Modified: python/trunk/Objects/listobject.c ============================================================================== --- python/trunk/Objects/listobject.c (original) +++ python/trunk/Objects/listobject.c Sun Apr 27 20:40:21 2008 @@ -2038,7 +2038,7 @@ if (compare == Py_None) compare = NULL; if (compare != NULL && - PyErr_WarnPy3k("the cmp argument is not supported in 3.x", 1) < 0) + PyErr_WarnPy3k("the cmp argument is not supported in 3.x", 1) < 0) return NULL; if (keyfunc == Py_None) keyfunc = NULL; Modified: python/trunk/Objects/methodobject.c ============================================================================== --- python/trunk/Objects/methodobject.c (original) +++ python/trunk/Objects/methodobject.c Sun Apr 27 20:40:21 2008 @@ -236,7 +236,7 @@ { /* Py3K warning if types are not equal and comparison isn't == or != */ if (PyErr_WarnPy3k("builtin_function_or_method inequality " - "comparisons not supported in 3.x", 1) < 0) { + "comparisons not supported in 3.x", 1) < 0) { return NULL; } @@ -352,9 +352,8 @@ { if (name[0] == '_' && name[1] == '_') { if (strcmp(name, "__methods__") == 0) { - if (Py_Py3kWarningFlag && - PyErr_Warn(PyExc_DeprecationWarning, - "__methods__ not supported in 3.x") < 0) + if (PyErr_WarnPy3k("__methods__ not supported in 3.x", + 1) < 0) return NULL; return listmethodchain(chain); } Modified: python/trunk/Python/bltinmodule.c ============================================================================== --- python/trunk/Python/bltinmodule.c (original) +++ python/trunk/Python/bltinmodule.c Sun Apr 27 20:40:21 2008 @@ -166,7 +166,7 @@ PyObject *t = NULL, *retval = NULL; if (PyErr_WarnPy3k("apply() not supported in 3.x; " - "use func(*args, **kwargs)", 1) < 0) + "use func(*args, **kwargs)", 1) < 0) return NULL; if (!PyArg_UnpackTuple(args, "apply", 1, 3, &func, &alist, &kwdict)) @@ -224,7 +224,7 @@ builtin_callable(PyObject *self, PyObject *v) { if (PyErr_WarnPy3k("callable() not supported in 3.x; " - "use hasattr(o, '__call__')", 1) < 0) + "use hasattr(o, '__call__')", 1) < 0) return NULL; return PyBool_FromLong((long)PyCallable_Check(v)); } @@ -704,7 +704,7 @@ int exists; if (PyErr_WarnPy3k("execfile() not supported in 3.x; use exec()", - 1) < 0) + 1) < 0) return NULL; if (!PyArg_ParseTuple(args, "s|O!O:execfile", @@ -931,7 +931,7 @@ if (func == Py_None) { if (PyErr_WarnPy3k("map(None, ...) not supported in 3.x; " - "use list(...)", 1) < 0) + "use list(...)", 1) < 0) return NULL; if (n == 1) { /* map(None, S) is the same as list(S). */ @@ -1959,7 +1959,7 @@ PyObject *seq, *func, *result = NULL, *it; if (PyErr_WarnPy3k("reduce() not supported in 3.x; " - "use functools.reduce()", 1) < 0) + "use functools.reduce()", 1) < 0) return NULL; if (!PyArg_UnpackTuple(args, "reduce", 2, 3, &func, &seq, &result)) @@ -2035,7 +2035,7 @@ builtin_reload(PyObject *self, PyObject *v) { if (PyErr_WarnPy3k("In 3.x, reload() is renamed to imp.reload()", - 1) < 0) + 1) < 0) return NULL; return PyImport_ReloadModule(v); Modified: python/trunk/Python/ceval.c ============================================================================== --- python/trunk/Python/ceval.c (original) +++ python/trunk/Python/ceval.c Sun Apr 27 20:40:21 2008 @@ -3157,16 +3157,16 @@ /* Not something you can raise. You get an exception anyway, just not what you specified :-) */ PyErr_Format(PyExc_TypeError, - "exceptions must be classes or instances, not %s", - type->ob_type->tp_name); + "exceptions must be classes or instances, not %s", + type->ob_type->tp_name); goto raise_error; } assert(PyExceptionClass_Check(type)); if (Py_Py3kWarningFlag && PyClass_Check(type)) { if (PyErr_WarnEx(PyExc_DeprecationWarning, - "exceptions must derive from BaseException " - "in 3.x", 1) == -1) + "exceptions must derive from BaseException " + "in 3.x", 1) < 0) goto raise_error; } @@ -4092,7 +4092,7 @@ PyExc_DeprecationWarning, "catching of string " "exceptions is deprecated", 1); - if (ret_val == -1) + if (ret_val < 0) return NULL; } else if (Py_Py3kWarningFlag && @@ -4103,7 +4103,7 @@ ret_val = PyErr_WarnEx( PyExc_DeprecationWarning, CANNOT_CATCH_MSG, 1); - if (ret_val == -1) + if (ret_val < 0) return NULL; } } @@ -4115,7 +4115,7 @@ PyExc_DeprecationWarning, "catching of string " "exceptions is deprecated", 1); - if (ret_val == -1) + if (ret_val < 0) return NULL; } else if (Py_Py3kWarningFlag && @@ -4126,7 +4126,7 @@ ret_val = PyErr_WarnEx( PyExc_DeprecationWarning, CANNOT_CATCH_MSG, 1); - if (ret_val == -1) + if (ret_val < 0) return NULL; } } Modified: python/trunk/Python/sysmodule.c ============================================================================== --- python/trunk/Python/sysmodule.c (original) +++ python/trunk/Python/sysmodule.c Sun Apr 27 20:40:21 2008 @@ -173,7 +173,7 @@ PyObject *tmp_type, *tmp_value, *tmp_tb; if (PyErr_WarnPy3k("sys.exc_clear() not supported in 3.x; " - "use except clauses", 1) < 0) + "use except clauses", 1) < 0) return NULL; tstate = PyThreadState_GET(); From buildbot at python.org Sun Apr 27 21:32:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 19:32:17 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080427193217.F23BF1E400B@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%203.0/builds/58 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_calendar test_email make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sun Apr 27 21:43:46 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 21:43:46 +0200 (CEST) Subject: [Python-checkins] r62538 - in doctools/trunk: CHANGES doc/conf.py doc/config.rst doc/templating.rst sphinx/builder.py sphinx/config.py sphinx/latexwriter.py sphinx/quickstart.py sphinx/templates/layout.html sphinx/templates/macros.html sphinx/texinputs/howto.cls sphinx/texinputs/manual.cls Message-ID: <20080427194346.41EE91E400C@bag.python.org> Author: georg.brandl Date: Sun Apr 27 21:43:45 2008 New Revision: 62538 Log: Add logo options, add blocks to sidebar. Removed: doctools/trunk/sphinx/templates/macros.html Modified: doctools/trunk/CHANGES doctools/trunk/doc/conf.py doctools/trunk/doc/config.rst doctools/trunk/doc/templating.rst doctools/trunk/sphinx/builder.py doctools/trunk/sphinx/config.py doctools/trunk/sphinx/latexwriter.py doctools/trunk/sphinx/quickstart.py doctools/trunk/sphinx/templates/layout.html doctools/trunk/sphinx/texinputs/howto.cls doctools/trunk/sphinx/texinputs/manual.cls Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 27 21:43:45 2008 @@ -25,7 +25,8 @@ and putting ``'index': name of your template`` in ``html_additional_pages``. * In the layout template, redundant ``block``\s were removed; you should use - Jinja's standard ``{{ super() }}`` mechanism instead. + Jinja's standard ``{{ super() }}`` mechanism instead, as explained in the + (newly written) templating docs. New features added ------------------ @@ -53,7 +54,7 @@ - Allow giving multiple options in a ``cmdoption`` directive. - Fix display of class members without explicit class name given. -* Templates: +* Templates (HTML output): - ``index.html`` renamed to ``defindex.html``, see above. - There's a new config value, ``html_title``, that controls the overall @@ -66,9 +67,21 @@ HTML output. - You can now create an OpenSearch description file with the ``html_use_opensearch`` config value. + - You can now quickly include a logo in the sidebar, using the ``html_logo`` + config value. + - There are new blocks in the sidebar, so that you can easily insert content + into the sidebar. + +* LaTeX output: + + - The ``sphinx.sty`` package was cleaned of unused stuff. + - You can include a logo in the title page with the ``latex_logo`` config + value. + - You can define the link colors and a border and background color for + verbatim environments. -Thanks to Jacob Kaplan-Moss, Talin, Jeroen Ruigrok van der Werven and -Sebastian Wiesner for suggestions. +Thanks to Jacob Kaplan-Moss, Talin, Jeroen Ruigrok van der Werven and Sebastian +Wiesner for suggestions. Bugs fixed ---------- Modified: doctools/trunk/doc/conf.py ============================================================================== --- doctools/trunk/doc/conf.py (original) +++ doctools/trunk/doc/conf.py Sun Apr 27 21:43:45 2008 @@ -120,6 +120,8 @@ latex_documents = [('contents', 'sphinx.tex', 'Sphinx Documentation', 'Georg Brandl', 'manual')] +latex_logo = '_static/sphinx.png' + # Additional stuff for the LaTeX preamble. #latex_preamble = '' Modified: doctools/trunk/doc/config.rst ============================================================================== --- doctools/trunk/doc/config.rst (original) +++ doctools/trunk/doc/config.rst Sun Apr 27 21:43:45 2008 @@ -163,6 +163,12 @@ in Sphinx' :file:`static/` path, or in one of the custom paths given in :confval:`html_static_path`. Default is ``'default.css'``. +.. confval:: html_logo + + If given, this must be the name of an image file (within the static path, see + below) that is the logo of the docs. It is placed at the top of the sidebar; + its width should therefore not exceed 200 pixels. Default: ``None``. + .. confval:: html_static_path A list of paths that contain custom static files (such as style sheets or @@ -280,6 +286,12 @@ documents will get appendices. Also, howtos will have a simpler title page. +.. confval:: latex_logo + + If given, this must be the name of an image file (relative to the + documentation root) that is the logo of the docs. It is placed at the top of + the title page. Default: ``None``. + .. confval:: latex_appendices Documents to append as an appendix to all manuals. Modified: doctools/trunk/doc/templating.rst ============================================================================== --- doctools/trunk/doc/templating.rst (original) +++ doctools/trunk/doc/templating.rst Sun Apr 27 21:43:45 2008 @@ -125,6 +125,20 @@ (The `sidebar2` location for the sidebar is needed by the ``sphinxdoc.css`` stylesheet, for example.) +`sidebarlogo` + The logo location within the sidebar. Override this if you want to place + some content at the top of the sidebar. + +`sidebartoc` + The table of contents within the sidebar. + +`sidebarrel` + The relation links (previous, next document) within the sidebar. + +`sidebarsearch` + The search box within the sidebar. Override this if you want to place some + content at the bottom of the sidebar. + `footer` The block for the footer div. If you want a custom footer or markup before or after it, override this one. Modified: doctools/trunk/sphinx/builder.py ============================================================================== --- doctools/trunk/sphinx/builder.py (original) +++ doctools/trunk/sphinx/builder.py Sun Apr 27 21:43:45 2008 @@ -320,20 +320,23 @@ docstitle = self.config.html_title or \ '%s v%s documentation' % (self.config.project, self.config.release) + logo = self.config.html_logo and \ + path.basename(self.config.html_logo) or '' self.globalcontext = dict( project = self.config.project, release = self.config.release, version = self.config.version, last_updated = self.last_updated, - docstitle = docstitle, copyright = self.config.copyright, style = self.config.html_style, use_modindex = self.config.html_use_modindex, use_opensearch = self.config.html_use_opensearch, + docstitle = docstitle, builder = self.name, parents = [], titles = {}, + logo = logo, len = len, # the built-in ) @@ -484,6 +487,12 @@ self.info(' '+src, nonl=1) shutil.copyfile(path.join(self.srcdir, src), path.join(self.outdir, '_images', dest)) + # the logo is handled differently + if self.config.html_logo: + logobase = path.basename(self.config.html_logo) + self.info(' '+logobase, nonl=1) + shutil.copyfile(path.join(self.srcdir, self.config.html_logo), + path.join(self.outdir, '_static', logobase)) self.info() # copy static files @@ -806,6 +815,13 @@ path.join(self.outdir, dest)) self.info() + # the logo is handled differently + if self.config.latex_logo: + logobase = path.basename(self.config.latex_logo) + self.info(' '+logobase, nonl=1) + shutil.copyfile(path.join(self.srcdir, self.config.latex_logo), + path.join(self.outdir, logobase)) + self.info(bold('copying TeX support files...')) staticdirname = path.join(path.dirname(__file__), 'texinputs') for filename in os.listdir(staticdirname): Modified: doctools/trunk/sphinx/config.py ============================================================================== --- doctools/trunk/sphinx/config.py (original) +++ doctools/trunk/sphinx/config.py Sun Apr 27 21:43:45 2008 @@ -47,6 +47,7 @@ # HTML options html_title = (None, False), html_style = ('default.css', False), + html_logo = (None, False), html_static_path = ([], False), html_last_updated_fmt = ('%b %d, %Y', False), html_use_smartypants = (True, False), @@ -64,6 +65,7 @@ latex_paper_size = ('letter', False), latex_font_size = ('10pt', False), latex_documents = ([], False), + latex_logo = (None, False), latex_preamble = ('', False), latex_appendices = ([], False), latex_use_modindex = (True, False), Modified: doctools/trunk/sphinx/latexwriter.py ============================================================================== --- doctools/trunk/sphinx/latexwriter.py (original) +++ doctools/trunk/sphinx/latexwriter.py Sun Apr 27 21:43:45 2008 @@ -15,6 +15,7 @@ import re import sys import time +from os import path from docutils import nodes, writers @@ -30,6 +31,7 @@ \date{%(date)s} \release{%(release)s} \author{%(author)s} +\newcommand{\sphinxlogo}{%(logo)s} %(preamble)s \makeindex ''' @@ -96,6 +98,9 @@ if paper == 'paper': # e.g. command line "-D latex_paper_size=" paper = 'letterpaper' date = time.strftime(builder.config.today_fmt) + logo = (builder.config.latex_logo and + "\\includegraphics{%s}\\par" % path.basename(builder.config.latex_logo) + or '') self.options = {'docclass': docclass, 'papersize': paper, 'pointsize': builder.config.latex_font_size, @@ -106,6 +111,7 @@ # if empty, the title is set to the first section title 'title': document.settings.title, 'release': builder.config.release, + 'logo': logo, 'date': date, } self.highlighter = highlighting.PygmentsBridge( Modified: doctools/trunk/sphinx/quickstart.py ============================================================================== --- doctools/trunk/sphinx/quickstart.py (original) +++ doctools/trunk/sphinx/quickstart.py Sun Apr 27 21:43:45 2008 @@ -100,6 +100,10 @@ # " v documentation". #html_title = None +# The name of an image file (within the static path) to place at the top of +# the sidebar. +#html_logo = None + # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". @@ -149,6 +153,10 @@ ('%(master)s', '%(project)s.tex', '%(project)s Documentation', '%(author)s', 'manual'), ] +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + # Additional stuff for the LaTeX preamble. #latex_preamble = '' Modified: doctools/trunk/sphinx/templates/layout.html ============================================================================== --- doctools/trunk/sphinx/templates/layout.html (original) +++ doctools/trunk/sphinx/templates/layout.html Sun Apr 27 21:43:45 2008 @@ -4,9 +4,7 @@ {%- endblock %} {%- set reldelim1 = reldelim1 is not defined and ' »' or reldelim1 %} {%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %} -{%- include "macros.html" %} {%- macro relbar %} -{# this macro needs to stay in layout.html due to it containing blocks #} {%- endmacro %} +{%- macro sidebar %} + {%- if builder != 'htmlhelp' %} + + {%- endif %} +{%- endmacro -%} + Deleted: doctools/trunk/sphinx/templates/macros.html ============================================================================== --- doctools/trunk/sphinx/templates/macros.html Sun Apr 27 21:43:45 2008 +++ (empty file) @@ -1,47 +0,0 @@ -{%- macro sidebar %} - {%- if builder != 'htmlhelp' %} - - {%- endif %} -{%- endmacro %} - Modified: doctools/trunk/sphinx/texinputs/howto.cls ============================================================================== --- doctools/trunk/sphinx/texinputs/howto.cls (original) +++ doctools/trunk/sphinx/texinputs/howto.cls Sun Apr 27 21:43:45 2008 @@ -66,6 +66,7 @@ \endgroup \fi \begin{flushright} + \sphinxlogo% {\rm\Huge\py at HeaderFamily \@title} \par {\em\large\py at HeaderFamily \py at release\releaseinfo} \par \vspace{25pt} Modified: doctools/trunk/sphinx/texinputs/manual.cls ============================================================================== --- doctools/trunk/sphinx/texinputs/manual.cls (original) +++ doctools/trunk/sphinx/texinputs/manual.cls Sun Apr 27 21:43:45 2008 @@ -79,6 +79,7 @@ \endgroup \fi \begin{flushright}% + \sphinxlogo% {\rm\Huge\py at HeaderFamily \@title \par}% {\em\LARGE\py at HeaderFamily \py at release\releaseinfo \par} \vfill From nnorwitz at gmail.com Sun Apr 27 22:11:39 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 27 Apr 2008 16:11:39 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080427201139.GA28543@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592267 refs] From nnorwitz at gmail.com Sun Apr 27 22:17:56 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Sun, 27 Apr 2008 16:17:56 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080427201756.GA29722@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [591759 refs] From python-checkins at python.org Sun Apr 27 21:53:27 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 21:53:27 +0200 (CEST) Subject: [Python-checkins] r62539 - in doctools/trunk: CHANGES sphinx/htmlwriter.py Message-ID: <20080427195327.8D1E31E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 21:53:27 2008 New Revision: 62539 Log: Fix a bug where smartypants was used for attribute values. Modified: doctools/trunk/CHANGES doctools/trunk/sphinx/htmlwriter.py Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 27 21:53:27 2008 @@ -91,6 +91,8 @@ * sphinx.htmlwriter: Don't use os.path for joining image HREFs. +* sphinx.htmlwriter: Don't use SmartyPants for HTML attribute values. + * sphinx.latexwriter: Implement option lists. Also, some other changes were made to ``sphinx.sty`` in order to enhance compatibility and remove old unused stuff. Thanks to Gael Varoquaux for that! Modified: doctools/trunk/sphinx/htmlwriter.py ============================================================================== --- doctools/trunk/sphinx/htmlwriter.py (original) +++ doctools/trunk/sphinx/htmlwriter.py Sun Apr 27 21:53:27 2008 @@ -351,8 +351,11 @@ finally: self.no_smarty -= 1 - def encode(self, text): - text = HTMLTranslator.encode(self, text) - if self.no_smarty <= 0: - text = sphinx_smarty_pants(text) - return text + def visit_Text(self, node): + text = node.astext() + encoded = self.encode(text) + if self.in_mailto and self.settings.cloak_email_addresses: + encoded = self.cloak_email(encoded) + elif self.no_smarty <= 0: + encoded = sphinx_smarty_pants(encoded) + self.body.append(encoded) From python-checkins at python.org Sun Apr 27 22:03:05 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 22:03:05 +0200 (CEST) Subject: [Python-checkins] r62540 - in python/trunk/Doc: conf.py tools/sphinxext/layout.html tools/sphinxext/opensearch.xml tools/sphinxext/static tools/sphinxext/static/py.png Message-ID: <20080427200305.CC6091E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 22:03:05 2008 New Revision: 62540 Log: Add OpenSearch and a Python logo to the HTML output. Added: python/trunk/Doc/tools/sphinxext/layout.html python/trunk/Doc/tools/sphinxext/opensearch.xml python/trunk/Doc/tools/sphinxext/static/ python/trunk/Doc/tools/sphinxext/static/py.png (contents, props changed) Modified: python/trunk/Doc/conf.py Modified: python/trunk/Doc/conf.py ============================================================================== --- python/trunk/Doc/conf.py (original) +++ python/trunk/Doc/conf.py Sun Apr 27 22:03:05 2008 @@ -85,6 +85,12 @@ 'index': 'indexcontent.html', } +# Output an OpenSearch description file. +html_use_opensearch = True + +# Additional static files. +html_static_path = ['tools/sphinxext/static'] + # Output file base name for HTML help builder. htmlhelp_basename = 'python' + release.replace('.', '') Added: python/trunk/Doc/tools/sphinxext/layout.html ============================================================================== --- (empty file) +++ python/trunk/Doc/tools/sphinxext/layout.html Sun Apr 27 22:03:05 2008 @@ -0,0 +1,5 @@ +{% extends "!layout.html" %} +{% block rootrellink %} +
  • +{{ super() }} +{% endblock %} Added: python/trunk/Doc/tools/sphinxext/opensearch.xml ============================================================================== --- (empty file) +++ python/trunk/Doc/tools/sphinxext/opensearch.xml Sun Apr 27 22:03:05 2008 @@ -0,0 +1,14 @@ + + + Python Docs + Python Documentation + Search the Python documentation + utf-8 + + + + + + http://www.python.org/images/favicon16x16.ico + + Added: python/trunk/Doc/tools/sphinxext/static/py.png ============================================================================== Binary file. No diff available. From python-checkins at python.org Sun Apr 27 22:08:05 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 22:08:05 +0200 (CEST) Subject: [Python-checkins] r62541 - doctools/trunk/CHANGES Message-ID: <20080427200805.4E8041E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 22:08:05 2008 New Revision: 62541 Log: Release preparation. Modified: doctools/trunk/CHANGES Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sun Apr 27 22:08:05 2008 @@ -1,5 +1,5 @@ -Changes in trunk -================ +Release 0.2 (Apr 27, 2008) +========================== Incompatible changes -------------------- From python-checkins at python.org Sun Apr 27 22:08:27 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 22:08:27 +0200 (CEST) Subject: [Python-checkins] r62542 - doctools/tags/0.2 Message-ID: <20080427200827.371BA1E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 22:08:26 2008 New Revision: 62542 Log: Tag 0.2 release. Added: doctools/tags/0.2/ - copied from r62541, /doctools/trunk/ From python-checkins at python.org Sun Apr 27 22:12:41 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 22:12:41 +0200 (CEST) Subject: [Python-checkins] r62543 - doctools/trunk/doc/conf.py Message-ID: <20080427201241.78B821E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 22:12:41 2008 New Revision: 62543 Log: Fetch Sphinx version from Sphinx itself. Modified: doctools/trunk/doc/conf.py Modified: doctools/trunk/doc/conf.py ============================================================================== --- doctools/trunk/doc/conf.py (original) +++ doctools/trunk/doc/conf.py Sun Apr 27 22:12:41 2008 @@ -40,9 +40,10 @@ # other places throughout the built documents. # # The short X.Y version. -version = '0.1' +import sphinx +version = sphinx.__version__ # The full version, including alpha/beta/rc tags. -release = '0.1' +release = version # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: From python-checkins at python.org Sun Apr 27 22:13:56 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 22:13:56 +0200 (CEST) Subject: [Python-checkins] r62544 - doctools/trunk/doc/_templates/indexsidebar.html Message-ID: <20080427201356.B49701E4006@bag.python.org> Author: georg.brandl Date: Sun Apr 27 22:13:56 2008 New Revision: 62544 Log: Put version number in index sidebar. Modified: doctools/trunk/doc/_templates/indexsidebar.html Modified: doctools/trunk/doc/_templates/indexsidebar.html ============================================================================== --- doctools/trunk/doc/_templates/indexsidebar.html (original) +++ doctools/trunk/doc/_templates/indexsidebar.html Sun Apr 27 22:13:56 2008 @@ -1,5 +1,5 @@

    Download

    - +

    Current version: {{ version }}

    Get Sphinx from the Python Package Index, or install it with:

    easy_install Sphinx
    From python-checkins at python.org Sun Apr 27 22:53:57 2008 From: python-checkins at python.org (skip.montanaro) Date: Sun, 27 Apr 2008 22:53:57 +0200 (CEST) Subject: [Python-checkins] r62545 - python/trunk/Doc/library/simplehttpserver.rst Message-ID: <20080427205357.AA3EF1E4006@bag.python.org> Author: skip.montanaro Date: Sun Apr 27 22:53:57 2008 New Revision: 62545 Log: minor wording changes, rewrap a few lines Modified: python/trunk/Doc/library/simplehttpserver.rst Modified: python/trunk/Doc/library/simplehttpserver.rst ============================================================================== --- python/trunk/Doc/library/simplehttpserver.rst (original) +++ python/trunk/Doc/library/simplehttpserver.rst Sun Apr 27 22:53:57 2008 @@ -7,39 +7,40 @@ .. sectionauthor:: Moshe Zadka -The :mod:`SimpleHTTPServer` module defines a request-handler class, -interface-compatible with :class:`BaseHTTPServer.BaseHTTPRequestHandler`, that -serves files only from a base directory. +The :mod:`SimpleHTTPServer` module defines a single class, +:class:`SimpleHTTPRequestHandler`, which is interface-compatible with +:class:`BaseHTTPServer.BaseHTTPRequestHandler`. The :mod:`SimpleHTTPServer` module defines the following class: .. class:: SimpleHTTPRequestHandler(request, client_address, server) - This class is used to serve files from the current directory and below, directly + This class serves files from the current directory and below, directly mapping the directory structure to HTTP requests. A lot of the work, such as parsing the request, is done by the base class :class:`BaseHTTPServer.BaseHTTPRequestHandler`. This class implements the :func:`do_GET` and :func:`do_HEAD` functions. - The :class:`SimpleHTTPRequestHandler` defines the following member variables: + The following are defined as class-level attributes of + :class:`SimpleHTTPRequestHandler`: .. attribute:: server_version - This will be ``"SimpleHTTP/" + __version__``, where ``__version__`` is - defined in the module. + This will be ``"SimpleHTTP/" + __version__``, where ``__version__`` is + defined at the module level. .. attribute:: extensions_map - A dictionary mapping suffixes into MIME types. The default is signified by - an empty string, and is considered to be ``application/octet-stream``. The - mapping is used case-insensitively, and so should contain only lower-cased - keys. + A dictionary mapping suffixes into MIME types. The default is + signified by an empty string, and is considered to be + ``application/octet-stream``. The mapping is used case-insensitively, + and so should contain only lower-cased keys. - The :class:`SimpleHTTPRequestHandler` defines the following methods: + The :class:`SimpleHTTPRequestHandler` class defines the following methods: .. method:: do_HEAD() From python-checkins at python.org Sun Apr 27 23:07:41 2008 From: python-checkins at python.org (kurt.kaiser) Date: Sun, 27 Apr 2008 23:07:41 +0200 (CEST) Subject: [Python-checkins] r62546 - in python/trunk/Lib/idlelib: EditorWindow.py NEWS.txt PyShell.py Message-ID: <20080427210741.F12F01E4006@bag.python.org> Author: kurt.kaiser Date: Sun Apr 27 23:07:41 2008 New Revision: 62546 Log: Home / Control-A toggles between left margin and end of leading white space. Patch 1196903 Jeff Shute. M idlelib/PyShell.py M idlelib/EditorWindow.py M idlelib/NEWS.txt Modified: python/trunk/Lib/idlelib/EditorWindow.py python/trunk/Lib/idlelib/NEWS.txt python/trunk/Lib/idlelib/PyShell.py Modified: python/trunk/Lib/idlelib/EditorWindow.py ============================================================================== --- python/trunk/Lib/idlelib/EditorWindow.py (original) +++ python/trunk/Lib/idlelib/EditorWindow.py Sun Apr 27 23:07:41 2008 @@ -153,6 +153,7 @@ text.bind("", self.move_at_edge_if_selection(1)) text.bind("<>", self.del_word_left) text.bind("<>", self.del_word_right) + text.bind("<>", self.home_callback) if flist: flist.inversedict[self] = key @@ -281,6 +282,50 @@ self.flist.new(dirname) return "break" + def home_callback(self, event): + if (event.state & 12) != 0 and event.keysym == "Home": + # state&1==shift, state&4==control, state&8==alt + return # ; fall back to class binding + + if self.text.index("iomark") and \ + self.text.compare("iomark", "<=", "insert lineend") and \ + self.text.compare("insert linestart", "<=", "iomark"): + insertpt = int(self.text.index("iomark").split(".")[1]) + else: + line = self.text.get("insert linestart", "insert lineend") + for insertpt in xrange(len(line)): + if line[insertpt] not in (' ','\t'): + break + else: + insertpt=len(line) + + lineat = int(self.text.index("insert").split('.')[1]) + + if insertpt == lineat: + insertpt = 0 + + dest = "insert linestart+"+str(insertpt)+"c" + + if (event.state&1) == 0: + # shift not pressed + self.text.tag_remove("sel", "1.0", "end") + else: + if not self.text.index("sel.first"): + self.text.mark_set("anchor","insert") + + first = self.text.index(dest) + last = self.text.index("anchor") + + if self.text.compare(first,">",last): + first,last = last,first + + self.text.tag_remove("sel", "1.0", "end") + self.text.tag_add("sel", first, last) + + self.text.mark_set("insert", dest) + self.text.see("insert") + return "break" + def set_status_bar(self): self.status_bar = self.MultiStatusBar(self.top) if macosxSupport.runningAsOSXApp(): Modified: python/trunk/Lib/idlelib/NEWS.txt ============================================================================== --- python/trunk/Lib/idlelib/NEWS.txt (original) +++ python/trunk/Lib/idlelib/NEWS.txt Sun Apr 27 23:07:41 2008 @@ -6,6 +6,9 @@ - Issue #2665: On Windows, an IDLE installation upgraded from an old version would not start if a custom theme was defined. +- Home / Control-A toggles between left margin and end of leading white + space. Patch 1196903 Jeff Shute. + What's New in IDLE 2.6a1? ========================= Modified: python/trunk/Lib/idlelib/PyShell.py ============================================================================== --- python/trunk/Lib/idlelib/PyShell.py (original) +++ python/trunk/Lib/idlelib/PyShell.py Sun Apr 27 23:07:41 2008 @@ -826,7 +826,6 @@ text.bind("<>", self.enter_callback) text.bind("<>", self.linefeed_callback) text.bind("<>", self.cancel_callback) - text.bind("<>", self.home_callback) text.bind("<>", self.eof_callback) text.bind("<>", self.open_stack_viewer) text.bind("<>", self.toggle_debugger) @@ -1063,16 +1062,6 @@ self.top.quit() return "break" - def home_callback(self, event): - if event.state != 0 and event.keysym == "Home": - return # ; fall back to class binding - if self.text.compare("iomark", "<=", "insert") and \ - self.text.compare("insert linestart", "<=", "iomark"): - self.text.mark_set("insert", "iomark") - self.text.tag_remove("sel", "1.0", "end") - self.text.see("insert") - return "break" - def linefeed_callback(self, event): # Insert a linefeed without entering anything (still autoindented) if self.reading: From python-checkins at python.org Sun Apr 27 23:09:43 2008 From: python-checkins at python.org (georg.brandl) Date: Sun, 27 Apr 2008 23:09:43 +0200 (CEST) Subject: [Python-checkins] r62547 - doctools/trunk/sphinx/templates/layout.html Message-ID: <20080427210943.60C9F1E400B@bag.python.org> Author: georg.brandl Date: Sun Apr 27 23:09:43 2008 New Revision: 62547 Log: Template nit. Modified: doctools/trunk/sphinx/templates/layout.html Modified: doctools/trunk/sphinx/templates/layout.html ============================================================================== --- doctools/trunk/sphinx/templates/layout.html (original) +++ doctools/trunk/sphinx/templates/layout.html Sun Apr 27 23:09:43 2008 @@ -38,7 +38,7 @@
    {%- block sidebarlogo %} {%- if logo %} -

    + {%- endif %} {%- endblock %} {%- block sidebartoc %} From python-checkins at python.org Sun Apr 27 23:38:06 2008 From: python-checkins at python.org (kurt.kaiser) Date: Sun, 27 Apr 2008 23:38:06 +0200 (CEST) Subject: [Python-checkins] r62548 - in python/trunk/Lib/idlelib: AutoCompleteWindow.py NEWS.txt Message-ID: <20080427213806.1ECFD1E4006@bag.python.org> Author: kurt.kaiser Date: Sun Apr 27 23:38:05 2008 New Revision: 62548 Log: Improved AutoCompleteWindow logic. Patch 2062 Tal Einat. Modified: python/trunk/Lib/idlelib/AutoCompleteWindow.py python/trunk/Lib/idlelib/NEWS.txt Modified: python/trunk/Lib/idlelib/AutoCompleteWindow.py ============================================================================== --- python/trunk/Lib/idlelib/AutoCompleteWindow.py (original) +++ python/trunk/Lib/idlelib/AutoCompleteWindow.py Sun Apr 27 23:38:05 2008 @@ -54,9 +54,9 @@ self.lastkey_was_tab = False def _change_start(self, newstart): + min_len = min(len(self.start), len(newstart)) i = 0 - while i < len(self.start) and i < len(newstart) and \ - self.start[i] == newstart[i]: + while i < min_len and self.start[i] == newstart[i]: i += 1 if i < len(self.start): self.widget.delete("%s+%dc" % (self.startindex, i), @@ -98,13 +98,17 @@ i = m + 1 last = i-1 + if first == last: # only one possible completion + return self.completions[first] + # We should return the maximum prefix of first and last + first_comp = self.completions[first] + last_comp = self.completions[last] + min_len = min(len(first_comp), len(last_comp)) i = len(s) - while len(self.completions[first]) > i and \ - len(self.completions[last]) > i and \ - self.completions[first][i] == self.completions[last][i]: + while i < min_len and first_comp[i] == last_comp[i]: i += 1 - return self.completions[first][:i] + return first_comp[:i] def _selection_changed(self): """Should be called when the selection of the Listbox has changed. @@ -118,8 +122,9 @@ if self._binary_search(lts) == cursel: newstart = lts else: + min_len = min(len(lts), len(selstart)) i = 0 - while i < len(lts) and i < len(selstart) and lts[i] == selstart[i]: + while i < min_len and lts[i] == selstart[i]: i += 1 newstart = selstart[:i] self._change_start(newstart) Modified: python/trunk/Lib/idlelib/NEWS.txt ============================================================================== --- python/trunk/Lib/idlelib/NEWS.txt (original) +++ python/trunk/Lib/idlelib/NEWS.txt Sun Apr 27 23:38:05 2008 @@ -9,6 +9,8 @@ - Home / Control-A toggles between left margin and end of leading white space. Patch 1196903 Jeff Shute. +- Improved AutoCompleteWindow logic. Patch 2062 Tal Einat. + What's New in IDLE 2.6a1? ========================= From buildbot at python.org Sun Apr 27 23:45:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 21:45:31 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080427214531.4B9111E4012@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/352 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: kurt.kaiser BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sun Apr 27 23:45:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 21:45:31 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080427214531.93F8E1E4019@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/400 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: kurt.kaiser BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sun Apr 27 23:45:45 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 21:45:45 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080427214545.3FF811E400B@bag.python.org> The Buildbot has detected a new failure of amd64 XP trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20XP%20trunk/builds/1195 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: georg.brandl,kurt.kaiser,skip.montanaro BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sun Apr 27 23:48:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 21:48:04 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080427214805.0AEFF1E4006@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1327 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: kurt.kaiser BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Sun Apr 27 23:52:20 2008 From: python-checkins at python.org (kurt.kaiser) Date: Sun, 27 Apr 2008 23:52:20 +0200 (CEST) Subject: [Python-checkins] r62549 - in python/trunk/Lib/idlelib: AutoComplete.py NEWS.txt Message-ID: <20080427215220.13E761E4006@bag.python.org> Author: kurt.kaiser Date: Sun Apr 27 23:52:19 2008 New Revision: 62549 Log: Autocompletion of filenames now support alternate separators, e.g. the '/' char on Windows. Patch 2061 Tal Einat. Modified: python/trunk/Lib/idlelib/AutoComplete.py python/trunk/Lib/idlelib/NEWS.txt Modified: python/trunk/Lib/idlelib/AutoComplete.py ============================================================================== --- python/trunk/Lib/idlelib/AutoComplete.py (original) +++ python/trunk/Lib/idlelib/AutoComplete.py Sun Apr 27 23:52:19 2008 @@ -23,6 +23,10 @@ # These constants represent the two different types of completions COMPLETE_ATTRIBUTES, COMPLETE_FILES = range(1, 2+1) +SEPS = os.sep +if os.altsep: # e.g. '/' on Windows... + SEPS += os.altsep + class AutoComplete: menudefs = [ @@ -70,7 +74,7 @@ if lastchar == ".": self._open_completions_later(False, False, False, COMPLETE_ATTRIBUTES) - elif lastchar == os.sep: + elif lastchar in SEPS: self._open_completions_later(False, False, False, COMPLETE_FILES) @@ -126,7 +130,7 @@ i -= 1 comp_start = curline[i:j] j = i - while i and curline[i-1] in FILENAME_CHARS+os.sep: + while i and curline[i-1] in FILENAME_CHARS + SEPS: i -= 1 comp_what = curline[i:j] elif hp.is_in_code() and (not mode or mode==COMPLETE_ATTRIBUTES): Modified: python/trunk/Lib/idlelib/NEWS.txt ============================================================================== --- python/trunk/Lib/idlelib/NEWS.txt (original) +++ python/trunk/Lib/idlelib/NEWS.txt Sun Apr 27 23:52:19 2008 @@ -9,7 +9,10 @@ - Home / Control-A toggles between left margin and end of leading white space. Patch 1196903 Jeff Shute. -- Improved AutoCompleteWindow logic. Patch 2062 Tal Einat. +- Improved AutoCompleteWindow logic. Patch 2062 Tal Einat. + +- Autocompletion of filenames now support alternate separators, e.g. the + '/' char on Windows. Patch 2061 Tal Einat. What's New in IDLE 2.6a1? ========================= From buildbot at python.org Mon Apr 28 00:06:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 22:06:52 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080427220652.68CA71E4006@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/101 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: kurt.kaiser BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 28 00:49:56 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 00:49:56 +0200 (CEST) Subject: [Python-checkins] r62550 - python/trunk/Lib/tempfile.py Message-ID: <20080427224956.9787A1E4006@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 00:49:56 2008 New Revision: 62550 Log: A few small changes: * The only exception we should catch when trying to import cStringIO is an ImportError. * Delete the function signatures embedded in the mk*temp docstrings. * The tempdir global variable was initialized twice. Modified: python/trunk/Lib/tempfile.py Modified: python/trunk/Lib/tempfile.py ============================================================================== --- python/trunk/Lib/tempfile.py (original) +++ python/trunk/Lib/tempfile.py Mon Apr 28 00:49:56 2008 @@ -39,7 +39,7 @@ try: from cStringIO import StringIO as _StringIO -except: +except ImportError: from StringIO import StringIO as _StringIO try: @@ -82,8 +82,6 @@ template = "tmp" -tempdir = None - # Internal routines. _once_lock = _allocate_lock() @@ -259,7 +257,7 @@ tempdir = None def gettempdir(): - """Accessor for tempdir.tempdir.""" + """Accessor for tempfile.tempdir.""" global tempdir if tempdir is None: _once_lock.acquire() @@ -271,8 +269,7 @@ return tempdir def mkstemp(suffix="", prefix=template, dir=None, text=False): - """mkstemp([suffix, [prefix, [dir, [text]]]]) - User-callable function to create and return a unique temporary + """User-callable function to create and return a unique temporary file. The return value is a pair (fd, name) where fd is the file descriptor returned by os.open, and name is the filename. @@ -309,8 +306,7 @@ def mkdtemp(suffix="", prefix=template, dir=None): - """mkdtemp([suffix, [prefix, [dir]]]) - User-callable function to create and return a unique temporary + """User-callable function to create and return a unique temporary directory. The return value is the pathname of the directory. Arguments are as for mkstemp, except that the 'text' argument is @@ -341,8 +337,7 @@ raise IOError, (_errno.EEXIST, "No usable temporary directory name found") def mktemp(suffix="", prefix=template, dir=None): - """mktemp([suffix, [prefix, [dir]]]) - User-callable function to return a unique temporary file name. The + """User-callable function to return a unique temporary file name. The file is not created. Arguments are as for mkstemp, except that the 'text' argument is From python-checkins at python.org Mon Apr 28 00:52:03 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 00:52:03 +0200 (CEST) Subject: [Python-checkins] r62551 - python/trunk/Doc/library/tempfile.rst Message-ID: <20080427225203.349711E4006@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 00:52:02 2008 New Revision: 62551 Log: Wrap some long paragraphs and include the default values for optional function parameters. Modified: python/trunk/Doc/library/tempfile.rst Modified: python/trunk/Doc/library/tempfile.rst ============================================================================== --- python/trunk/Doc/library/tempfile.rst (original) +++ python/trunk/Doc/library/tempfile.rst Mon Apr 28 00:52:02 2008 @@ -23,51 +23,53 @@ no longer contain the process ID; instead a string of six random characters is used. -Also, all the user-callable functions now take additional arguments which allow -direct control over the location and name of temporary files. It is no longer -necessary to use the global *tempdir* and *template* variables. To maintain -backward compatibility, the argument order is somewhat odd; it is recommended to -use keyword arguments for clarity. +Also, all the user-callable functions now take additional arguments which +allow direct control over the location and name of temporary files. It is +no longer necessary to use the global *tempdir* and *template* variables. +To maintain backward compatibility, the argument order is somewhat odd; it +is recommended to use keyword arguments for clarity. The module defines the following user-callable functions: -.. function:: TemporaryFile([mode='w+b'[, bufsize=-1[, suffix[, prefix[, dir]]]]]) +.. function:: TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]) - Return a file-like object that can be used as a temporary storage - area. The file is created using :func:`mkstemp`. It will be destroyed as soon + Return a file-like object that can be used as a temporary storage area. + The file is created using :func:`mkstemp`. It will be destroyed as soon as it is closed (including an implicit close when the object is garbage - collected). Under Unix, the directory entry for the file is removed immediately - after the file is created. Other platforms do not support this; your code - should not rely on a temporary file created using this function having or not - having a visible name in the file system. - - The *mode* parameter defaults to ``'w+b'`` so that the file created can be read - and written without being closed. Binary mode is used so that it behaves - consistently on all platforms without regard for the data that is stored. - *bufsize* defaults to ``-1``, meaning that the operating system default is used. + collected). Under Unix, the directory entry for the file is removed + immediately after the file is created. Other platforms do not support + this; your code should not rely on a temporary file created using this + function having or not having a visible name in the file system. + + The *mode* parameter defaults to ``'w+b'`` so that the file created can + be read and written without being closed. Binary mode is used so that it + behaves consistently on all platforms without regard for the data that is + stored. *bufsize* defaults to ``-1``, meaning that the operating system + default is used. The *dir*, *prefix* and *suffix* parameters are passed to :func:`mkstemp`. The returned object is a true file object on POSIX platforms. On other platforms, it is a file-like object whose :attr:`file` attribute is the - underlying true file object. This file-like object can be used in a :keyword:`with` - statement, just like a normal file. + underlying true file object. This file-like object can be used in a + :keyword:`with` statement, just like a normal file. -.. function:: NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix[, prefix[, dir[, delete]]]]]]) +.. function:: NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None[, delete=True]]]]]]) - This function operates exactly as :func:`TemporaryFile` does, except that the - file is guaranteed to have a visible name in the file system (on Unix, the - directory entry is not unlinked). That name can be retrieved from the - :attr:`name` member of the file object. Whether the name can be used to open - the file a second time, while the named temporary file is still open, varies - across platforms (it can be so used on Unix; it cannot on Windows NT or later). - If *delete* is true (the default), the file is deleted as soon as it is closed. - - The returned object is always a file-like object whose :attr:`file` attribute - is the underlying true file object. This file-like object can be used in a :keyword:`with` - statement, just like a normal file. + This function operates exactly as :func:`TemporaryFile` does, except that + the file is guaranteed to have a visible name in the file system (on + Unix, the directory entry is not unlinked). That name can be retrieved + from the :attr:`name` member of the file object. Whether the name can be + used to open the file a second time, while the named temporary file is + still open, varies across platforms (it can be so used on Unix; it cannot + on Windows NT or later). If *delete* is true (the default), the file is + deleted as soon as it is closed. + + The returned object is always a file-like object whose :attr:`file` + attribute is the underlying true file object. This file-like object can + be used in a :keyword:`with` statement, just like a normal file. .. versionadded:: 2.3 @@ -75,107 +77,113 @@ The *delete* parameter. -.. function:: SpooledTemporaryFile([max_size=0, [mode='w+b'[, bufsize=-1[, suffix[, prefix[, dir]]]]]]) +.. function:: SpooledTemporaryFile([max_size=0, [mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]]) - This function operates exactly as :func:`TemporaryFile` does, except that data - is spooled in memory until the file size exceeds *max_size*, or until the file's - :func:`fileno` method is called, at which point the contents are written to disk - and operation proceeds as with :func:`TemporaryFile`. + This function operates exactly as :func:`TemporaryFile` does, except that + data is spooled in memory until the file size exceeds *max_size*, or + until the file's :func:`fileno` method is called, at which point the + contents are written to disk and operation proceeds as with + :func:`TemporaryFile`. - The resulting file has one additional method, :func:`rollover`, which causes the - file to roll over to an on-disk file regardless of its size. + The resulting file has one additional method, :func:`rollover`, which + causes the file to roll over to an on-disk file regardless of its size. The returned object is a file-like object whose :attr:`_file` attribute is either a :class:`StringIO` object or a true file object, depending on - whether :func:`rollover` has been called. This file-like object can be used in a - :keyword:`with` statement, just like a normal file. + whether :func:`rollover` has been called. This file-like object can be + used in a :keyword:`with` statement, just like a normal file. .. versionadded:: 2.6 -.. function:: mkstemp([suffix[, prefix[, dir[, text]]]]) +.. function:: mkstemp([suffix=''[, prefix='tmp'[, dir=None[, text=False]]]]) - Creates a temporary file in the most secure manner possible. There are no - race conditions in the file's creation, assuming that the platform properly - implements the :const:`os.O_EXCL` flag for :func:`os.open`. The file is - readable and writable only by the creating user ID. If the platform uses - permission bits to indicate whether a file is executable, the file is - executable by no one. The file descriptor is not inherited by child - processes. - - Unlike :func:`TemporaryFile`, the user of :func:`mkstemp` is responsible for - deleting the temporary file when done with it. - - If *suffix* is specified, the file name will end with that suffix, otherwise - there will be no suffix. :func:`mkstemp` does not put a dot between the file - name and the suffix; if you need one, put it at the beginning of *suffix*. - - If *prefix* is specified, the file name will begin with that prefix; otherwise, - a default prefix is used. - - If *dir* is specified, the file will be created in that directory; otherwise, - a default directory is used. The default directory is chosen from a - platform-dependent list, but the user of the application can control the - directory location by setting the *TMPDIR*, *TEMP* or *TMP* environment - variables. There is thus no guarantee that the generated filename will have - any nice properties, such as not requiring quoting when passed to external - commands via ``os.popen()``. - - If *text* is specified, it indicates whether to open the file in binary mode - (the default) or text mode. On some platforms, this makes no difference. - - :func:`mkstemp` returns a tuple containing an OS-level handle to an open file - (as would be returned by :func:`os.open`) and the absolute pathname of that - file, in that order. + Creates a temporary file in the most secure manner possible. There are + no race conditions in the file's creation, assuming that the platform + properly implements the :const:`os.O_EXCL` flag for :func:`os.open`. The + file is readable and writable only by the creating user ID. If the + platform uses permission bits to indicate whether a file is executable, + the file is executable by no one. The file descriptor is not inherited + by child processes. + + Unlike :func:`TemporaryFile`, the user of :func:`mkstemp` is responsible + for deleting the temporary file when done with it. + + If *suffix* is specified, the file name will end with that suffix, + otherwise there will be no suffix. :func:`mkstemp` does not put a dot + between the file name and the suffix; if you need one, put it at the + beginning of *suffix*. + + If *prefix* is specified, the file name will begin with that prefix; + otherwise, a default prefix is used. + + If *dir* is specified, the file will be created in that directory; + otherwise, a default directory is used. The default directory is chosen + from a platform-dependent list, but the user of the application can + control the directory location by setting the *TMPDIR*, *TEMP* or *TMP* + environment variables. There is thus no guarantee that the generated + filename will have any nice properties, such as not requiring quoting + when passed to external commands via ``os.popen()``. + + If *text* is specified, it indicates whether to open the file in binary + mode (the default) or text mode. On some platforms, this makes no + difference. + + :func:`mkstemp` returns a tuple containing an OS-level handle to an open + file (as would be returned by :func:`os.open`) and the absolute pathname + of that file, in that order. .. versionadded:: 2.3 -.. function:: mkdtemp([suffix[, prefix[, dir]]]) +.. function:: mkdtemp([suffix=''[, prefix='tmp'[, dir=None]]]) - Creates a temporary directory in the most secure manner possible. There are no - race conditions in the directory's creation. The directory is readable, - writable, and searchable only by the creating user ID. + Creates a temporary directory in the most secure manner possible. There + are no race conditions in the directory's creation. The directory is + readable, writable, and searchable only by the creating user ID. - The user of :func:`mkdtemp` is responsible for deleting the temporary directory - and its contents when done with it. + The user of :func:`mkdtemp` is responsible for deleting the temporary + directory and its contents when done with it. - The *prefix*, *suffix*, and *dir* arguments are the same as for :func:`mkstemp`. + The *prefix*, *suffix*, and *dir* arguments are the same as for + :func:`mkstemp`. :func:`mkdtemp` returns the absolute pathname of the new directory. .. versionadded:: 2.3 -.. function:: mktemp([suffix[, prefix[, dir]]]) +.. function:: mktemp([suffix=''[, prefix='tmp'[, dir=None]]]) .. deprecated:: 2.3 Use :func:`mkstemp` instead. - Return an absolute pathname of a file that did not exist at the time the call is - made. The *prefix*, *suffix*, and *dir* arguments are the same as for - :func:`mkstemp`. + Return an absolute pathname of a file that did not exist at the time the + call is made. The *prefix*, *suffix*, and *dir* arguments are the same + as for :func:`mkstemp`. .. warning:: - Use of this function may introduce a security hole in your program. By the time - you get around to doing anything with the file name it returns, someone else may - have beaten you to the punch. - -The module uses two global variables that tell it how to construct a temporary -name. They are initialized at the first call to any of the functions above. -The caller may change them, but this is discouraged; use the appropriate -function arguments, instead. + Use of this function may introduce a security hole in your program. + By the time you get around to doing anything with the file name it + returns, someone else may have beaten you to the punch. + +The module uses two global variables that tell it how to construct a +temporary name. They are initialized at the first call to any of the +functions above. The caller may change them, but this is discouraged; use +the appropriate function arguments, instead. .. data:: tempdir - When set to a value other than ``None``, this variable defines the default value - for the *dir* argument to all the functions defined in this module. - - If ``tempdir`` is unset or ``None`` at any call to any of the above functions, - Python searches a standard list of directories and sets *tempdir* to the first - one which the calling user can create files in. The list is: + When set to a value other than ``None``, this variable defines the + default value for the *dir* argument to all the functions defined in this + module. + + If ``tempdir`` is unset or ``None`` at any call to any of the above + functions, Python searches a standard list of directories and sets + *tempdir* to the first one which the calling user can create files in. + The list is: #. The directory named by the :envvar:`TMPDIR` environment variable. From buildbot at python.org Mon Apr 28 01:03:43 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 23:03:43 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 trunk Message-ID: <20080427230344.0DE3B1E4006@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%20trunk/builds/1329 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: skip.montanaro BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 01:04:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Sun, 27 Apr 2008 23:04:16 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080427230417.0030A1E400B@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2907 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: kurt.kaiser BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From python-checkins at python.org Mon Apr 28 03:14:45 2008 From: python-checkins at python.org (guilherme.polo) Date: Mon, 28 Apr 2008 03:14:45 +0200 (CEST) Subject: [Python-checkins] r62552 - in sandbox/trunk/ttk-gsoc: README lib-tk/Ttk.py samples/combo_themes.py samples/theme_selector.py samples/widget_state.py Message-ID: <20080428011445.969771E4006@bag.python.org> Author: guilherme.polo Date: Mon Apr 28 03:14:45 2008 New Revision: 62552 Log: Ttk.Widget no longer subclasses Ttk.Style, now you should instantiate Ttk.Style in order to deal with styles in general. I've renamed style_configure (Ttk.Style) to configure, which is the correct name. Methods configure, map and lookup of Ttk.Style are now wrapped. Checking for Tile presence is more adequate now, probably only some environment checks missing now. Updated samples so they work with the updated Ttk.Style. Updated README so it matches my current experiments. Also added some references so I know where to find them. Added a new sample to demonstrate widget states and a bit of font styling. Added: sandbox/trunk/ttk-gsoc/samples/widget_state.py Modified: sandbox/trunk/ttk-gsoc/README sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py sandbox/trunk/ttk-gsoc/samples/combo_themes.py sandbox/trunk/ttk-gsoc/samples/theme_selector.py Modified: sandbox/trunk/ttk-gsoc/README ============================================================================== --- sandbox/trunk/ttk-gsoc/README (original) +++ sandbox/trunk/ttk-gsoc/README Mon Apr 28 03:14:45 2008 @@ -1,13 +1,25 @@ Testing Code ============ -You will need Python with a _tkinter compiled against Tcl/Tk 8.5 or -Tile[1] has to be installed. I have tested it with python-trunk and -release25-maint repos. +You will need Python with a _tkinter compiled against Tcl/Tk 8.5 +otherwise Tile[1] has to be installed. I have tested it under Linux +with python 2.5.2 (Ubuntu package), python-trunk and release25-maint +repos. -Given that you have the requirements, you should be able to run the +Given that you meet the requirements, you should be able to run the samples passing the appropriate PYTHONPATH or placing the Ttk module somewhere in sys.path. -[1] I didn't test it with Tile yet, not sure if it will be detected. +[1] I've tested it with Tile and it works, but I would recommend + upgrading to Tcl/Tk 8.5 so you get antialiased fonts and other + nice features. + + +References +========== + +What I'm using as a reference to know how complete the project is: + +Changes in Tcl/Tk 8.5 - http://wiki.tcl.tk/10630 +Tk Commands - http://www.tcl.tk/man/tcl8.5/TkCmd/contents.htm Modified: sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py (original) +++ sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py Mon Apr 28 03:14:45 2008 @@ -14,52 +14,64 @@ __version__ = "Not ready for use, and incomplete" +__author__ = "Guilherme Polo " + +__all__ = ["Button", "Checkbutton", "Combobox", "Entry", "Frame", "Label", + "Style", "Widget"] + import Tkinter import _tkinter -# Check if Ttk is available for use -if Tkinter.TkVersion < 8.5: - # Tk version is "too old", but if Tile is around Ttk still can be used - # XXX All this verbosity below could be removed. - # XXX Looking at FixTk.py it seems something for tile should be added. - _tkinter.create( - None, # screename - '', # basename - '', # className - 0, # interactive - 0, # wantobjects - 1, # wantTk, setting this to False Tk_Init doesn't get called, - # but eval won't work then - 0, # sync - None # use - ).eval('package require tile') +# Verify if Tk is new enough to not need Tile checking +REQUIRE_TILE = True if Tkinter.TkVersion < 8.5 else False + +# XXX Looking at FixTk.py it seems something like TILE_LIBRARY env check +# should be added there and possibly here before tile package check. +def _setup(tksetup): + # Extend default Tkinter.BaseWidget._setup staticmethod so we can be + # sure that Ttk is available for use, or not. + def f(self, master, cnf): + tksetup(self, master, cnf) + if REQUIRE_TILE: + self.tk.eval('package require tile') + + return f + +Tkinter.BaseWidget._setup = _setup(Tkinter.BaseWidget._setup) -# If we are here, then Ttk is available for use =) class Style(object): """Manipulate style database.""" - - def style_configure(self, style, **kw): + + _name = "ttk::style" + + def __init__(self, master=None): + if not master: + master = Tkinter._default_root + if not master: + raise RuntimeError("Too early to manipulate styles") + + self.tk = master.tk + + def configure(self, style, *args): """Sets the default value of the especified option(s) in style.""" - # XXX I renamed this method so it doesn't conflict with Misc.configure - # but maybe this one could be removed. - raise NotImplementedError + return self.tk.call(self._name, "configure", style, *args) - def map(self, style, **kw): - raise NotImplementedError + def map(self, style, statespec): + self.tk.call(self._name, "map", style, statespec) - def lookup(self, style, option, state="normal", default=None): + def lookup(self, style, option, state=None, default=None): """Returns the value specified for option for given style in state, using the standard lookup rules for element options. state is a list of state names; if omitted, it defaults to "normal". If the default argument is present, it is used as a fallback value in case no specification for option is found.""" - # XXX Redo this docstring after understanding how lookup - # works - raise NotImplementedError + # XXX Re-write this docstring + return self.tk.call(self._name, "lookup", style, option, state, + default) def layout(self, style, layoutspec=None): @@ -89,9 +101,9 @@ Specifies a list of elements to place inside the element """ - # XXX I haven't used this yet, but it looks like a more - # appropriate way of passing layoutspec should be done - return self.tk.call("ttk::style", "layout", style, layoutspec) + # XXX A more appropriate way of passing layoutspec is needed, + # right now it is like if we were programming in Tcl + return self.tk.call(self._name, "layout", style, layoutspec) def element_create(self, elementname, type, **kw): @@ -101,12 +113,12 @@ def element_names(self): """Returns the list of elements defined in the current theme.""" - return self.tk.call("ttk::style", "element", "names") + return self.tk.call(self._name, "element", "names") def element_options(self, element): """Return the list of element's options.""" - return self.tk.call("ttk::style", "element", "options", element) + return self.tk.call(self._name, "element", "options", element) def theme_create(self, themename, **kw): @@ -121,17 +133,15 @@ def theme_names(self): """Returns a list of all known themes.""" - return self.tk.call("ttk::style", "theme", "names") + return self.tk.call(self._name, "theme", "names") def theme_use(self, themename): """Sets the current theme to themename, and refreshes all widgets.""" - self.tk.call("ttk::style", "theme", "use", themename) + self.tk.call(self._name, "theme", "use", themename) -class Widget(Tkinter.Widget, Style): - # XXX after rereading the ttk description, it looks like - # this class shouldn't subclass Style +class Widget(Tkinter.Widget): """Base class for Tk themed widgets.""" def __init__(self, master, widgetName, cnf={}, kw={}, extra=()): @@ -251,20 +261,6 @@ """ Widget.__init__(self, master, "ttk::entry", cnf, kw) - # XXX All this following thing will be removed soon - # - # Tkinter.Entry defines: - # delete, get, icursor, index, insert, selection clear, - # selection present, selection range, xview, xview moveto, - # xview scroll - # - # Ttk.Widget defines: - # instate, state - # - # Misc (Ttk.Widget -> Tkinter.Widget -> Misc) defines: - # cget, configure - # - # This leaves bbox, identify and validate to be defined here def bbox(self, index): """Return a tuple of (x, y, width, height) which describes the @@ -305,10 +301,10 @@ def current(self, newindex=None): - """If newindex is supplied, sets the combobox value to the element - at position newindex in the list of values. Otherwise, returns - the index of the current value in the list of values or - 1 - if the current value does not appear in the list.""" + """If newindex is supplied, sets the combobox value to the + element at position newindex in the list of values. Otherwise, + returns the index of the current value in the list of values + or -1 if the current value does not appear in the list.""" return self.tk.call(self._w, "current", newindex) Modified: sandbox/trunk/ttk-gsoc/samples/combo_themes.py ============================================================================== --- sandbox/trunk/ttk-gsoc/samples/combo_themes.py (original) +++ sandbox/trunk/ttk-gsoc/samples/combo_themes.py Mon Apr 28 03:14:45 2008 @@ -8,20 +8,22 @@ class App(Ttk.Frame): def __init__(self): Ttk.Frame.__init__(self) + + self.style = Ttk.Style() self._setup_widgets() def _change_theme(self, event): if event.widget.current(): # value #0 is not a theme newtheme = event.widget.get() # change to the new theme and refresh all the widgets - self.theme_use(newtheme) + self.style.theme_use(newtheme) def _setup_widgets(self): # XXX Not how we have to convert from tuple to list (to add a new # element) and then convert to tuple again so Combobox displays # it correctly. This shouldn't be needed, and I will see what # can be done towards this. - themes = list(self.theme_names()) + themes = list(self.style.theme_names()) themes.insert(0, "Pick a theme") # Create a readonly Combobox which will display 4 values at max, # which will cause it to create a scrollbar if there are more Modified: sandbox/trunk/ttk-gsoc/samples/theme_selector.py ============================================================================== --- sandbox/trunk/ttk-gsoc/samples/theme_selector.py (original) +++ sandbox/trunk/ttk-gsoc/samples/theme_selector.py Mon Apr 28 03:14:45 2008 @@ -10,6 +10,8 @@ class App(Ttk.Frame): def __init__(self): Ttk.Frame.__init__(self, borderwidth=3) + + self.style = Ttk.Style() # XXX Ideally I wouldn't want to create a Tkinter.IntVar to make # it work with Checkbutton variable option. @@ -17,7 +19,7 @@ self._setup_widgets() def _change_theme(self): - self.theme_use(self.themes_combo.get()) + self.style.theme_use(self.themes_combo.get()) def _theme_sel_changed(self, widget): if self.theme_autochange.get(): @@ -27,7 +29,7 @@ themes_lbl = Ttk.Label(self, text="Themes") - themes = self.theme_names() + themes = self.style.theme_names() self.themes_combo = Ttk.Combobox(self, values=themes, state="readonly") self.themes_combo.set(themes[0]) self.themes_combo.bind("<>", self._theme_sel_changed) Added: sandbox/trunk/ttk-gsoc/samples/widget_state.py ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/samples/widget_state.py Mon Apr 28 03:14:45 2008 @@ -0,0 +1,83 @@ +"""Sample demo showing widget states and some font styling.""" +import Ttk + +states = ['active', 'disabled', 'focus', 'pressed', 'selected', + 'background', 'readonly', 'alternate', 'invalid'] + +for state in states[:]: + states.append("!" + state) + +def reset_state(widget): + nostate = ' '.join(states[len(states) / 2:]) + widget.state(nostate) + +class App(Ttk.Frame): + def __init__(self, title=None): + Ttk.Frame.__init__(self, borderwidth=6) + self.master.title(title) + + self.style = Ttk.Style() + + # get default font size and family + button_font = self.style.lookup("TButton", "-font") + font_size = self.tk.eval("font configure %s -size" % button_font) + font_size = int(font_size[1:]) + font_family = self.tk.eval("font configure %s -family" % button_font) + + self.font_family = font_family + self.base_font_size = font_size + + # a list to hold all the widgets that will have their states changed + self.update_widgets = [] + + self._setup_widgets() + + def _set_font(self, extra=0): + self.style.configure("TButton", "-font", + "%s -%d" % (self.font_family, self.base_font_size + extra)) + + def _new_state(self, widget, newtext): + widget = self.nametowidget(widget) + + if not newtext: + goodstates = ["disabled"] + font_extra = 0 + else: + # set widget state according to what has been entered in the entry + newstates = set(newtext.split()) # eliminate duplicates + + # keep only the valid states + goodstates = [state for state in newstates if state in states] + # define a new font size based on amount of states + font_extra = 2 * len(goodstates) + + # set new widget state + for widget in self.update_widgets: + reset_state(widget) # remove any previous state from the widget + widget.state(' '.join(goodstates)) + + # update Ttk Button font size + self._set_font(font_extra) + return 1 + + def _setup_widgets(self): + btn = Ttk.Button(self, text='Enter states and watch') + + entry = Ttk.Entry(self, cursor='xterm', validate="key") + entry['validatecommand'] = (self.register(self._new_state), '%W', '%P') + entry.focus() + + self.update_widgets.append(btn) + entry.validate() + + entry.pack(fill='x', padx=6) + btn.pack(side='left', pady=6, padx=6, anchor='n') + self.pack(fill='both', expand=1) + + +def main(): + app = App("Widget State Tester") + app.mainloop() + +if __name__ == "__main__": + main() From python-checkins at python.org Mon Apr 28 04:57:23 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 04:57:23 +0200 (CEST) Subject: [Python-checkins] r62553 - python/trunk/Lib/pyclbr.py Message-ID: <20080428025723.CE7671E400C@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 04:57:23 2008 New Revision: 62553 Log: Minor cleanups: * Avoid creating unused local variables where we can. Where we can't prefix the unused variables with '_'. * Avoid shadowing builtins where it won't change the external interface of a function. * Use None as default path arg to readmodule and readmodule_ex. Modified: python/trunk/Lib/pyclbr.py Modified: python/trunk/Lib/pyclbr.py ============================================================================== --- python/trunk/Lib/pyclbr.py (original) +++ python/trunk/Lib/pyclbr.py Mon Apr 28 04:57:23 2008 @@ -41,8 +41,8 @@ import sys import imp -import tokenize # Python tokenizer -from token import NAME, DEDENT, NEWLINE, OP +import tokenize +from token import NAME, DEDENT, OP from operator import itemgetter __all__ = ["readmodule", "readmodule_ex", "Class", "Function"] @@ -73,37 +73,37 @@ self.file = file self.lineno = lineno -def readmodule(module, path=[]): +def readmodule(module, path=None): '''Backwards compatible interface. Call readmodule_ex() and then only keep Class objects from the resulting dictionary.''' - dict = _readmodule(module, path) res = {} - for key, value in dict.items(): + for key, value in _readmodule(module, path or []).items(): if isinstance(value, Class): res[key] = value return res -def readmodule_ex(module, path=[]): +def readmodule_ex(module, path=None): '''Read a module file and return a dictionary of classes. Search for MODULE in PATH and sys.path, read and parse the module and return a dictionary with one entry for each class found in the module. + ''' + return _readmodule(module, path or []) + +def _readmodule(module, path, inpackage=None): + '''Do the hard work for readmodule[_ex]. - If INPACKAGE is true, it must be the dotted name of the package in + If INPACKAGE is given, it must be the dotted name of the package in which we are searching for a submodule, and then PATH must be the package search path; otherwise, we are searching for a top-level module, and PATH is combined with sys.path. ''' - return _readmodule(module, path) - -def _readmodule(module, path, inpackage=None): - '''Do the hard work for readmodule[_ex].''' # Compute the full module name (prepending inpackage if set) - if inpackage: + if inpackage is not None: fullmodule = "%s.%s" % (inpackage, module) else: fullmodule = module @@ -116,7 +116,7 @@ dict = {} # Check if it is a built-in module; we don't do much for these - if module in sys.builtin_module_names and not inpackage: + if module in sys.builtin_module_names and inpackage is None: _modules[module] = dict return dict @@ -126,22 +126,22 @@ package = module[:i] submodule = module[i+1:] parent = _readmodule(package, path, inpackage) - if inpackage: + if inpackage is not None: package = "%s.%s" % (inpackage, package) return _readmodule(submodule, parent['__path__'], package) # Search the path for the module f = None - if inpackage: - f, file, (suff, mode, type) = imp.find_module(module, path) + if inpackage is not None: + f, fname, (_s, _m, ty) = imp.find_module(module, path) else: - f, file, (suff, mode, type) = imp.find_module(module, path + sys.path) - if type == imp.PKG_DIRECTORY: - dict['__path__'] = [file] - path = [file] + path - f, file, (suff, mode, type) = imp.find_module('__init__', [file]) + f, fname, (_s, _m, ty) = imp.find_module(module, path + sys.path) + if ty == imp.PKG_DIRECTORY: + dict['__path__'] = [fname] + path = [fname] + path + f, fname, (_s, _m, ty) = imp.find_module('__init__', [fname]) _modules[fullmodule] = dict - if type != imp.PY_SOURCE: + if ty != imp.PY_SOURCE: # not Python source, can't do anything with this module f.close() return dict @@ -150,7 +150,7 @@ g = tokenize.generate_tokens(f.readline) try: - for tokentype, token, start, end, line in g: + for tokentype, token, start, _end, _line in g: if tokentype == DEDENT: lineno, thisindent = start # close nested classes and defs @@ -161,7 +161,7 @@ # close previous nested classes and defs while stack and stack[-1][1] >= thisindent: del stack[-1] - tokentype, meth_name, start, end, line = g.next() + tokentype, meth_name, start = g.next()[0:3] if tokentype != NAME: continue # Syntax error if stack: @@ -172,18 +172,19 @@ # else it's a nested def else: # it's a function - dict[meth_name] = Function(fullmodule, meth_name, file, lineno) + dict[meth_name] = Function(fullmodule, meth_name, + fname, lineno) stack.append((None, thisindent)) # Marker for nested fns elif token == 'class': lineno, thisindent = start # close previous nested classes and defs while stack and stack[-1][1] >= thisindent: del stack[-1] - tokentype, class_name, start, end, line = g.next() + tokentype, class_name, start = g.next()[0:3] if tokentype != NAME: continue # Syntax error # parse what follows the class name - tokentype, token, start, end, line = g.next() + tokentype, token, start = g.next()[0:3] inherit = None if token == '(': names = [] # List of superclasses @@ -191,7 +192,7 @@ level = 1 super = [] # Tokens making up current superclass while True: - tokentype, token, start, end, line = g.next() + tokentype, token, start = g.next()[0:3] if token in (')', ',') and level == 1: n = "".join(super) if n in dict: @@ -224,16 +225,17 @@ super.append(token) # expressions in the base list are not supported inherit = names - cur_class = Class(fullmodule, class_name, inherit, file, lineno) + cur_class = Class(fullmodule, class_name, inherit, + fname, lineno) if not stack: dict[class_name] = cur_class stack.append((cur_class, thisindent)) elif token == 'import' and start[1] == 0: modules = _getnamelist(g) - for mod, mod2 in modules: + for mod, _mod2 in modules: try: # Recursively read the imported module - if not inpackage: + if inpackage is None: _readmodule(mod, path) else: try: @@ -287,7 +289,7 @@ name2 = None names.append((name, name2)) while token != "," and "\n" not in token: - tokentype, token, start, end, line = g.next() + token = g.next()[1] if token != ",": break return names @@ -297,15 +299,15 @@ # name is the dotted name, or None if there was no dotted name, # and token is the next input token. parts = [] - tokentype, token, start, end, line = g.next() + tokentype, token = g.next()[0:2] if tokentype != NAME and token != '*': return (None, token) parts.append(token) while True: - tokentype, token, start, end, line = g.next() + tokentype, token = g.next()[0:2] if token != '.': break - tokentype, token, start, end, line = g.next() + tokentype, token = g.next()[0:2] if tokentype != NAME: break parts.append(token) From python-checkins at python.org Mon Apr 28 04:59:45 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 04:59:45 +0200 (CEST) Subject: [Python-checkins] r62554 - python/trunk/Doc/library/pyclbr.rst Message-ID: <20080428025945.D78471E400C@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 04:59:45 2008 New Revision: 62554 Log: Correct documentation to match implementation: "Class" instead of "class_descriptor", "Function" instead of "function_descriptor". Note default path value for readmodule*. Wrap some long paragraphs. Don't mention 'inpackage' which isn't part of the public API. Modified: python/trunk/Doc/library/pyclbr.rst Modified: python/trunk/Doc/library/pyclbr.rst ============================================================================== --- python/trunk/Doc/library/pyclbr.rst (original) +++ python/trunk/Doc/library/pyclbr.rst Mon Apr 28 04:59:45 2008 @@ -7,75 +7,75 @@ .. sectionauthor:: Fred L. Drake, Jr. -The :mod:`pyclbr` can be used to determine some limited information about the -classes, methods and top-level functions defined in a module. The information -provided is sufficient to implement a traditional three-pane class browser. The -information is extracted from the source code rather than by importing the -module, so this module is safe to use with untrusted source code. This -restriction makes it impossible to use this module with modules not implemented -in Python, including many standard and optional extension modules. - - -.. function:: readmodule(module[, path]) - - Read a module and return a dictionary mapping class names to class descriptor - objects. The parameter *module* should be the name of a module as a string; - it may be the name of a module within a package. The *path* parameter should - be a sequence, and is used to augment the value of ``sys.path``, which is - used to locate module source code. - - .. The 'inpackage' parameter appears to be for internal use only.... - - -.. function:: readmodule_ex(module[, path]) - - Like :func:`readmodule`, but the returned dictionary, in addition to mapping - class names to class descriptor objects, also maps top-level function names to - function descriptor objects. Moreover, if the module being read is a package, - the key ``'__path__'`` in the returned dictionary has as its value a list which - contains the package search path. - - .. The 'inpackage' parameter appears to be for internal use only.... +The :mod:`pyclbr` module can be used to determine some limited information +about the classes, methods and top-level functions defined in a module. The +information provided is sufficient to implement a traditional three-pane +class browser. The information is extracted from the source code rather +than by importing the module, so this module is safe to use with untrusted +code. This restriction makes it impossible to use this module with modules +not implemented in Python, including all standard and optional extension +modules. + + +.. function:: readmodule(module[, path=None]) + + Read a module and return a dictionary mapping class names to class + descriptor objects. The parameter *module* should be the name of a + module as a string; it may be the name of a module within a package. The + *path* parameter should be a sequence, and is used to augment the value + of ``sys.path``, which is used to locate module source code. + + +.. function:: readmodule_ex(module[, path=None]) + + Like :func:`readmodule`, but the returned dictionary, in addition to + mapping class names to class descriptor objects, also maps top-level + function names to function descriptor objects. Moreover, if the module + being read is a package, the key ``'__path__'`` in the returned + dictionary has as its value a list which contains the package search + path. .. _pyclbr-class-objects: -Class Descriptor Objects ------------------------- +Class Objects +------------- -The class descriptor objects used as values in the dictionary returned by -:func:`readmodule` and :func:`readmodule_ex` provide the following data members: +The :class:`Class` objects used as values in the dictionary returned by +:func:`readmodule` and :func:`readmodule_ex` provide the following data +members: -.. attribute:: class_descriptor.module +.. attribute:: Class.module The name of the module defining the class described by the class descriptor. -.. attribute:: class_descriptor.name +.. attribute:: Class.name The name of the class. -.. attribute:: class_descriptor.super +.. attribute:: Class.super - A list of class descriptors which describe the immediate base classes of the - class being described. Classes which are named as superclasses but which are - not discoverable by :func:`readmodule` are listed as a string with the class - name instead of class descriptors. + A list of :class:`Class` objects which describe the immediate base + classes of the class being described. Classes which are named as + superclasses but which are not discoverable by :func:`readmodule` are + listed as a string with the class name instead of as :class:`Class` + objects. -.. attribute:: class_descriptor.methods +.. attribute:: Class.methods A dictionary mapping method names to line numbers. -.. attribute:: class_descriptor.file +.. attribute:: Class.file Name of the file containing the ``class`` statement defining the class. -.. attribute:: class_descriptor.lineno +.. attribute:: Class.lineno The line number of the ``class`` statement within the file named by :attr:`file`. @@ -83,30 +83,31 @@ .. _pyclbr-function-objects: -Function Descriptor Objects ---------------------------- +Function Objects +---------------- -The function descriptor objects used as values in the dictionary returned by +The :class:`Function` objects used as values in the dictionary returned by :func:`readmodule_ex` provide the following data members: -.. attribute:: function_descriptor.module +.. attribute:: Function.module The name of the module defining the function described by the function descriptor. -.. attribute:: function_descriptor.name +.. attribute:: Function.name The name of the function. -.. attribute:: function_descriptor.file +.. attribute:: Function.file Name of the file containing the ``def`` statement defining the function. -.. attribute:: function_descriptor.lineno +.. attribute:: Function.lineno - The line number of the ``def`` statement within the file named by :attr:`file`. + The line number of the ``def`` statement within the file named by + :attr:`file`. From python-checkins at python.org Mon Apr 28 05:23:50 2008 From: python-checkins at python.org (brett.cannon) Date: Mon, 28 Apr 2008 05:23:50 +0200 (CEST) Subject: [Python-checkins] r62555 - in python/trunk: Lib/test/test_traceback.py Modules/_testcapimodule.c Python/traceback.c Message-ID: <20080428032350.DC61F1E400D@bag.python.org> Author: brett.cannon Date: Mon Apr 28 05:23:50 2008 New Revision: 62555 Log: Fix a bug introduced by the warnings rewrite where tracebacks were being improperly indented. Closes issue #2699. Modified: python/trunk/Lib/test/test_traceback.py python/trunk/Modules/_testcapimodule.c python/trunk/Python/traceback.c Modified: python/trunk/Lib/test/test_traceback.py ============================================================================== --- python/trunk/Lib/test/test_traceback.py (original) +++ python/trunk/Lib/test/test_traceback.py Mon Apr 28 05:23:50 2008 @@ -1,10 +1,24 @@ """Test cases for traceback module""" +from _testcapi import test_traceback_print +from StringIO import StringIO +import sys import unittest -from test.test_support import run_unittest, is_jython +from test.test_support import run_unittest, is_jython, Error import traceback +try: + raise KeyError +except KeyError: + type_, value, tb = sys.exc_info() + file_ = StringIO() + test_traceback_print(tb, file_) + example_traceback = file_.getvalue() +else: + raise Error("unable to create test traceback string") + + class TracebackCases(unittest.TestCase): # For now, a very minimal set of tests. I want to be sure that # formatting of SyntaxErrors works based on changes for 2.1. @@ -154,8 +168,20 @@ self.assertEqual(err, ['None\n']) +class TracebackFormatTests(unittest.TestCase): + + def test_traceback_indentation(self): + # Make sure that the traceback is properly indented. + tb_lines = example_traceback.splitlines() + self.assertEquals(len(tb_lines), 3) + banner, location, source_line = tb_lines + self.assert_(banner.startswith('Traceback')) + self.assert_(location.startswith(' File')) + self.assert_(source_line.startswith('raise')) + + def test_main(): - run_unittest(TracebackCases) + run_unittest(TracebackCases, TracebackFormatTests) if __name__ == "__main__": Modified: python/trunk/Modules/_testcapimodule.c ============================================================================== --- python/trunk/Modules/_testcapimodule.c (original) +++ python/trunk/Modules/_testcapimodule.c Mon Apr 28 05:23:50 2008 @@ -734,6 +734,24 @@ Py_RETURN_NONE; } +/* To test the format of tracebacks as printed out. */ +static PyObject * +test_traceback_print(PyObject *self, PyObject *args) +{ + PyObject *file; + PyObject *traceback; + int result; + + if (!PyArg_ParseTuple(args, "OO:test_traceback_print", + &traceback, &file)) + return NULL; + + result = PyTraceBack_Print(traceback, file); + if (result < 0) + return NULL; + Py_RETURN_NONE; +} + static PyMethodDef TestMethods[] = { {"raise_exception", raise_exception, METH_VARARGS}, {"test_config", (PyCFunction)test_config, METH_NOARGS}, @@ -774,6 +792,7 @@ #ifdef WITH_THREAD {"_test_thread_state", test_thread_state, METH_VARARGS}, #endif + {"test_traceback_print", test_traceback_print, METH_VARARGS}, {NULL, NULL} /* sentinel */ }; Modified: python/trunk/Python/traceback.c ============================================================================== --- python/trunk/Python/traceback.c (original) +++ python/trunk/Python/traceback.c Mon Apr 28 05:23:50 2008 @@ -222,8 +222,6 @@ err = PyFile_WriteString(linebuf, f); if (err != 0) return err; - - err = PyFile_WriteString(" ", f); return Py_DisplaySourceLine(f, filename, lineno); } From python-checkins at python.org Mon Apr 28 05:25:38 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 05:25:38 +0200 (CEST) Subject: [Python-checkins] r62556 - python/trunk/Doc/library/robotparser.rst Message-ID: <20080428032538.1CD351E400D@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 05:25:37 2008 New Revision: 62556 Log: Wrap some long lines. Modified: python/trunk/Doc/library/robotparser.rst Modified: python/trunk/Doc/library/robotparser.rst ============================================================================== --- python/trunk/Doc/library/robotparser.rst (original) +++ python/trunk/Doc/library/robotparser.rst Mon Apr 28 05:25:37 2008 @@ -3,7 +3,8 @@ ============================================= .. module:: robotparser - :synopsis: Loads a robots.txt file and answers questions about fetchability of other URLs. + :synopsis: Loads a robots.txt file and answers questions about + fetchability of other URLs. .. sectionauthor:: Skip Montanaro @@ -21,8 +22,8 @@ .. class:: RobotFileParser() - This class provides a set of methods to read, parse and answer questions about a - single :file:`robots.txt` file. + This class provides a set of methods to read, parse and answer questions + about a single :file:`robots.txt` file. .. method:: set_url(url) @@ -42,20 +43,22 @@ .. method:: can_fetch(useragent, url) - Returns ``True`` if the *useragent* is allowed to fetch the *url* according to - the rules contained in the parsed :file:`robots.txt` file. + Returns ``True`` if the *useragent* is allowed to fetch the *url* + according to the rules contained in the parsed :file:`robots.txt` + file. .. method:: mtime() - Returns the time the ``robots.txt`` file was last fetched. This is useful for - long-running web spiders that need to check for new ``robots.txt`` files - periodically. + Returns the time the ``robots.txt`` file was last fetched. This is + useful for long-running web spiders that need to check for new + ``robots.txt`` files periodically. .. method:: modified() - Sets the time the ``robots.txt`` file was last fetched to the current time. + Sets the time the ``robots.txt`` file was last fetched to the current + time. The following example demonstrates basic use of the RobotFileParser class. :: From buildbot at python.org Mon Apr 28 05:26:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:26:27 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080428032627.A67781E400D@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/104 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_collections ====================================================================== ERROR: test_odd_sizes (test.test_collections.TestNamedTuple) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/trunk.heller-x86-osx5/build/Lib/test/test_collections.py", line 114, in test_odd_sizes Big = namedtuple('Big', names) File "/Users/buildbot/buildarea/trunk.heller-x86-osx5/build/Lib/collections.py", line 96, in namedtuple raise SyntaxError(e.message + ':\n' + template) SyntaxError: : make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 28 05:27:53 2008 From: python-checkins at python.org (skip.montanaro) Date: Mon, 28 Apr 2008 05:27:53 +0200 (CEST) Subject: [Python-checkins] r62557 - python/trunk/Lib/robotparser.py Message-ID: <20080428032753.7B1E21E400D@bag.python.org> Author: skip.montanaro Date: Mon Apr 28 05:27:53 2008 New Revision: 62557 Log: Get rid of _test(), _main(), _debug() and _check(). Tests are no longer needed (better set available in Lib/test/test_robotparser.py). Clean up a few PEP 8 nits (compound statements on a single line, whitespace around operators). Modified: python/trunk/Lib/robotparser.py Modified: python/trunk/Lib/robotparser.py ============================================================================== --- python/trunk/Lib/robotparser.py (original) +++ python/trunk/Lib/robotparser.py Mon Apr 28 05:27:53 2008 @@ -9,15 +9,11 @@ The robots.txt Exclusion Protocol is implemented as specified in http://info.webcrawler.com/mak/projects/robots/norobots-rfc.html """ -import urlparse,urllib +import urlparse +import urllib __all__ = ["RobotFileParser"] -debug = 0 - -def _debug(msg): - if debug: print msg - class RobotFileParser: """ This class provides a set of methods to read, parse and answer @@ -67,12 +63,9 @@ self.errcode = opener.errcode if self.errcode in (401, 403): self.disallow_all = True - _debug("disallow all") elif self.errcode >= 400: self.allow_all = True - _debug("allow all") elif self.errcode == 200 and lines: - _debug("parse lines") self.parse(lines) def _add_entry(self, entry): @@ -93,19 +86,16 @@ for line in lines: linenumber = linenumber + 1 if not line: - if state==1: - _debug("line %d: warning: you should insert" - " allow: or disallow: directives below any" - " user-agent: line" % linenumber) + if state == 1: entry = Entry() state = 0 - elif state==2: + elif state == 2: self._add_entry(entry) entry = Entry() state = 0 # remove optional comment and strip line i = line.find('#') - if i>=0: + if i >= 0: line = line[:i] line = line.strip() if not line: @@ -115,41 +105,24 @@ line[0] = line[0].strip().lower() line[1] = urllib.unquote(line[1].strip()) if line[0] == "user-agent": - if state==2: - _debug("line %d: warning: you should insert a blank" - " line before any user-agent" - " directive" % linenumber) + if state == 2: self._add_entry(entry) entry = Entry() entry.useragents.append(line[1]) state = 1 elif line[0] == "disallow": - if state==0: - _debug("line %d: error: you must insert a user-agent:" - " directive before this line" % linenumber) - else: + if state != 0: entry.rulelines.append(RuleLine(line[1], False)) state = 2 elif line[0] == "allow": - if state==0: - _debug("line %d: error: you must insert a user-agent:" - " directive before this line" % linenumber) - else: + if state != 0: entry.rulelines.append(RuleLine(line[1], True)) - else: - _debug("line %d: warning: unknown key %s" % (linenumber, - line[0])) - else: - _debug("line %d: error: malformed line %s"%(linenumber, line)) - if state==2: + if state == 2: self.entries.append(entry) - _debug("Parsed rules:\n%s" % str(self)) def can_fetch(self, useragent, url): """using the parsed robots.txt decide if useragent can fetch url""" - _debug("Checking robots.txt allowance for:\n user agent: %s\n url: %s" % - (useragent, url)) if self.disallow_all: return False if self.allow_all: @@ -182,10 +155,10 @@ self.allowance = allowance def applies_to(self, filename): - return self.path=="*" or filename.startswith(self.path) + return self.path == "*" or filename.startswith(self.path) def __str__(self): - return (self.allowance and "Allow" or "Disallow")+": "+self.path + return (self.allowance and "Allow" or "Disallow") + ": " + self.path class Entry: @@ -207,7 +180,7 @@ # split the name token and make it lower case useragent = useragent.split("/")[0].lower() for agent in self.useragents: - if agent=='*': + if agent == '*': # we have the catch-all agent return True agent = agent.lower() @@ -220,7 +193,6 @@ - our agent applies to this entry - filename is URL decoded""" for line in self.rulelines: - _debug((filename, str(line), line.allowance)) if line.applies_to(filename): return line.allowance return True @@ -239,56 +211,3 @@ self.errcode = errcode return urllib.FancyURLopener.http_error_default(self, url, fp, errcode, errmsg, headers) - -def _check(a,b): - if not b: - ac = "access denied" - else: - ac = "access allowed" - if a!=b: - print "failed" - else: - print "ok (%s)" % ac - print - -def _test(): - global debug - rp = RobotFileParser() - debug = 1 - - # robots.txt that exists, gotten to by redirection - rp.set_url('http://www.musi-cal.com/robots.txt') - rp.read() - - # test for re.escape - _check(rp.can_fetch('*', 'http://www.musi-cal.com/'), 1) - # this should match the first rule, which is a disallow - _check(rp.can_fetch('', 'http://www.musi-cal.com/'), 0) - # various cherry pickers - _check(rp.can_fetch('CherryPickerSE', - 'http://www.musi-cal.com/cgi-bin/event-search' - '?city=San+Francisco'), 0) - _check(rp.can_fetch('CherryPickerSE/1.0', - 'http://www.musi-cal.com/cgi-bin/event-search' - '?city=San+Francisco'), 0) - _check(rp.can_fetch('CherryPickerSE/1.5', - 'http://www.musi-cal.com/cgi-bin/event-search' - '?city=San+Francisco'), 0) - # case sensitivity - _check(rp.can_fetch('ExtractorPro', 'http://www.musi-cal.com/blubba'), 0) - _check(rp.can_fetch('extractorpro', 'http://www.musi-cal.com/blubba'), 0) - # substring test - _check(rp.can_fetch('toolpak/1.1', 'http://www.musi-cal.com/blubba'), 0) - # tests for catch-all * agent - _check(rp.can_fetch('spam', 'http://www.musi-cal.com/search'), 0) - _check(rp.can_fetch('spam', 'http://www.musi-cal.com/Musician/me'), 1) - _check(rp.can_fetch('spam', 'http://www.musi-cal.com/'), 1) - _check(rp.can_fetch('spam', 'http://www.musi-cal.com/'), 1) - - # robots.txt that does not exist - rp.set_url('http://www.lycos.com/robots.txt') - rp.read() - _check(rp.can_fetch('Mozilla', 'http://www.lycos.com/search'), 1) - -if __name__ == '__main__': - _test() From buildbot at python.org Mon Apr 28 05:44:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:44:12 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080428034412.9A8BD1E400D@bag.python.org> The Buildbot has detected a new failure of g4 osx.4 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/g4%20osx.4%20trunk/builds/3248 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 05:53:48 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:53:48 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo trunk Message-ID: <20080428035348.CE8B01E400D@bag.python.org> The Buildbot has detected a new failure of x86 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20gentoo%20trunk/builds/3474 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-x86 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/home/buildslave/python-trunk/trunk.norwitz-x86/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 05:55:07 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:55:07 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080428035507.A16EC1E400D@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%20trunk/builds/404 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "../lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "S:\buildbots\python\trunk.nelson-windows\build\lib\test\test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 05:56:02 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:56:02 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo trunk Message-ID: <20080428035602.6CCCF1E400D@bag.python.org> The Buildbot has detected a new failure of amd64 gentoo trunk. Full details are available at: http://www.python.org/dev/buildbot/all/amd64%20gentoo%20trunk/builds/667 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-amd64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/home/buildbot/slave/py-build/trunk.norwitz-amd64/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 05:56:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 03:56:15 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 trunk Message-ID: <20080428035615.878201E400D@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%20trunk/builds/356 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "../lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "S:\buildbots\python.x64\trunk.nelson-win64\build\lib\test\test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 06:11:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 04:11:38 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080428041138.3088F1E400D@bag.python.org> The Buildbot has detected a new failure of ppc Debian unstable trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ppc%20Debian%20unstable%20trunk/builds/1257 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Apr 28 06:22:13 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 04:22:13 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080428042213.783DB1E400D@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%20trunk/builds/771 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 28 06:50:06 2008 From: python-checkins at python.org (brett.cannon) Date: Mon, 28 Apr 2008 06:50:06 +0200 (CEST) Subject: [Python-checkins] r62558 - in python/trunk: Lib/test/test_traceback.py Modules/_testcapimodule.c Message-ID: <20080428045006.839AC1E400D@bag.python.org> Author: brett.cannon Date: Mon Apr 28 06:50:06 2008 New Revision: 62558 Log: Rename the test_traceback_print() function to traceback_print() to prevent test_capi from automatically calling the function. Modified: python/trunk/Lib/test/test_traceback.py python/trunk/Modules/_testcapimodule.c Modified: python/trunk/Lib/test/test_traceback.py ============================================================================== --- python/trunk/Lib/test/test_traceback.py (original) +++ python/trunk/Lib/test/test_traceback.py Mon Apr 28 06:50:06 2008 @@ -1,6 +1,6 @@ """Test cases for traceback module""" -from _testcapi import test_traceback_print +from _testcapi import traceback_print from StringIO import StringIO import sys import unittest @@ -13,7 +13,7 @@ except KeyError: type_, value, tb = sys.exc_info() file_ = StringIO() - test_traceback_print(tb, file_) + traceback_print(tb, file_) example_traceback = file_.getvalue() else: raise Error("unable to create test traceback string") Modified: python/trunk/Modules/_testcapimodule.c ============================================================================== --- python/trunk/Modules/_testcapimodule.c (original) +++ python/trunk/Modules/_testcapimodule.c Mon Apr 28 06:50:06 2008 @@ -736,13 +736,13 @@ /* To test the format of tracebacks as printed out. */ static PyObject * -test_traceback_print(PyObject *self, PyObject *args) +traceback_print(PyObject *self, PyObject *args) { PyObject *file; PyObject *traceback; int result; - if (!PyArg_ParseTuple(args, "OO:test_traceback_print", + if (!PyArg_ParseTuple(args, "OO:traceback_print", &traceback, &file)) return NULL; @@ -792,7 +792,7 @@ #ifdef WITH_THREAD {"_test_thread_state", test_thread_state, METH_VARARGS}, #endif - {"test_traceback_print", test_traceback_print, METH_VARARGS}, + {"traceback_print", traceback_print, METH_VARARGS}, {NULL, NULL} /* sentinel */ }; From buildbot at python.org Mon Apr 28 07:12:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 05:12:38 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080428051238.EAD621E4018@bag.python.org> The Buildbot has detected a new failure of S-390 Debian trunk. Full details are available at: http://www.python.org/dev/buildbot/all/S-390%20Debian%20trunk/builds/411 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-s390 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_capi Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/home/pybot/buildarea/trunk.klose-debian-s390/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Apr 28 07:16:30 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 28 Apr 2008 07:16:30 +0200 (CEST) Subject: [Python-checkins] r62559 - python/trunk/Doc/library/robotparser.rst Message-ID: <20080428051630.F01B31E400D@bag.python.org> Author: georg.brandl Date: Mon Apr 28 07:16:30 2008 New Revision: 62559 Log: Fix markup. Modified: python/trunk/Doc/library/robotparser.rst Modified: python/trunk/Doc/library/robotparser.rst ============================================================================== --- python/trunk/Doc/library/robotparser.rst (original) +++ python/trunk/Doc/library/robotparser.rst Mon Apr 28 07:16:30 2008 @@ -4,7 +4,7 @@ .. module:: robotparser :synopsis: Loads a robots.txt file and answers questions about - fetchability of other URLs. + fetchability of other URLs. .. sectionauthor:: Skip Montanaro From buildbot at python.org Mon Apr 28 07:53:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 28 Apr 2008 05:53:30 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080428055330.481941E401F@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2910 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: brett.cannon,skip.montanaro BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_asynchat test_capi test_smtplib Traceback (most recent call last): File "./Lib/test/regrtest.py", line 554, in runtest_inner indirect_test() File "/net/taipan/scratch1/nnorwitz/python/trunk.norwitz-tru64/build/Lib/test/test_capi.py", line 16, in test_main test() TypeError: test_traceback_print() takes exactly 2 arguments (0 given) sincerely, -The Buildbot From nnorwitz at gmail.com Mon Apr 28 10:08:02 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 28 Apr 2008 04:08:02 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080428080802.GA21608@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592617 refs] From python-checkins at python.org Mon Apr 28 14:41:03 2008 From: python-checkins at python.org (armin.ronacher) Date: Mon, 28 Apr 2008 14:41:03 +0200 (CEST) Subject: [Python-checkins] r62560 - doctools/trunk/sphinx/highlighting.py Message-ID: <20080428124103.3F9B81E400D@bag.python.org> Author: armin.ronacher Date: Mon Apr 28 14:41:02 2008 New Revision: 62560 Log: pygments_style can be a style class now Modified: doctools/trunk/sphinx/highlighting.py Modified: doctools/trunk/sphinx/highlighting.py ============================================================================== --- doctools/trunk/sphinx/highlighting.py (original) +++ doctools/trunk/sphinx/highlighting.py Mon Apr 28 14:41:02 2008 @@ -87,8 +87,10 @@ return if stylename == 'sphinx': style = SphinxStyle - else: + elif isinstance(stylename, basestring): style = get_style_by_name(stylename) + else: + style = stylename self.hfmter = {False: HtmlFormatter(style=style), True: HtmlFormatter(style=style, linenos=True)} self.lfmter = {False: LatexFormatter(style=style), From python-checkins at python.org Mon Apr 28 15:04:58 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 28 Apr 2008 15:04:58 +0200 (CEST) Subject: [Python-checkins] r62561 - doctools/trunk/sphinx/texinputs/sphinx.sty Message-ID: <20080428130458.230C31E400D@bag.python.org> Author: georg.brandl Date: Mon Apr 28 15:04:57 2008 New Revision: 62561 Log: Fix two inconsistencies w.r.t. colors in sphinx.sty. Modified: doctools/trunk/sphinx/texinputs/sphinx.sty Modified: doctools/trunk/sphinx/texinputs/sphinx.sty ============================================================================== --- doctools/trunk/sphinx/texinputs/sphinx.sty (original) +++ doctools/trunk/sphinx/texinputs/sphinx.sty Mon Apr 28 15:04:57 2008 @@ -15,6 +15,8 @@ \RequirePackage{titlesec} \RequirePackage{color} +% Define these colors to your liking in the preamble. +\definecolor{TitleColor}{rgb}{0.126,0.263,0.361} \definecolor{InnerLinkColor}{rgb}{0.208,0.374,0.486} \definecolor{OuterLinkColor}{rgb}{0.216,0.439,0.388} % Define these colors to something not white if you want to have colored @@ -65,8 +67,7 @@ \input{pdfcolor} \let\py at LinkColor=\NavyBlue \let\py at NormalColor=\Black - \definecolor{MyDarkBlue}{rgb}{0.126,0.263,0.361} - \def\py at TitleColor{\color{MyDarkBlue}} + \def\py at TitleColor{\color{TitleColor}} \pdfcompresslevel=9 \pdfpagewidth=\paperwidth % page width of PDF output \pdfpageheight=\paperheight % page height of PDF output @@ -103,7 +104,7 @@ % this style file. \newcommand{\py at linkToName}[2]{% \py at pdfstartlink attr{/Border [0 0 0]} goto name{#1}% - \py at LinkColor#2\py at NormalColor% + \color{InnerLinkColor}#2\py at NormalColor% \pdfendlink% } % Compute the padded page number separately since we end up with a pair of From python-checkins at python.org Mon Apr 28 15:22:15 2008 From: python-checkins at python.org (armin.ronacher) Date: Mon, 28 Apr 2008 15:22:15 +0200 (CEST) Subject: [Python-checkins] r62562 - in doctools/trunk: CHANGES sphinx/highlighting.py Message-ID: <20080428132215.287211E400D@bag.python.org> Author: armin.ronacher Date: Mon Apr 28 15:22:14 2008 New Revision: 62562 Log: pygments_style can be an import path now Modified: doctools/trunk/CHANGES doctools/trunk/sphinx/highlighting.py Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Mon Apr 28 15:22:14 2008 @@ -1,3 +1,13 @@ +Release 0.3 (TBA) +================= + +New features added +------------------ + +* If the `pygments_style` contains a dot it's treated as import path and + used as style class. + + Release 0.2 (Apr 27, 2008) ========================== Modified: doctools/trunk/sphinx/highlighting.py ============================================================================== --- doctools/trunk/sphinx/highlighting.py (original) +++ doctools/trunk/sphinx/highlighting.py Mon Apr 28 15:22:14 2008 @@ -87,10 +87,11 @@ return if stylename == 'sphinx': style = SphinxStyle - elif isinstance(stylename, basestring): - style = get_style_by_name(stylename) + elif '.' in stylename: + module, stylename = stylename.rsplit('.', 1) + style = getattr(__import__(module, None, None, ['']), stylename) else: - style = stylename + style = get_style_by_name(stylename) self.hfmter = {False: HtmlFormatter(style=style), True: HtmlFormatter(style=style, linenos=True)} self.lfmter = {False: LatexFormatter(style=style), From python-checkins at python.org Mon Apr 28 15:25:01 2008 From: python-checkins at python.org (armin.ronacher) Date: Mon, 28 Apr 2008 15:25:01 +0200 (CEST) Subject: [Python-checkins] r62563 - doctools/trunk/doc/config.rst Message-ID: <20080428132501.8912F1E4026@bag.python.org> Author: armin.ronacher Date: Mon Apr 28 15:25:01 2008 New Revision: 62563 Log: documented change Modified: doctools/trunk/doc/config.rst Modified: doctools/trunk/doc/config.rst ============================================================================== --- doctools/trunk/doc/config.rst (original) +++ doctools/trunk/doc/config.rst Mon Apr 28 15:25:01 2008 @@ -130,7 +130,8 @@ The style name to use for Pygments highlighting of source code. Default is ``'sphinx'``, which is a builtin style designed to match Sphinx' default - style. + style. If it's a fully-qualifier name of a custom Pygments style class this + is then used as custom style. .. confval:: template_bridge From python-checkins at python.org Mon Apr 28 15:45:58 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 28 Apr 2008 15:45:58 +0200 (CEST) Subject: [Python-checkins] r62564 - doctools/trunk/doc/config.rst Message-ID: <20080428134558.8E1721E4018@bag.python.org> Author: georg.brandl Date: Mon Apr 28 15:45:58 2008 New Revision: 62564 Log: Fix typo. Modified: doctools/trunk/doc/config.rst Modified: doctools/trunk/doc/config.rst ============================================================================== --- doctools/trunk/doc/config.rst (original) +++ doctools/trunk/doc/config.rst Mon Apr 28 15:45:58 2008 @@ -130,7 +130,7 @@ The style name to use for Pygments highlighting of source code. Default is ``'sphinx'``, which is a builtin style designed to match Sphinx' default - style. If it's a fully-qualifier name of a custom Pygments style class this + style. If it's a fully-qualified name of a custom Pygments style class this is then used as custom style. .. confval:: template_bridge From nnorwitz at gmail.com Mon Apr 28 22:08:16 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 28 Apr 2008 16:08:16 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080428200816.GA13863@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592617 refs] From nnorwitz at gmail.com Mon Apr 28 22:14:26 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Mon, 28 Apr 2008 16:14:26 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080428201426.GA15045@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592109 refs] From python-checkins at python.org Mon Apr 28 23:07:07 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Mon, 28 Apr 2008 23:07:07 +0200 (CEST) Subject: [Python-checkins] r62569 - python/trunk/Lib/test/test_sundry.py Message-ID: <20080428210707.3B66B1E400D@bag.python.org> Author: amaury.forgeotdarc Date: Mon Apr 28 23:07:06 2008 New Revision: 62569 Log: test_sundry performs minimal tests (a simple import...) on modules that are not tested otherwise. Some of them now have tests and can be removed. Only 70 to go... Modified: python/trunk/Lib/test/test_sundry.py Modified: python/trunk/Lib/test/test_sundry.py ============================================================================== --- python/trunk/Lib/test/test_sundry.py (original) +++ python/trunk/Lib/test/test_sundry.py Mon Apr 28 23:07:06 2008 @@ -9,41 +9,24 @@ class TestUntestedModules(unittest.TestCase): def test_at_least_import_untested_modules(self): with test_support.catch_warning(): - import BaseHTTPServer - import DocXMLRPCServer import CGIHTTPServer - import SimpleHTTPServer - import SimpleXMLRPCServer import aifc import audiodev import bdb import cgitb - import cmd import code import compileall - import distutils.archive_util import distutils.bcppcompiler import distutils.ccompiler - import distutils.cmd - import distutils.core import distutils.cygwinccompiler - import distutils.dep_util - import distutils.dir_util import distutils.emxccompiler - import distutils.errors - import distutils.extension - import distutils.file_util import distutils.filelist - import distutils.log if sys.platform.startswith('win'): import distutils.msvccompiler import distutils.mwerkscompiler - import distutils.sysconfig import distutils.text_file import distutils.unixccompiler - import distutils.util - import distutils.version import distutils.command.bdist_dumb if sys.platform.startswith('win'): @@ -54,23 +37,18 @@ import distutils.command.build_clib import distutils.command.build_ext import distutils.command.build - import distutils.command.build_py - import distutils.command.build_scripts import distutils.command.clean import distutils.command.config import distutils.command.install_data import distutils.command.install_egg_info import distutils.command.install_headers import distutils.command.install_lib - import distutils.command.install - import distutils.command.install_scripts import distutils.command.register import distutils.command.sdist import distutils.command.upload import encodings import formatter - import ftplib import getpass import htmlentitydefs import ihooks @@ -81,7 +59,6 @@ import macurl2path import mailcap import mimify - import mutex import nntplib import nturl2path import opcode @@ -93,7 +70,6 @@ import rexec import rlcompleter import sched - import smtplib import sndhdr import statvfs import stringold @@ -101,7 +77,6 @@ import sunaudio import symbol import tabnanny - import telnetlib import timeit import toaiff import token From python-checkins at python.org Tue Apr 29 02:27:49 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 02:27:49 +0200 (CEST) Subject: [Python-checkins] r62570 - peps/trunk/pep-3108.txt Message-ID: <20080429002749.754D71E4004@bag.python.org> Author: brett.cannon Date: Tue Apr 29 02:27:49 2008 New Revision: 62570 Log: More updates based on talking with Guido. Big ones are renaming the proposed tk package to tkinter, and the proposed url package to urllib. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 02:27:49 2008 @@ -55,8 +55,6 @@ #. Remove the module. #. Remove the tests. #. Edit ``Modules/Setup.dist`` and ``setup.py`` if needed. -#. Change all imports of the removed module in the standard - library to the new name (if applicable). #. Remove the docs (if applicable). #. Run the regression test suite (using ``-uall``); watch out for tests that are skipped because an import failed for the removed @@ -66,18 +64,6 @@ all the changes to 2.6, merge the changes into the 3k branch, then perform the procedure above. This will avoid some merge conflicts. -In certain cases, a removed module might be used by enough people -that it is worth making the code available on PyPI_. In those cases -the code will be ported to 3.0, moved outside of Python 3.0's trunk, -and then put up on PyPI. In such cases the code is not expected to be -maintained beyond the discretion of any core developer. - -If a module that is removed is used by a module that is staying, -then the module to remove will have its documentation removed and be -renamed to signify it has no public API. - -.. _PyPI: http://pypi.python.org/ - Previously deprecated --------------------- @@ -130,7 +116,11 @@ The module mentioned below are documented. All undocumented modules for the specified platforms will also be removed. -* IRIX (which is no longer produced [#irix-retirement]_) +IRIX +///// +The IRIX operating system is no longer produced [#irix-retirement]_. +Removing all modules from the plat-irix directory has been deemed +reasonable because of this fact. + AL/al [done: 3.0] @@ -180,10 +170,122 @@ - Wrapper for JPEG (de)compressor. - Code not uniquely edited in nine years. - Third-party libraries provide better support - (Python Imaging Library [#pil]_). + (Python Imaging Library [#pil]_). + + +Mac-specific modules +//////////////////// + +The Mac-specific modules are mostly unmaintained (e.g., the bgen +tool used to auto-generate many of the modules has never been +updated to support UCS-4). It is also not Python's place to maintain +such a large amount of OS-specific modules. Thus all modules under +plat-mac are to be removed. + +A stub module for proxy access will be provided for use by urllib. + +* aepack + + - OSA support is better through third-party modules. + + * Appscript [#appscript]_. + + - Hard-coded endianness which breaks on Intel Macs. + - Might need to rename if Carbon package dependent. + +* aetools + + - See aepack. + +* aetypes + + - See aepack. + +* applesingle + + - Undocumented. + - AppleSingle is a binary file format for A/UX. + - A/UX no longer distributed. + +* autoGIL + + - Very bad model for using Python with the CFRunLoop. + +* Carbon + + - Carbon development has stopped. + - Does not support 64-bit systems completely. + - Dependent on bgen which has never been updated to support UCS-4 + Unicode builds of Python. + +* ColorPicker + + - Better to use Cocoa for GUIs. + +* EasyDialogs + + - Better to use Cocoa for GUIs. + +* findertools + + - No longer useful. + +* FrameWork + + - Poorly documented. + - Not updated to support Carbon Events. +* gensuitemodule + + - See aepack. -* Solaris +* ic + +* icopen + + - Not needed on OS X. + - Meant to replace 'open' which is usually a bad thing to do. + +* macerrors + + - Undocumented. + +* MacOS + + - Would also mean the removal of binhex. + +* macostools + +* macresource + + - Undocumented. + +* MiniAEFrame + + - See aepack. + +* Nav + + - Undocumented. + +* PixMapWrapper + + - Undocumented. + +* videoreader + + - No longer used. + +* W + + - No longer distributed with Python. + + +.. _PyObjC: http://pyobjc.sourceforge.net/ + + +Solaris +/////// + SUNAUDIODEV/sunaudiodev [done: 3.0] @@ -319,11 +421,6 @@ - rgbimg was removed in Python 2.6. - imgfile slated for removal in this PEP. [done: 3.0] -* linecache - - + Negligible use. - + Easily replicated. - * linuxaudiodev [done: 3.0] + Replaced by ossaudiodev. @@ -370,7 +467,8 @@ * urllib + Superceded by urllib2. - + Functionality unique to urllib will be kept in the `url package`_. + + Functionality unique to urllib will be kept in the + `urllib package`_. * UserDict [done: 3.0] @@ -382,114 +480,6 @@ + Not useful since types can be a superclass. -Mac-specific modules -//////////////////// - -The Mac-specific modules are mostly unmaintained (e.g., the bgen -tool used to auto-generate many of the modules has never been -updated to support UCS-4). It is also not Python's place to maintain -such a large amount of OS-specific modules. - -* aepack - - - OSA support is better through third-party modules. - - * Appscript [#appscript]_. - - - Hard-coded endianness which breaks on Intel Macs. - - Might need to rename if Carbon package dependent. - -* aetools - - - See aepack. - -* aetypes - - - See aepack. - -* applesingle - - - Undocumented. - - AppleSingle is a binary file format for A/UX. - - A/UX no longer distributed. - -* autoGIL - - - Very bad model for using Python with the CFRunLoop. - -* Carbon - - - Carbon development has stopped. - - Does not support 64-bit systems completely. - - Dependent on bgen which has never been updated to support UCS-4 - Unicode builds of Python. - -* ColorPicker - - - Better to use Cocoa for GUIs. - -* EasyDialogs - - - Better to use Cocoa for GUIs. - -* findertools - - - No longer useful. - -* FrameWork - - - Poorly documented. - - Not updated to support Carbon Events. - -* gensuitemodule - - - See aepack. - -* ic - -* icopen - - - Not needed on OS X. - - Meant to replace 'open' which is usually a bad thing to do. - -* macerrors - - - Undocumented. - -* MacOS - - - Would also mean the removal of binhex. - -* macostools - -* macresource - - - Undocumented. - -* MiniAEFrame - - - See aepack. - -* Nav - - - Undocumented. - -* PixMapWrapper - - - Undocumented. - -* videoreader - - - No longer used. - -* W - - - No longer distributed with Python. - - -.. _PyObjC: http://pyobjc.sourceforge.net/ - - Modules to Rename ================= @@ -499,9 +489,6 @@ led to some naming inconsistencies and namespace bloat that should be addressed. -Any module that has been suggested for removal and does not meet the -required naming scheme is *not* listed below. - PEP 8 violations ---------------- @@ -654,53 +641,58 @@ safely as they have no naming conflicts. -tk package -////////// +tkinter package +/////////////// ================== =============================== Current Name Replacement Name ================== =============================== -Canvas tk.canvas -Dialog tk.dialog -FileDialog tk.filedialog [4]_ -FixTk tk._fix -ScrolledText tk.scrolledtext -SimpleDialog tk.simpledialog [5]_ -Tix tk.tix -Tkconstants tk.constants -Tkdnd tk.dnd -Tkinter tk.inter -tkColorChooser tk.colorchooser -tkCommonDialog tk.commondialog -tkFileDialog tk.filedialog [4]_ -tkFont tk.font -tkMessageBox tk.messagebox -tkSimpleDialog tk.simpledialog [5]_ -turtle tk.turtle +Canvas tkinter.canvas +Dialog tkinter.dialog +FileDialog tkinter.filedialog [4]_ +FixTk tkinter._fix +ScrolledText tkinter.scrolledtext +SimpleDialog tkinter.simpledialog [5]_ +Tix tkinter.tix +Tkconstants tkinter.constants +Tkdnd tkinter.dnd +Tkinter tkinter.__init__ +tkColorChooser tkinter.colorchooser +tkCommonDialog tkinter.commondialog +tkFileDialog tkinter.filedialog [4]_ +tkFont tkinter.font +tkMessageBox tkinter.messagebox +tkSimpleDialog tkinter.simpledialog [5]_ +turtle tkinter.turtle ================== =============================== -.. [4] ``tk.filedialog`` can safely combine ``FileDialog`` and +.. [4] ``tkinter.filedialog`` can safely combine ``FileDialog`` and ``tkFileDialog`` as there are no naming conflicts. -.. [5] ``tk.simpledialog`` can safely combine ``SimpleDialog`` and - ``tkSimpleDialog`` have no naming conflicts. +.. [5] ``tkinter.simpledialog`` can safely combine ``SimpleDialog`` + and ``tkSimpleDialog`` have no naming conflicts. -url package -/////////// +urllib package +////////////// + +Originally this new package was to be named ``url``, but because of +the common use of the name as a variable, it has been deemed better +to keep the name ``urllib`` and instead shift existing modules around +into a new package. ================== =============================== Current Name Replacement Name ================== =============================== -urllib2 url.request -urlparse url.parse -urllib url.parse, url.request [6]_ +urllib2 urllib.request +urlparse urllib.parse +urllib urllib.parse, urllib.request [6]_ ================== =============================== .. [6] The quoting-related functions from ``urllib`` will be added - to ``url.parse``. ``urllib.URLOpener`` and ``FancyUrlOpener`` - will be added to ``url.request`` as long as the documentation - for both modules is updated. + to ``urllib.parse``. ``urllib.URLOpener`` and + ``urllib.FancyUrlOpener`` will be added to ``urllib.request`` + as long as the documentation for both modules is updated. xmlrpc package @@ -787,6 +779,10 @@ * fileinput + Useful when having to work with stdin. + +* linecache + + + Used internally in several places. * nis @@ -796,6 +792,11 @@ * getopt + Simpler than optparse. + +* repr + + + Useful as a basis for overriding. + + Used internally. * telnetlib From python-checkins at python.org Tue Apr 29 02:37:53 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 02:37:53 +0200 (CEST) Subject: [Python-checkins] r62571 - peps/trunk/pep-3108.txt Message-ID: <20080429003753.73B9C1E4004@bag.python.org> Author: brett.cannon Date: Tue Apr 29 02:37:53 2008 New Revision: 62571 Log: Copy over PEP 4 reasoning for why modules should be removed. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 02:37:53 2008 @@ -69,7 +69,8 @@ --------------------- PEP 4 lists all modules that have been deprecated in the stdlib -(including motivation as to why) [#pep-0004]_. All modules listed +[#pep-0004]_. The specified motivations mirror those listed in +PEP 4. All modules listed in the PEP at the time of the first alpha release of Python 3.0 will be removed. @@ -79,30 +80,61 @@ * buildtools + + Documented as deprecated since Python 2.3 without an explicit + reason. + * cfmfile + + Documented as deprecated since Python 2.4 without an explicit + reason. + * cl + + Documented as obsolete since Python 2.0 or earlier. + + Interface to SGI hardware. + * md5 + + Supplanted by the ``hashlib`` module. + * mimetools + + Documented as obsolete without an explicit reason. + * MimeWriter + + Supplaned by the ``email`` package. + * mimify + + Supplanted by the ``email`` package. + * multifile + + Supplanted by the ``email`` package. + * posixfile + + Locking is better done by ``fcntl.lockf()``. + * rfc822 + + Supplanted by the ``email`` package. + * sha + + Supplanted by the ``hashlib`` package. + * sv + + Documented as obsolete since Python 2.0 or earlier. + + Interface to obsolete SGI Indigo hardware. + * timing + + Documented as obsolete since Python 2.0 or earlier. + + ``time.clock()`` gives better time resolution. + Platform-specific with minimal use ---------------------------------- From python-checkins at python.org Tue Apr 29 02:47:38 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 02:47:38 +0200 (CEST) Subject: [Python-checkins] r62572 - peps/trunk/pep-3108.txt Message-ID: <20080429004738.CA5291E4004@bag.python.org> Author: brett.cannon Date: Tue Apr 29 02:47:38 2008 New Revision: 62572 Log: Flesh out plat-irix[56] removal with all undocumented modules. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 02:47:38 2008 @@ -151,7 +151,7 @@ IRIX ///// The IRIX operating system is no longer produced [#irix-retirement]_. -Removing all modules from the plat-irix directory has been deemed +Removing all modules from the plat-irix[56] directory has been deemed reasonable because of this fact. + AL/al [done: 3.0] @@ -165,8 +165,16 @@ - CD drive control for SGI systems. - SGI no longer sells machines with IRIX on them. - Code has not been uniquely edited in 14 years. + + + cddb [done: 3.0] + + - Undocumented. + + + cdplayer [done: 3.0] - + cl/CL [done: 3.0] + - Undocumented. + + + cl/CL/CL_old [done: 3.0] - Compression library for SGI systems. - SGI no longer sells machines with IRIX on them. @@ -177,6 +185,14 @@ - GL access, which is the predecessor to OpenGL. - Has not been edited in at least eight years. - Third-party libraries provide better support (PyOpenGL [#pyopengl]_). + + + ERRNO [done: 3.0] + + - Undocumented. + + + FILE [done: 3.0] + + - Undocumented. + FL/fl/flp [done: 3.0] @@ -189,6 +205,14 @@ - Wrapper to the IRIS Font Manager library. - Only available on SGI machines which no longer come with IRIX. + + + GET [done: 3.0] + + - Undocumented. + + + GLWS [done: 3.0] + + - Undocumented. + imgfile [done: 3.0] @@ -196,13 +220,45 @@ (``.rgb`` files). - Python Imaging Library provdes read-only support [#pil]_. - Not uniquely edited in 13 years. + + + IN [done: 3.0] + + - Undocumented. + + + IOCTL [done: 3.0] + + - Undocumented. + jpeg [done: 3.0] - Wrapper for JPEG (de)compressor. - Code not uniquely edited in nine years. - Third-party libraries provide better support - (Python Imaging Library [#pil]_). + (Python Imaging Library [#pil]_). + + + panel [done: 3.0] + + - Undocumented. + + + panelparser [done: 3.0] + + - Undocumented. + + + readcd [done: 3.0] + + - Undocumented. + + + SV [done: 3.0] + + - Undocumented. + + + torgb [done: 3.0] + + - Undocumented. + + + WAIT [done: 3.0] + + - Undocumented. Mac-specific modules From python-checkins at python.org Tue Apr 29 02:56:37 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 02:56:37 +0200 (CEST) Subject: [Python-checkins] r62573 - peps/trunk/pep-3108.txt Message-ID: <20080429005637.41EB21E4004@bag.python.org> Author: brett.cannon Date: Tue Apr 29 02:56:36 2008 New Revision: 62573 Log: List all undocumented Mac modules. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 02:56:36 2008 @@ -165,11 +165,11 @@ - CD drive control for SGI systems. - SGI no longer sells machines with IRIX on them. - Code has not been uniquely edited in 14 years. - + + cddb [done: 3.0] - + - Undocumented. - + + cdplayer [done: 3.0] - Undocumented. @@ -185,13 +185,13 @@ - GL access, which is the predecessor to OpenGL. - Has not been edited in at least eight years. - Third-party libraries provide better support (PyOpenGL [#pyopengl]_). - + + ERRNO [done: 3.0] - + - Undocumented. - + + FILE [done: 3.0] - + - Undocumented. + FL/fl/flp [done: 3.0] @@ -205,11 +205,11 @@ - Wrapper to the IRIS Font Manager library. - Only available on SGI machines which no longer come with IRIX. - + + GET [done: 3.0] - + - Undocumented. - + + GLWS [done: 3.0] - Undocumented. @@ -220,11 +220,11 @@ (``.rgb`` files). - Python Imaging Library provdes read-only support [#pil]_. - Not uniquely edited in 13 years. - + + IN [done: 3.0] - Undocumented. - + + IOCTL [done: 3.0] - Undocumented. @@ -235,31 +235,31 @@ - Code not uniquely edited in nine years. - Third-party libraries provide better support (Python Imaging Library [#pil]_). - + + panel [done: 3.0] - Undocumented. - + + panelparser [done: 3.0] - Undocumented. - + + readcd [done: 3.0] - Undocumented. - + + SV [done: 3.0] - - Undocumented. - + - Undocumented. + + torgb [done: 3.0] - Undocumented. - + + WAIT [done: 3.0] - Undocumented. - + Mac-specific modules //////////////////// @@ -272,6 +272,15 @@ A stub module for proxy access will be provided for use by urllib. +* _builtinSuites + + - Undocumented. + - Package under lib-scriptpackages. + +* Audio_mac + + - Undocumented. + * aepack - OSA support is better through third-party modules. @@ -295,10 +304,30 @@ - AppleSingle is a binary file format for A/UX. - A/UX no longer distributed. +* appletrawmain + + - Undocumented. + +* appletrunner + + - Undocumented. + +* argvemulator + + - Undocumented. + * autoGIL - Very bad model for using Python with the CFRunLoop. +* bgenlocations + + - Undocumented. + +* bundlebuilder + + - Undocumented. + * Carbon - Carbon development has stopped. @@ -306,6 +335,11 @@ - Dependent on bgen which has never been updated to support UCS-4 Unicode builds of Python. +* CodeWarrior + + - Undocumented. + - Package under lib-scriptpackages. + * ColorPicker - Better to use Cocoa for GUIs. @@ -314,6 +348,17 @@ - Better to use Cocoa for GUIs. +* Explorer + + - Undocumented. + - Package under lib-scriptpackages. + +* Finder + + - Undocumented. + - Package under lib-scriptpackages. + + * findertools - No longer useful. @@ -356,10 +401,40 @@ - Undocumented. +* Netscape + + - Undocumented. + - Package under lib-scriptpackages. + + +* pimp + + - Undocumented. + * PixMapWrapper - Undocumented. +* StdSuites + + - Undocumented. + - Package under lib-scriptpackages. + +* SystemEvents + + - Undocumented. + - Package under lib-scriptpackages. + +* Terminal + + - Undocumented. + - Package under lib-scriptpackages. + + +* terminalcommand + + - Undocumented. + * videoreader - No longer used. @@ -867,7 +942,7 @@ * fileinput + Useful when having to work with stdin. - + * linecache + Used internally in several places. @@ -880,7 +955,7 @@ * getopt + Simpler than optparse. - + * repr + Useful as a basis for overriding. From python-checkins at python.org Tue Apr 29 04:03:55 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 29 Apr 2008 04:03:55 +0200 (CEST) Subject: [Python-checkins] r62574 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080429020355.3C0AC1E4004@bag.python.org> Author: andrew.kuchling Date: Tue Apr 29 04:03:54 2008 New Revision: 62574 Log: Strip down SSL docs; I'm not managing to get test programs working, so I'll just give a minimal description Modified: python/trunk/Doc/whatsnew/2.6.rst Modified: python/trunk/Doc/whatsnew/2.6.rst ============================================================================== --- python/trunk/Doc/whatsnew/2.6.rst (original) +++ python/trunk/Doc/whatsnew/2.6.rst Tue Apr 29 04:03:54 2008 @@ -2158,17 +2158,12 @@ To use the new module, first you must create a TCP connection in the usual way and then pass it to the :func:`ssl.wrap_socket` function. -XXX describe parameters. - -XXX Can specify if certificate is required, and obtain certificate info -by calling getpeercert method. - -XXX Certain features require the OpenSSL package to be installed, notably - the 'openssl' binary. +It's possible to specify whether a certificate is required, and to +obtain certificate info by calling the :meth:`getpeercert` method. .. seealso:: - SSL module documentation. + The documentation for the :mod:`ssl` module. .. ====================================================================== From skip at pobox.com Tue Apr 29 04:21:26 2008 From: skip at pobox.com (skip at pobox.com) Date: Mon, 28 Apr 2008 21:21:26 -0500 Subject: [Python-checkins] r62570 - peps/trunk/pep-3108.txt In-Reply-To: <20080429002749.754D71E4004@bag.python.org> References: <20080429002749.754D71E4004@bag.python.org> Message-ID: <18454.34342.592936.780447@montanaro-dyndns-org.local> Log: More updates based on talking with Guido. Big ones are renaming the proposed tk package to tkinter, and the proposed url package to urllib. Why? Skip From python-checkins at python.org Tue Apr 29 07:20:37 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 07:20:37 +0200 (CEST) Subject: [Python-checkins] r62575 - peps/trunk/pep-3108.txt Message-ID: <20080429052037.BEA1D1E4004@bag.python.org> Author: brett.cannon Date: Tue Apr 29 07:20:37 2008 New Revision: 62575 Log: Note that the mhlib module should go since the 'mailbox' module handles the same case. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 07:20:37 2008 @@ -590,7 +590,8 @@ * mhlib - + Obsolete mailbox format. + + Should be removed as an individual module; use ``mailbox`` + instead. * popen2 [done: 3.0] From python-checkins at python.org Tue Apr 29 07:24:30 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 07:24:30 +0200 (CEST) Subject: [Python-checkins] r62576 - peps/trunk/pep-3108.txt Message-ID: <20080429052430.091421E4010@bag.python.org> Author: brett.cannon Date: Tue Apr 29 07:24:29 2008 New Revision: 62576 Log: A minor grammatical error and a clarification of transition, thanks to Terry Reedy. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 07:24:29 2008 @@ -595,7 +595,7 @@ * popen2 [done: 3.0] - + subprocess module replaces them [#pep-0324]_. + + subprocess module replaces it [#pep-0324]_. * sched @@ -904,7 +904,9 @@ statement and none of the rest of the code needs to be touched. This will be accomplished by using the ``as`` keyword in import statements to bind in the module namespace to the old name while importing based -on the new name. +on the new name (when the keyword is not already used, otherwise the +re-assigned name should be left alone and only the module that is +imported needs to be changed). Open Issues From python-checkins at python.org Tue Apr 29 08:10:53 2008 From: python-checkins at python.org (martin.v.loewis) Date: Tue, 29 Apr 2008 08:10:53 +0200 (CEST) Subject: [Python-checkins] r62577 - python/trunk/Misc/developers.txt Message-ID: <20080429061053.8EFD91E4010@bag.python.org> Author: martin.v.loewis Date: Tue Apr 29 08:10:53 2008 New Revision: 62577 Log: Add Rodrigo and Heiko. Modified: python/trunk/Misc/developers.txt Modified: python/trunk/Misc/developers.txt ============================================================================== --- python/trunk/Misc/developers.txt (original) +++ python/trunk/Misc/developers.txt Tue Apr 29 08:10:53 2008 @@ -17,6 +17,12 @@ Permissions History ------------------- +- Rodrigo Bernardo Pimentel was given SVN access on 29 April 2008 by MvL, + for GSoC contributions. + +- Heiko Weinen was given SVN access on 29 April 2008 by MvL, + for GSoC contributions. + - Jesus Cea was was given SVN access on 24 April 2008 by MvL, for maintenance of bsddb. From python-checkins at python.org Tue Apr 29 08:57:06 2008 From: python-checkins at python.org (martin.v.loewis) Date: Tue, 29 Apr 2008 08:57:06 +0200 (CEST) Subject: [Python-checkins] r62579 - tracker/instances/setuptools/html/page.html Message-ID: <20080429065706.954F81E4004@bag.python.org> Author: martin.v.loewis Date: Tue Apr 29 08:57:06 2008 New Revision: 62579 Log: Make installation official. Modified: tracker/instances/setuptools/html/page.html Modified: tracker/instances/setuptools/html/page.html ============================================================================== --- tracker/instances/setuptools/html/page.html (original) +++ tracker/instances/setuptools/html/page.html Tue Apr 29 08:57:06 2008 @@ -46,7 +46,6 @@
    -

    This is a demo installation. Do not use it to report real bugs yet

    From nnorwitz at gmail.com Tue Apr 29 10:08:03 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 04:08:03 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080429080803.GA20149@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15513 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592565 refs] From nnorwitz at gmail.com Tue Apr 29 10:14:20 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 04:14:20 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080429081420.GA21331@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15575 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592057 refs] From nnorwitz at gmail.com Tue Apr 29 11:28:01 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 05:28:01 -0400 Subject: [Python-checkins] Python Regression Test Failures all (1) Message-ID: <20080429092801.GA31629@python.psfb.org> 326 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler testCompileLibrary still working, be patient... test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [14670 refs] test_threading_local test_threadsignals test_time test_timeout test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllibnet test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 326 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [604219 refs] From buildbot at python.org Tue Apr 29 13:37:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 29 Apr 2008 11:37:53 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080429113753.AB53E1E400D@bag.python.org> The Buildbot has detected a new failure of x86 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20W2k8%203.0/builds/227 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_smtplib Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 493, in _bootstrap_inner self.run() File "S:\buildbots\python\3.0.nelson-windows\build\lib\threading.py", line 449, in run self._target(*self._args, **self._kwargs) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_smtplib.py", line 106, in debugging_server poll_fun(0.01, asyncore.socket_map) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python\3.0.nelson-windows\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python\3.0.nelson-windows\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From buildbot at python.org Tue Apr 29 13:38:07 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 29 Apr 2008 11:38:07 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080429113807.4387C1E400D@bag.python.org> The Buildbot has detected a new failure of AMD64 W2k8 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/AMD64%20W2k8%203.0/builds/210 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-win64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 207, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 195, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 123, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 128, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 133, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 162, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 150, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 142, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 142, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 174, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 184, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_close_when_done (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 207, in test_close_when_done asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_empty_line (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 195, in test_empty_line asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 123, in test_line_terminator1 self.line_terminator_check('\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 128, in test_line_terminator2 self.line_terminator_check('\r\n', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_line_terminator3 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 133, in test_line_terminator3 self.line_terminator_check('qqq', l) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 111, in line_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_none_terminator (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 162, in test_none_terminator asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator1 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 150, in test_numeric_terminator1 self.numeric_terminator_check(1) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 142, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_numeric_terminator2 (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 153, in test_numeric_terminator2 self.numeric_terminator_check(6) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 142, in numeric_terminator_check asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_simple_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 174, in test_simple_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine ====================================================================== ERROR: test_string_producer (test.test_asynchat.TestAsynchat_WithPoll) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_asynchat.py", line 184, in test_string_producer asyncore.loop(use_poll=self.usepoll, count=300, timeout=.01) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 195, in loop poll_fun(timeout, map) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 132, in poll read(obj) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 72, in read obj.handle_error() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 68, in read obj.handle_read_event() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 390, in handle_read_event self.handle_read() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_ssl.py", line 524, in handle_read data = self.recv(1024) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\asyncore.py", line 342, in recv data = self.socket.recv(buffer_size) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 247, in recv return self.read(buflen) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\ssl.py", line 162, in read v = self._sslobj.read(len or 1024) socket.error: [Errno 10053] An established connection was aborted by the software in your host machine sincerely, -The Buildbot From buildbot at python.org Tue Apr 29 16:29:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 29 Apr 2008 14:29:54 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-3 3.0 Message-ID: <20080429142954.9DA0A1E4008@bag.python.org> The Buildbot has detected a new failure of x86 XP-3 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20XP-3%203.0/builds/814 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-windows Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: benjamin.peterson,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 19 tests failed: test_bufio test_builtin test_deque test_distutils test_gzip test_io test_iter test_mailbox test_marshal test_mmap test_pkgutil test_posixpath test_set test_subprocess test_urllib test_uu test_xmlrpc_net test_zipfile test_zipimport ====================================================================== ERROR: test_nullpat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 59, in test_nullpat self.drive_one(bytes(1000)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 50, in drive_one self.try_one(teststring + b"x") File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_primepat (test.test_bufio.BufferSizeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 56, in test_primepat self.drive_one(b"1234567890\00\01\02\03\04\05\06") File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 49, in drive_one self.try_one(teststring) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_bufio.py", line 21, in try_one f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 80, in test_maxlen fo = open(test_support.TESTFN, "w") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_print (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_deque.py", line 294, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 45, in test_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readline (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 82, in test_readline self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_readlines (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 95, in test_readlines self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_read (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 109, in test_seek_read self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_whence (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 129, in test_seek_whence self.test_write() File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_seek_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 141, in test_seek_write f = gzip.GzipFile(self.filename, 'w') File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_write (test.test_gzip.TestGzip) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_gzip.py", line 35, in test_write f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50) File "C:\buildbot\work\3.0.heller-windows\build\lib\gzip.py", line 91, in __init__ fileobj = self.myfileobj = builtins.open(filename, mode or 'rb') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_array_writes (test.test_io.IOTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_io.py", line 262, in test_array_writes f = io.open(test_support.TESTFN, "wb", 0) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestMH) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 332, in test_popitem key, msg = self._box.popitem() File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 154, in popitem return (key, self.pop(key)) # This is only run once. File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 145, in pop result = self[key] File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 76, in __getitem__ return self.get_message(key) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 895, in get_message f = open(os.path.join(self._path, str(key)), 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test\\3' ====================================================================== ERROR: test_get (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 941, in tearDown self._box.close() File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 643, in close self.flush() File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 620, in flush os.rename(new_file.name, self._path) WindowsError: [Error 5] Access is denied ====================================================================== ERROR: test_get_file (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_message (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_get_string (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_getitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_items (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iter (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iteritems (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_iterkeys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_itervalues (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_keys (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_labels (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_len (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_lock_unlock (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_pop (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_popitem (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_remove (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_set_item (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_update (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_values (test.test_mailbox.TestBabyl) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 58, in setUp self._box = self._factory(self._path) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 938, in _factory = lambda self, path, factory=None: mailbox.Babyl(path, factory) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 1121, in __init__ _singlefileMailbox.__init__(self, path, factory, create) File "C:\buildbot\work\3.0.heller-windows\build\lib\mailbox.py", line 513, in __init__ f = open(self._path, 'r', newline='') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: 'C:\\buildbot\\work\\3.0.heller-windows\\build\\PCbuild\\@test' ====================================================================== ERROR: test_initialize_with_file (test.test_mailbox.TestMessage) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_mailbox.py", line 990, in test_initialize_with_file f = open(self._path, 'w+') File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_ints (test.test_marshal.IntTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 34, in test_ints self.helper(expected) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_floats (test.test_marshal.FloatTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 72, in test_floats self.helper(float(expected)) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_bytes (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 103, in test_bytes self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_string (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 99, in test_string self.helper(s) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_unicode (test.test_marshal.StringTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 95, in test_unicode self.helper(marshal.loads(marshal.dumps(s))) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_dict (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 128, in test_dict self.helper(self.d) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_list (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 131, in test_list self.helper(list(self.d.items())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_sets (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 138, in test_sets self.helper(constructor(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_tuple (test.test_marshal.ContainerTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 134, in test_tuple self.helper(tuple(self.d.keys())) File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_marshal.py", line 14, in helper f = open(test_support.TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: test_cyclical_print (test.test_set.TestSet) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 297, in test_cyclical_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsSingleton) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsTuple) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsTriple) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsString) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsBytes) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== ERROR: test_print (test.test_set.TestBasicOpsMixedStringBytes) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_set.py", line 681, in test_print fo.close() UnboundLocalError: local variable 'fo' referenced before assignment ====================================================================== FAIL: test_kill (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_subprocess.py", line 695, in test_kill self.assertNotEqual(p.wait(), 0) AssertionError: 0 == 0 ====================================================================== FAIL: test_current_time (test.test_xmlrpc_net.CurrentTimeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_xmlrpc_net.py", line 36, in test_current_time self.assert_(delta.days <= 1) AssertionError: None ====================================================================== ERROR: testAppendToNonZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testAppendToZipFile (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testExtractAll (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIterlinesDeflated (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' ====================================================================== ERROR: testIterlinesStored (test.test_zipfile.TestsWithSourceFile) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\buildbot\work\3.0.heller-windows\build\lib\test\test_zipfile.py", line 30, in setUp fp = open(TESTFN, "wb") File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 279, in __new__ return open(*args, **kwargs) File "c:\buildbot\work\3.0.heller-windows\build\lib\io.py", line 218, in open closefd) IOError: [Errno 13] Permission denied: '@test' sincerely, -The Buildbot From python-checkins at python.org Tue Apr 29 16:47:28 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 29 Apr 2008 16:47:28 +0200 (CEST) Subject: [Python-checkins] r62581 - in sandbox/trunk/ttk-gsoc: Doc Doc/library Doc/library/tk.rst.diff Doc/library/ttk.rst Lib Lib/lib-tk Lib/lib-tk/Ttk.py lib-tk Message-ID: <20080429144728.9CCBC1E401E@bag.python.org> Author: guilherme.polo Date: Tue Apr 29 16:47:27 2008 New Revision: 62581 Log: Moved lib-tk to Lib/lib-tk so it matches the correct python structure. Added Doc/library. tk.rst.diff is a minor diff for adding ttk.rst to its toctree. ttk.rst is empty for now. Removed unused import at Lib/lib-tk/Ttk.py and now it overrides Tkinter.Tk._loadtk to check for Ttk presence. Previously it was overriding Tkinter.BaseWidget._setup (which would call Tkinter.Tk._loadtk) but in some situations it would be bad to depend on BaseWidget, for example: import Tkinter, Ttk tk = Tkinter.Tk() # Tile not checked yet, not a problem for Tk 8.5 style = Ttk.Style() # fails telling ttk::style is not available The difference now is that it will raise a TclError when creating Tk instance if you are trying to use Ttk without it being available. Added: sandbox/trunk/ttk-gsoc/Doc/ sandbox/trunk/ttk-gsoc/Doc/library/ sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst sandbox/trunk/ttk-gsoc/Lib/ sandbox/trunk/ttk-gsoc/Lib/lib-tk/ - copied from r62515, /sandbox/trunk/ttk-gsoc/lib-tk/ sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py - copied, changed from r62580, /sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py Removed: sandbox/trunk/ttk-gsoc/lib-tk/ Added: sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff Tue Apr 29 16:47:27 2008 @@ -0,0 +1,12 @@ +Index: Doc/library/tk.rst +=================================================================== +--- Doc/library/tk.rst (revision 62383) ++++ Doc/library/tk.rst (working copy) +@@ -30,6 +30,7 @@ + .. toctree:: + + tkinter.rst ++ ttk.rst + tix.rst + scrolledtext.rst + turtle.rst Added: sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst Tue Apr 29 16:47:27 2008 @@ -0,0 +1,11 @@ +:mod:`Ttk` --- Empty +==================== + +.. module:: Ttk + :synposis: Empty +.. sectionauthor:: Guilherme Polo + + +.. index:: single: Ttk + +Booh! Copied: sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py (from r62580, /sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py) ============================================================================== --- /sandbox/trunk/ttk-gsoc/lib-tk/Ttk.py (original) +++ sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py Tue Apr 29 16:47:27 2008 @@ -20,25 +20,23 @@ "Style", "Widget"] import Tkinter -import _tkinter # Verify if Tk is new enough to not need Tile checking REQUIRE_TILE = True if Tkinter.TkVersion < 8.5 else False # XXX Looking at FixTk.py it seems something like TILE_LIBRARY env check # should be added there and possibly here before tile package check. -def _setup(tksetup): - # Extend default Tkinter.BaseWidget._setup staticmethod so we can be - # sure that Ttk is available for use, or not. - def f(self, master, cnf): - tksetup(self, master, cnf) +def _loadttk(loadtk): + # Extend default Tkinter.Tk._loadtk method so we can be sure that + # Ttk is available for use, or not. + def f(self): + loadtk(self) if REQUIRE_TILE: self.tk.eval('package require tile') - + return f -Tkinter.BaseWidget._setup = _setup(Tkinter.BaseWidget._setup) - +Tkinter.Tk._loadtk = _loadttk(Tkinter.Tk._loadtk) class Style(object): """Manipulate style database.""" @@ -47,9 +45,9 @@ def __init__(self, master=None): if not master: - master = Tkinter._default_root - if not master: - raise RuntimeError("Too early to manipulate styles") + if not Tkinter._default_root: + Tkinter._default_root = Tkinter.Tk() + master = Tkinter._default_root self.tk = master.tk @@ -106,8 +104,8 @@ return self.tk.call(self._name, "layout", style, layoutspec) - def element_create(self, elementname, type, **kw): - """Create a new element in the current theme of given type.""" + def element_create(self, elementName, etype, **kw): + """Create a new element in the current theme of given etype.""" raise NotImplementedError From guido at python.org Tue Apr 29 21:12:10 2008 From: guido at python.org (Guido van Rossum) Date: Tue, 29 Apr 2008 12:12:10 -0700 Subject: [Python-checkins] r62570 - peps/trunk/pep-3108.txt In-Reply-To: <18454.34342.592936.780447@montanaro-dyndns-org.local> References: <20080429002749.754D71E4004@bag.python.org> <18454.34342.592936.780447@montanaro-dyndns-org.local> Message-ID: On Mon, Apr 28, 2008 at 7:21 PM, wrote: > Log: > > More updates based on talking with Guido. Big ones are renaming the > proposed tk package to tkinter, and the proposed url package to urllib. > > Why? Because tk and url are common variable names often used together with these modules. -- --Guido van Rossum (home page: http://www.python.org/~guido/) From nnorwitz at gmail.com Tue Apr 29 22:07:49 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 16:07:49 -0400 Subject: [Python-checkins] Python Regression Test Failures basics (1) Message-ID: <20080429200749.GA25773@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15575 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592565 refs] From nnorwitz at gmail.com Tue Apr 29 22:14:12 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 16:14:12 -0400 Subject: [Python-checkins] Python Regression Test Failures opt (1) Message-ID: <20080429201412.GA26955@python.psfb.org> 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_bsddb3 skipped -- Use of the `bsddb' resource not enabled test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_curses test_curses skipped -- Use of the `curses' resource not enabled test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils [12729 refs] test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_linuxaudiodev test_linuxaudiodev skipped -- Use of the `audio' resource not enabled test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_ossaudiodev test_ossaudiodev skipped -- Use of the `audio' resource not enabled test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_socketserver skipped -- Use of the `network' resource not enabled test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 599, in test_kill self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15575 refs] test_threading_local test_threadsignals test_time test_timeout test_timeout skipped -- Use of the `network' resource not enabled test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllib2net skipped -- Use of the `network' resource not enabled test_urllibnet test_urllibnet skipped -- Use of the `network' resource not enabled test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 321 tests OK. 1 test failed: test_subprocess 32 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_bsddb3 test_cd test_cl test_curses test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_linuxaudiodev test_macostools test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages test_socketserver test_startfile test_sunaudiodev test_tcl test_timeout test_unicode_file test_urllib2net test_urllibnet test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [592057 refs] From nnorwitz at gmail.com Tue Apr 29 23:28:12 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Tue, 29 Apr 2008 17:28:12 -0400 Subject: [Python-checkins] Python Regression Test Failures all (1) Message-ID: <20080429212812.GA4834@python.psfb.org> 326 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler testCompileLibrary still working, be patient... test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test_socketserver test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] [8748 refs] [8532 refs] 'import site' failed; use -v for traceback Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [7488 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_subprocess.py", line 607, in test_terminate self.assert_(p.poll() is None, p.poll()) AssertionError: 1 test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [15575 refs] test_threading_local test_threadsignals test_time test_timeout test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllibnet test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 326 tests OK. 1 test failed: test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [604219 refs] From python-checkins at python.org Tue Apr 29 23:45:06 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 23:45:06 +0200 (CEST) Subject: [Python-checkins] r62584 - peps/trunk/pep-3108.txt Message-ID: <20080429214506.532171E4003@bag.python.org> Author: brett.cannon Date: Tue Apr 29 23:45:05 2008 New Revision: 62584 Log: A bunch of minor changes along with adding Canvas to the deletion list and saving sched. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 23:45:05 2008 @@ -20,11 +20,11 @@ an introduction of a naming convention for modules since Python's inception that not all modules follow. -Python 3.0 has presented a chance to remove modules that do not have +Python 3.0 has presents a chance to remove modules that do not have long term usefulness. This chance also allows for the renaming of modules so that they follow the Python style guide [#pep-0008]_. This -PEP lists modules that should not be included in Python 3.0 and what -modules need to be renamed. +PEP lists modules that should not be included in Python 3.0 or which +need to be renamed. Modules to Remove @@ -139,13 +139,14 @@ Platform-specific with minimal use ---------------------------------- -Python supports many platforms, some of which are not widely held. +Python supports many platforms, some of which are not widely used or +maintained. And on some of these platforms there are modules that have limited use to people on those platforms. Because of their limited usefulness it would be better to no longer burden the Python development team with their maintenance. -The module mentioned below are documented. All undocumented modules +The modules mentioned below are documented. All undocumented modules for the specified platforms will also be removed. IRIX @@ -264,7 +265,7 @@ Mac-specific modules //////////////////// -The Mac-specific modules are mostly unmaintained (e.g., the bgen +The Mac-specific modules are not well-maintained (e.g., the bgen tool used to auto-generate many of the modules has never been updated to support UCS-4). It is also not Python's place to maintain such a large amount of OS-specific modules. Thus all modules under @@ -459,9 +460,9 @@ Hardly used ------------ -Some modules that are platform-independent are hardly used. This -can be from how easy it is to implement the functionality from scratch -or because the audience for the code is very small. +Some platform-independent modules are rarely used. There are a number of +possible explanations for this, including, ease of reimplementation, very +small audience or lack of adherence to more modern standards. * audiodev [done: 3.0] @@ -541,6 +542,13 @@ + Not built by default. + Documentation specifies that the "module should never be used directly in new code". + + Available externally from PyPI_. + +* Canvas + + + Marked as obsolete in a comment by Guido since 2000 + (see http://bugs.python.org/issue210677). + + Better to use ``Tkinter.Canvas``. * commands @@ -597,11 +605,6 @@ + subprocess module replaces it [#pep-0324]_. -* sched - - + Replaced by threading.Timer. - - * sgmllib + Does not fully parse SGML. @@ -642,13 +645,13 @@ * UserList/UserString [done: 3.0] + Not useful since types can be a superclass. + + Moved to the 'collections' module. Modules to Rename ================= -Along with the stdlib gaining some modules that are no longer -relevant, there is also the issue of naming. Many modules existed in +Many modules existed in the stdlib before PEP 8 came into existence [#pep-0008]_. This has led to some naming inconsistencies and namespace bloat that should be addressed. @@ -750,9 +753,8 @@ ------------------- As the stdlib has grown, several areas within it have expanded to -include multiple modules (e.g., dbm support). Thus some new packages -make sense where the renaming makes a module's name easier to work -with. +include multiple modules (e.g., support for database files). It +thus makes sense to group related modules into packages. dbm package @@ -811,7 +813,6 @@ ================== =============================== Current Name Replacement Name ================== =============================== -Canvas tkinter.canvas Dialog tkinter.dialog FileDialog tkinter.filedialog [4]_ FixTk tkinter._fix @@ -880,24 +881,24 @@ For modules to be removed ------------------------- -For the removal of modules that are continuing to exist in the Python -2.x series (i.e., not deprecated explicitly in the 2.x series), -``warnings.warn3k()`` will be used to issue a DeprecationWarning. +Use of modules which will not be deleted in the Python 2.x series +will generate a ``DeprecationWarning`` using the +``warnings.warn3k()`` function. Renaming of modules ------------------- -For modules that are renamed, stub modules will be created with the -original names and be kept in a directory within the stdlib (e.g. like -how lib-old was once used). The need to keep the stub modules within -a directory is to prevent naming conflicts with case-insensitive -filesystems in those cases where nothing but the case of the module -is changing. - -These stub modules will import the module code based on the new -naming. The same type of warning being raised by modules being -removed will be raised in the stub modules. +Stub modules will be created which have the original names. They +will reside in a stdlib directory similar to the defunct ``lib-old`` +directory. This facility prevents naming conflicts on +case-insensitive filesystems where only the case of a module's name +changed. + +The stub modules will import the module code based on the new names. +As with modules to be removed in 3.0 but not in 2.x, +``DeprecationWarning`` will be raised using the ``warnings.warn3k()`` +function. Support in the 2to3 refactoring tool for renames will also be used [#2to3]_. Import statements will be rewritten so that only the import @@ -963,6 +964,10 @@ + Useful as a basis for overriding. + Used internally. + +* sched + + + Useful for simulations. * telnetlib @@ -1060,6 +1065,9 @@ .. [#ast-removal] python-dev email: getting compiler package failures (http://mail.python.org/pipermail/python-3000/2007-May/007615.html) + + +.. _PyPI: http://pypi.python.org/ Copyright From python-checkins at python.org Tue Apr 29 23:46:33 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 29 Apr 2008 23:46:33 +0200 (CEST) Subject: [Python-checkins] r62585 - peps/trunk/pep-3108.txt Message-ID: <20080429214633.A9D881E4003@bag.python.org> Author: brett.cannon Date: Tue Apr 29 23:46:32 2008 New Revision: 62585 Log: Add more detail about how to handle modules that are renamed. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Tue Apr 29 23:46:32 2008 @@ -895,7 +895,12 @@ case-insensitive filesystems where only the case of a module's name changed. -The stub modules will import the module code based on the new names. +The stub modules will import the module code based on the new names:: + + from sys import modules + import new_name + modules[__name__] = new_name + As with modules to be removed in 3.0 but not in 2.x, ``DeprecationWarning`` will be raised using the ``warnings.warn3k()`` function. From python-checkins at python.org Wed Apr 30 03:09:30 2008 From: python-checkins at python.org (eric.smith) Date: Wed, 30 Apr 2008 03:09:30 +0200 (CEST) Subject: [Python-checkins] r62586 - in python/trunk: Lib/test/test_types.py Python/pystrtod.c Message-ID: <20080430010930.642A31E4006@bag.python.org> Author: eric.smith Date: Wed Apr 30 03:09:30 2008 New Revision: 62586 Log: Issue 2526, float.__format__ 'n' specifier does not support thousands grouping. Implemented grouping, with tests. Cleaned up PyOS_ascii_formatd by breaking reformatting into smaller functions. Modified: python/trunk/Lib/test/test_types.py python/trunk/Python/pystrtod.c Modified: python/trunk/Lib/test/test_types.py ============================================================================== --- python/trunk/Lib/test/test_types.py (original) +++ python/trunk/Lib/test/test_types.py Wed Apr 30 03:09:30 2008 @@ -1,8 +1,9 @@ # Python test set -- part 6, built-in types -from test.test_support import run_unittest, have_unicode +from test.test_support import run_unittest, have_unicode, run_with_locale import unittest import sys +import locale class TypesTests(unittest.TestCase): @@ -476,6 +477,15 @@ self.assertEqual(value.__format__(format_spec), float(value).__format__(format_spec)) + @run_with_locale('LC_NUMERIC', 'en_US.UTF8') + def test_float__format__locale(self): + # test locale support for __format__ code 'n' + + for i in range(-10, 10): + x = 1234567890.0 * (10.0 ** i) + self.assertEqual(locale.format('%g', x, grouping=True), format(x, 'n')) + self.assertEqual(locale.format('%.10g', x, grouping=True), format(x, '.10n')) + def test_float__format__(self): # these should be rewritten to use both format(x, spec) and # x.__format__(spec) Modified: python/trunk/Python/pystrtod.c ============================================================================== --- python/trunk/Python/pystrtod.c (original) +++ python/trunk/Python/pystrtod.c Wed Apr 30 03:09:30 2008 @@ -187,6 +187,38 @@ return val; } +/* Given a string that may have a decimal point in the current + locale, change it back to a dot. Since the string cannot get + longer, no need for a maximum buffer size parameter. */ +Py_LOCAL_INLINE(void) +change_decimal_from_locale_to_dot(char* buffer) +{ + struct lconv *locale_data = localeconv(); + const char *decimal_point = locale_data->decimal_point; + + if (decimal_point[0] != '.' || decimal_point[1] != 0) { + size_t decimal_point_len = strlen(decimal_point); + + if (*buffer == '+' || *buffer == '-') + buffer++; + while (isdigit(Py_CHARMASK(*buffer))) + buffer++; + if (strncmp(buffer, decimal_point, decimal_point_len) == 0) { + *buffer = '.'; + buffer++; + if (decimal_point_len > 1) { + /* buffer needs to get smaller */ + size_t rest_len = strlen(buffer + + (decimal_point_len - 1)); + memmove(buffer, + buffer + (decimal_point_len - 1), + rest_len); + buffer[rest_len] = 0; + } + } + } +} + /* From the C99 standard, section 7.19.6: The exponent always contains at least two digits, and only as many more digits @@ -194,6 +226,189 @@ */ #define MIN_EXPONENT_DIGITS 2 +/* Ensure that any exponent, if present, is at least MIN_EXPONENT_DIGITS + in length. */ +Py_LOCAL_INLINE(void) +ensure_minumim_exponent_length(char* buffer, size_t buf_size) +{ + char *p = strpbrk(buffer, "eE"); + if (p && (*(p + 1) == '-' || *(p + 1) == '+')) { + char *start = p + 2; + int exponent_digit_cnt = 0; + int leading_zero_cnt = 0; + int in_leading_zeros = 1; + int significant_digit_cnt; + + /* Skip over the exponent and the sign. */ + p += 2; + + /* Find the end of the exponent, keeping track of leading + zeros. */ + while (*p && isdigit(Py_CHARMASK(*p))) { + if (in_leading_zeros && *p == '0') + ++leading_zero_cnt; + if (*p != '0') + in_leading_zeros = 0; + ++p; + ++exponent_digit_cnt; + } + + significant_digit_cnt = exponent_digit_cnt - leading_zero_cnt; + if (exponent_digit_cnt == MIN_EXPONENT_DIGITS) { + /* If there are 2 exactly digits, we're done, + regardless of what they contain */ + } + else if (exponent_digit_cnt > MIN_EXPONENT_DIGITS) { + int extra_zeros_cnt; + + /* There are more than 2 digits in the exponent. See + if we can delete some of the leading zeros */ + if (significant_digit_cnt < MIN_EXPONENT_DIGITS) + significant_digit_cnt = MIN_EXPONENT_DIGITS; + extra_zeros_cnt = exponent_digit_cnt - + significant_digit_cnt; + + /* Delete extra_zeros_cnt worth of characters from the + front of the exponent */ + assert(extra_zeros_cnt >= 0); + + /* Add one to significant_digit_cnt to copy the + trailing 0 byte, thus setting the length */ + memmove(start, + start + extra_zeros_cnt, + significant_digit_cnt + 1); + } + else { + /* If there are fewer than 2 digits, add zeros + until there are 2, if there's enough room */ + int zeros = MIN_EXPONENT_DIGITS - exponent_digit_cnt; + if (start + zeros + exponent_digit_cnt + 1 + < buffer + buf_size) { + memmove(start + zeros, start, + exponent_digit_cnt + 1); + memset(start, '0', zeros); + } + } + } +} + +/* Ensure that buffer has a decimal point in it. The decimal point + will not be in the current locale, it will always be '.' */ +Py_LOCAL_INLINE(void) +ensure_decimal_point(char* buffer, size_t buf_size) +{ + int insert_count = 0; + char* chars_to_insert; + + /* search for the first non-digit character */ + char *p = buffer; + while (*p && isdigit(Py_CHARMASK(*p))) + ++p; + + if (*p == '.') { + if (isdigit(Py_CHARMASK(*(p+1)))) { + /* Nothing to do, we already have a decimal + point and a digit after it */ + } + else { + /* We have a decimal point, but no following + digit. Insert a zero after the decimal. */ + ++p; + chars_to_insert = "0"; + insert_count = 1; + } + } + else { + chars_to_insert = ".0"; + insert_count = 2; + } + if (insert_count) { + size_t buf_len = strlen(buffer); + if (buf_len + insert_count + 1 >= buf_size) { + /* If there is not enough room in the buffer + for the additional text, just skip it. It's + not worth generating an error over. */ + } + else { + memmove(p + insert_count, p, + buffer + strlen(buffer) - p + 1); + memcpy(p, chars_to_insert, insert_count); + } + } +} + +/* Add the locale specific grouping characters to buffer. Note + that any decimal point (if it's present) in buffer is already + locale-specific. Return 0 on error, else 1. */ +Py_LOCAL_INLINE(int) +add_thousands_grouping(char* buffer, size_t buf_size) +{ + struct lconv *locale_data = localeconv(); + const char *grouping = locale_data->grouping; + const char *thousands_sep = locale_data->thousands_sep; + size_t thousands_sep_len = strlen(thousands_sep); + const char *decimal_point = locale_data->decimal_point; + char *pend = buffer + strlen(buffer); /* current end of buffer */ + char *pmax = buffer + buf_size; /* max of buffer */ + char current_grouping; + + /* Find the decimal point, if any. We're only concerned + about the characters to the left of the decimal when + adding grouping. */ + char *p = strstr(buffer, decimal_point); + if (!p) { + /* No decimal, use the entire string. */ + + /* If any exponent, adjust p. */ + p = strpbrk(buffer, "eE"); + if (!p) + /* No exponent and no decimal. Use the entire + string. */ + p = pend; + } + /* At this point, p points just past the right-most character we + want to format. We need to add the grouping string for the + characters between buffer and p. */ + + /* Starting at p and working right-to-left, keep track of + what grouping needs to be added and insert that. */ + current_grouping = *grouping++; + + /* If the first character is 0, perform no grouping at all. */ + if (current_grouping == 0) + return 1; + + while (p - buffer > current_grouping) { + /* Always leave buffer and pend valid at the end of this + loop, since we might leave with a return statement. */ + + /* Is there room to insert thousands_sep_len chars?. */ + if (pmax - pend <= thousands_sep_len) + /* No room. */ + return 0; + + /* Move the rest of the string down. */ + p -= current_grouping; + memmove(p + thousands_sep_len, + p, + pend - p + 1); + /* Adjust end pointer. */ + pend += thousands_sep_len; + /* Copy the thousands_sep chars into the buffer. */ + memcpy(p, thousands_sep, thousands_sep_len); + + /* Move to the next grouping character, unless we're + repeating (which is designated by a grouping of 0). */ + if (*grouping != 0) { + current_grouping = *grouping++; + if (current_grouping == CHAR_MAX) + /* We're done. */ + return 1; + } + } + return 1; +} + /* see FORMATBUFLEN in unicodeobject.c */ #define FLOAT_FORMATBUFLEN 120 @@ -222,7 +437,6 @@ const char *format, double d) { - char *p; char format_char; size_t format_len = strlen(format); @@ -277,144 +491,31 @@ /* Have PyOS_snprintf do the hard work */ PyOS_snprintf(buffer, buf_size, format, d); - /* Get the current local, and find the decimal point character (or - string?). Convert that string back to a dot. Do not do this if - using the 'n' (number) format code. */ - if (format_char != 'n') { - struct lconv *locale_data = localeconv(); - const char *decimal_point = locale_data->decimal_point; - size_t decimal_point_len = strlen(decimal_point); - size_t rest_len; - - assert(decimal_point_len != 0); + /* Do various fixups on the return string */ - if (decimal_point[0] != '.' || decimal_point[1] != 0) { - p = buffer; - - if (*p == '+' || *p == '-') - p++; - - while (isdigit(Py_CHARMASK(*p))) - p++; - - if (strncmp(p, decimal_point, - decimal_point_len) == 0) { - *p = '.'; - p++; - if (decimal_point_len > 1) { - rest_len = strlen(p + - (decimal_point_len - 1)); - memmove(p, p + (decimal_point_len - 1), - rest_len); - p[rest_len] = 0; - } - } - } - } + /* Get the current locale, and find the decimal point string. + Convert that string back to a dot. Do not do this if using the + 'n' (number) format code, since we want to keep the localized + decimal point in that case. */ + if (format_char != 'n') + change_decimal_from_locale_to_dot(buffer); /* If an exponent exists, ensure that the exponent is at least MIN_EXPONENT_DIGITS digits, providing the buffer is large enough for the extra zeros. Also, if there are more than MIN_EXPONENT_DIGITS, remove as many zeros as possible until we get back to MIN_EXPONENT_DIGITS */ - p = strpbrk(buffer, "eE"); - if (p && (*(p + 1) == '-' || *(p + 1) == '+')) { - char *start = p + 2; - int exponent_digit_cnt = 0; - int leading_zero_cnt = 0; - int in_leading_zeros = 1; - int significant_digit_cnt; - - p += 2; - while (*p && isdigit(Py_CHARMASK(*p))) { - if (in_leading_zeros && *p == '0') - ++leading_zero_cnt; - if (*p != '0') - in_leading_zeros = 0; - ++p; - ++exponent_digit_cnt; - } - - significant_digit_cnt = exponent_digit_cnt - leading_zero_cnt; - if (exponent_digit_cnt == MIN_EXPONENT_DIGITS) { - /* If there are 2 exactly digits, we're done, - regardless of what they contain */ - } - else if (exponent_digit_cnt > MIN_EXPONENT_DIGITS) { - int extra_zeros_cnt; - - /* There are more than 2 digits in the exponent. See - if we can delete some of the leading zeros */ - if (significant_digit_cnt < MIN_EXPONENT_DIGITS) - significant_digit_cnt = MIN_EXPONENT_DIGITS; - extra_zeros_cnt = exponent_digit_cnt - - significant_digit_cnt; - - /* Delete extra_zeros_cnt worth of characters from the - front of the exponent */ - assert(extra_zeros_cnt >= 0); - - /* Add one to significant_digit_cnt to copy the - trailing 0 byte, thus setting the length */ - memmove(start, - start + extra_zeros_cnt, - significant_digit_cnt + 1); - } - else { - /* If there are fewer than 2 digits, add zeros - until there are 2, if there's enough room */ - int zeros = MIN_EXPONENT_DIGITS - exponent_digit_cnt; - if (start + zeros + exponent_digit_cnt + 1 - < buffer + buf_size) { - memmove(start + zeros, start, - exponent_digit_cnt + 1); - memset(start, '0', zeros); - } - } - } + ensure_minumim_exponent_length(buffer, buf_size); /* If format_char is 'Z', make sure we have at least one character after the decimal point (and make sure we have a decimal point). */ - if (format_char == 'Z') { - int insert_count = 0; - char* chars_to_insert; - - /* search for the first non-digit character */ - p = buffer; - while (*p && isdigit(Py_CHARMASK(*p))) - ++p; + if (format_char == 'Z') + ensure_decimal_point(buffer, buf_size); - if (*p == '.') { - if (isdigit(Py_CHARMASK(*(p+1)))) { - /* Nothing to do, we already have a decimal - point and a digit after it */ - } - else { - /* We have a decimal point, but no following - digit. Insert a zero after the decimal. */ - ++p; - chars_to_insert = "0"; - insert_count = 1; - } - } - else { - chars_to_insert = ".0"; - insert_count = 2; - } - if (insert_count) { - size_t buf_len = strlen(buffer); - if (buf_len + insert_count + 1 >= buf_size) { - /* If there is not enough room in the buffer - for the additional text, just skip it. It's - not worth generating an error over. */ - } - else { - memmove(p + insert_count, p, - buffer + strlen(buffer) - p + 1); - memcpy(p, chars_to_insert, insert_count); - } - } - } + /* If format_char is 'n', add the thousands grouping. */ + if (format_char == 'n') + if (!add_thousands_grouping(buffer, buf_size)) + return NULL; return buffer; } From buildbot at python.org Wed Apr 30 03:39:20 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 30 Apr 2008 01:39:20 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080430013934.B27931E4006@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%20trunk/builds/108 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,eric.smith,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_collections make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Apr 30 04:22:40 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 30 Apr 2008 02:22:40 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080430022240.51E081E4019@bag.python.org> The Buildbot has detected a new failure of alpha Tru64 5.1 trunk. Full details are available at: http://www.python.org/dev/buildbot/all/alpha%20Tru64%205.1%20trunk/builds/2913 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: norwitz-tru64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,eric.smith,martin.v.loewis BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_smtplib sincerely, -The Buildbot From buildbot at python.org Wed Apr 30 04:41:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 30 Apr 2008 02:41:14 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080430024123.425F31E4019@bag.python.org> The Buildbot has detected a new failure of x86 osx.5 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/x86%20osx.5%203.0/builds/60 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: heller-x86-osx5 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: eric.smith,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_email make: *** [buildbottest] Error 1 sincerely, -The Buildbot From nnorwitz at gmail.com Wed Apr 30 11:47:33 2008 From: nnorwitz at gmail.com (Neal Norwitz) Date: Wed, 30 Apr 2008 05:47:33 -0400 Subject: [Python-checkins] Python Regression Test Failures all (2) Message-ID: <20080430094733.GA22821@python.psfb.org> 325 tests OK. 2 tests failed: test_socket_ssl test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_unittest test_doctest test_doctest2 test_MimeWriter test_SimpleHTTPServer test_StringIO test___all__ test___future__ test__locale test_abc test_abstract_numbers test_aepack test_aepack skipped -- No module named aepack test_al test_al skipped -- No module named al test_anydbm test_applesingle test_applesingle skipped -- No module named macostools test_array test_ast test_asynchat test_asyncore test_atexit test_audioop test_augassign test_base64 test_bastion test_bigaddrspace test_bigmem test_binascii test_binhex test_binop test_bisect test_bool test_bsddb test_bsddb185 test_bsddb185 skipped -- No module named bsddb185 test_bsddb3 Exception in thread reader 4: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/tmp/python-test/local/lib/python2.6/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Exception in thread reader 3: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/tmp/python-test/local/lib/python2.6/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Exception in thread reader 1: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 284, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/tmp/python-test/local/lib/python2.6/bsddb/dbutils.py", line 62, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') Exception in thread writer 2: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/tmp/python-test/local/lib/python2.6/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '2002-2002-2002-2002-2002' Exception in thread writer 0: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/tmp/python-test/local/lib/python2.6/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '0004-0004-0004-0004-0004' Exception in thread writer 1: Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/threading.py", line 500, in __bootstrap_inner self.run() File "/tmp/python-test/local/lib/python2.6/threading.py", line 456, in run self.__target(*self.__args, **self.__kwargs) File "/tmp/python-test/local/lib/python2.6/bsddb/test/test_thread.py", line 263, in writerThread self.assertEqual(data, self.makeData(key)) File "/tmp/python-test/local/lib/python2.6/unittest.py", line 343, in failUnlessEqual (msg or '%r != %r' % (first, second)) AssertionError: None != '1007-1007-1007-1007-1007' test_buffer test_bufio test_bytes test_bz2 test_calendar test_call test_capi test_cd test_cd skipped -- No module named cd test_cfgparser test_cgi test_charmapcodec test_cl test_cl skipped -- No module named cl test_class test_cmath test_cmd test_cmd_line test_cmd_line_script test_code test_codeccallbacks test_codecencodings_cn test_codecencodings_hk test_codecencodings_jp test_codecencodings_kr test_codecencodings_tw test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_codecs test_codeop test_coding test_coercion test_collections test_colorsys test_commands test_compare test_compile test_compiler testCompileLibrary still working, be patient... test_complex test_complex_args test_contains test_contextlib test_cookie test_cookielib test_copy test_copy_reg test_cpickle test_cprofile test_crypt test_csv test_ctypes test_datetime test_dbm test_decimal test_decorators test_defaultdict test_deque test_descr test_descrtut test_difflib test_dircache test_dis test_distutils test_dl test_docxmlrpc test_dumbdbm test_dummy_thread test_dummy_threading test_email test_email_codecs test_email_renamed test_enumerate test_eof test_epoll test_epoll skipped -- kernel doesn't support epoll() test_errno test_exception_variations test_extcall test_fcntl test_file test_filecmp test_fileinput test_float test_fnmatch test_fork1 test_format test_fpformat test_fractions test_frozen test_ftplib test_funcattrs test_functools test_future test_future3 test_future4 test_future_builtins test_gc test_gdbm test_generators test_genericpath test_genexps test_getargs test_getargs2 test_getopt test_gettext test_gl test_gl skipped -- No module named gl test_glob test_global test_grp test_gzip test_hash test_hashlib test_heapq test_hmac test_hotshot test_htmllib test_htmlparser test_httplib test_imageop test_imageop skipped -- No module named imgfile test_imaplib test_imgfile test_imgfile skipped -- No module named imgfile test_imp test_import test_importhooks test_index test_inspect test_int_literal test_io test_ioctl test_ioctl skipped -- Unable to open /dev/tty test_isinstance test_iter test_iterlen test_itertools test_kqueue test_kqueue skipped -- test works only on BSD test_largefile test_lib2to3 test_lib2to3 skipped -- No module named tests test_list test_locale test_logging test_long test_long_future test_longexp test_macostools test_macostools skipped -- No module named macostools test_macpath test_mailbox test_marshal test_math test_md5 test_mhlib test_mimetools test_mimetypes test_minidom test_mmap test_module test_modulefinder test_multibytecodec test_multibytecodec_support test_multifile test_mutants test_mutex test_netrc test_new test_nis test_normalization test_ntpath test_old_mailbox test_openpty test_operator test_optparse test_os test_parser Expecting 's_push: parser stack overflow' in next line s_push: parser stack overflow test_peepholer test_pep247 test_pep263 test_pep277 test_pep277 skipped -- test works only on NT+ test_pep292 test_pep352 test_pickle test_pickletools test_pipes test_pkg test_pkgimport test_pkgutil test_platform test_plistlib test_poll test_popen [8535 refs] [8535 refs] [8535 refs] test_popen2 test_poplib test_posix test_posixpath test_pow test_pprint test_print test_profile test_profilehooks test_property test_pstats test_pty test_pwd test_py3kwarn test_py3kwarn skipped -- test.test_py3kwarn must be run with the -3 flag test_pyclbr test_pydoc test_pyexpat test_queue test_quopri [11049 refs] [11049 refs] test_random test_re test_repr test_resource test_rfc822 test_richcmp test_robotparser test_runpy test_sax test_scope test_scriptpackages test_scriptpackages skipped -- No module named aetools test_select test_set test_sets test_sgmllib test_sha test_shelve test_shlex test_shutil test_signal test_site test_slice test_smtplib test_socket test_socket_ssl test test_socket_ssl failed -- Traceback (most recent call last): File "/tmp/python-test/local/lib/python2.6/test/test_socket_ssl.py", line 51, in testBasic f = self.urlopen('https://sf.net') File "/tmp/python-test/local/lib/python2.6/test/test_socket_ssl.py", line 38, in urlopen raise last_exc IOError: [Errno socket error] [Errno 110] Connection timed out test_socketserver test_softspace test_sort test_sqlite test_ssl test_startfile test_startfile skipped -- cannot import name startfile test_str test_strftime test_string test_stringprep test_strop test_strptime test_struct test_structmembers test_structseq test_subprocess [8530 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8532 refs] [10455 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8748 refs] [8532 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] [8530 refs] . [8530 refs] [8530 refs] this bit of output is from a test of stdout in a different process ... [8530 refs] Traceback (most recent call last): File "", line 1, in EOFError: EOF when reading a line [8530 refs] [8530 refs] [8748 refs] test test_subprocess failed -- errors occurred; run in verbose mode for details test_sunaudiodev test_sunaudiodev skipped -- No module named sunaudiodev test_sundry test_symtable test_syntax test_sys [8530 refs] [8530 refs] test_tarfile test_tcl test_tcl skipped -- No module named _tkinter test_telnetlib test_tempfile [8535 refs] test_textwrap test_thread test_threaded_import test_threadedtempfile test_threading [11734 refs] [14670 refs] test_threading_local test_threadsignals test_time test_timeout test_tokenize test_trace test_traceback test_transformer test_tuple test_typechecks test_ucn test_unary test_undocumented_details test_unicode test_unicode_file test_unicode_file skipped -- No Unicode filesystem semantics on this platform. test_unicodedata test_univnewlines test_unpack test_urllib test_urllib2 test_urllib2_localnet test_urllib2net test_urllibnet test_urlparse test_userdict test_userlist test_userstring test_uu test_uuid WARNING: uuid.getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._ifconfig_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. WARNING: uuid._unixdll_getnode is unreliable on many platforms. It is disabled until the code and/or test can be fixed properly. test_wait3 test_wait4 test_warnings test_wave test_weakref test_whichdb test_winreg test_winreg skipped -- No module named _winreg test_winsound test_winsound skipped -- No module named winsound test_with test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc test_xpickle test_xrange test_zipfile test_zipfile64 test_zipfile64 skipped -- test requires loads of disk-space bytes and a long time to run test_zipimport test_zlib 325 tests OK. 2 tests failed: test_socket_ssl test_subprocess 24 tests skipped: test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl test_epoll test_gl test_imageop test_imgfile test_ioctl test_kqueue test_lib2to3 test_macostools test_pep277 test_py3kwarn test_scriptpackages test_startfile test_sunaudiodev test_tcl test_unicode_file test_winreg test_winsound test_zipfile64 3 skips unexpected on linux2: test_epoll test_lib2to3 test_ioctl [604269 refs] From python-checkins at python.org Wed Apr 30 16:12:08 2008 From: python-checkins at python.org (guilherme.polo) Date: Wed, 30 Apr 2008 16:12:08 +0200 (CEST) Subject: [Python-checkins] r62591 - in sandbox/trunk/ttk-gsoc: Doc/library/othergui.rst.diff Doc/library/tk.rst.diff Doc/library/ttk.rst Lib/lib-tk/Ttk.py samples/theme_selector.py samples/widget_state.py Message-ID: <20080430141208.584711E4012@bag.python.org> Author: guilherme.polo Date: Wed Apr 30 16:12:07 2008 New Revision: 62591 Log: Changed method configure of class Style so it accepts arguments to be passed as: foreground="blue" instead of: "-foreground", "blue" Wrapped some other widgets: Sizegrip, Separator, Radiobutton, Menubutton and LabelFrame which are all pretty simple to wrap. Added initial documentation for Ttk. Added a diff for Doc/library/othergui.rst which does some minor corrections in the same sense of the ones at tk.rst.diff Updated Doc/library/tk.rst.diff so it points to the Ttk documentation and also changed a part of its text to match the current estate of Tk. Added: sandbox/trunk/ttk-gsoc/Doc/library/othergui.rst.diff Modified: sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py sandbox/trunk/ttk-gsoc/samples/theme_selector.py sandbox/trunk/ttk-gsoc/samples/widget_state.py Added: sandbox/trunk/ttk-gsoc/Doc/library/othergui.rst.diff ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/Doc/library/othergui.rst.diff Wed Apr 30 16:12:07 2008 @@ -0,0 +1,18 @@ +Index: Doc/library/othergui.rst +=================================================================== +--- Doc/library/othergui.rst (revision 62383) ++++ Doc/library/othergui.rst (working copy) +@@ -69,10 +69,9 @@ + `_, by Noel Rappin and + Robin Dunn. + +-PyGTK, PyQt, and wxPython, all have a modern look and feel and far more +-widgets and better documentation than Tkinter. In addition, +-there are many other GUI toolkits for Python, both cross-platform, and +-platform-specific. See the `GUI Programming ++PyGTK, PyQt, and wxPython, all have a modern look and feel and more ++widgets than Tkinter. In addition, there are many other GUI toolkits for ++Python, both cross-platform, and platform-specific. See the `GUI Programming + `_ page in the Python Wiki for a + much more complete list, and also for links to documents where the + different GUI toolkits are compared. Modified: sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff ============================================================================== --- sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff (original) +++ sandbox/trunk/ttk-gsoc/Doc/library/tk.rst.diff Wed Apr 30 16:12:07 2008 @@ -2,7 +2,30 @@ =================================================================== --- Doc/library/tk.rst (revision 62383) +++ Doc/library/tk.rst (working copy) -@@ -30,6 +30,7 @@ +@@ -12,7 +12,8 @@ + + Tk/Tcl has long been an integral part of Python. It provides a robust and + platform independent windowing toolkit, that is available to Python programmers +-using the :mod:`Tkinter` module, and its extension, the :mod:`Tix` module. ++using the :mod:`Tkinter` module, its extension, the :mod:`Tix` module and ++the :mod:`Ttk` module for using themed widgets. + + The :mod:`Tkinter` module is a thin object-oriented layer on top of Tcl/Tk. To + use :mod:`Tkinter`, you don't need to write Tcl code, but you will need to +@@ -22,14 +23,16 @@ + mechanism which allows Python and Tcl to interact. + + :mod:`Tkinter`'s chief virtues are that it is fast, and that it usually comes +-bundled with Python. Although it has been used to create some very good +-applications, including IDLE, it has weak documentation and an outdated look and +-feel. For more modern, better documented, and much more extensive GUI +-libraries, see the :ref:`other-gui-packages` section. ++bundled with Python, but it has the fame of having an outdated look and feel. ++Tk 8.5 has improved a lot on look and feel, so this is not entirely true ++anymore, nevertheless, there are many other GUI libraries that you could be ++be interested in. For more information about alternatives, see the ++:ref:`other-gui-packages` section. + .. toctree:: tkinter.rst Modified: sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst ============================================================================== --- sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst (original) +++ sandbox/trunk/ttk-gsoc/Doc/library/ttk.rst Wed Apr 30 16:12:07 2008 @@ -1,11 +1,190 @@ -:mod:`Ttk` --- Empty -==================== +:mod:`Ttk` --- Tk themed widgets +================================ .. module:: Ttk - :synposis: Empty + :synopsis: Tk themed widget set .. sectionauthor:: Guilherme Polo .. index:: single: Ttk -Booh! +The :mod:`Ttk` module provides access to the Tk themed widget set, which +has been introduced in Tk 8.5. If you do not have Python compiled against +Tk 8.5 you may still use this module as long as you have Tile installed and +you will also miss other features of the new Tk, like anti-aliased font +rendering under X11, window transparency (on X11 you will need a compositing +window manager), and others. + +The basic idea of :mod:`Ttk` is to separate, to the extent possible, the code +implementing a widget's behavior from the code implementing its appearance. + + +.. seealso:: + + `Tk Widget Styling Support `_ + The document which brought up theming support for Tk + + +Using Ttk +--------- + +Basically to use Ttk you have to import its module:: + + import Ttk + +But if you already have some code that does:: + + from Tkinter import * + +You may optionally want to use:: + + from Tkinter import * + from Ttk import * + +So several :mod:`Ttk` widgets (:class:`Button`, :class:`Entry`, :class:`Frame`, +:class:`Label`, :class:`LabelFrame`, :class:`Menubutton`, :class:`PanedWindow`, +:class:`Radiobutton`, :class:`Scrollbar`) will automatically substitute the Tk +widgets. + +This has the direct benefit of using the new widgets which gives better +look & feel across platforms, but you should be aware that they are not +totally compatible. The main difference you will find out is that widget +options such as "-fg", "-bg" and others related to widget styling are no +longer present in Ttk widgets, instead you will have to use Ttk :class:`Style` +to achieve same (or better) styling. + + +Ttk Widgets +----------- + +Ttk comes with 16 widgets, where 10 of these already existed in Tkinter: +:class:`Button`, :class:`Checkbutton`, :class:`Entry`, :class:`Frame`, : +class:`Label`, :class:`LabelFrame`, :class:`Menubutton`, :class:`PanedWindow`, +:class:`Radiobutton` and :class:`Scrollbar`. The others 6 are new: +:class:`Combobox`, :class:`Notebook`, :class:`Progressbar`, :class:`Separator`, +:class:`Sizegrip` and :class:`Treeview`. And all them are subclasses of +:class:`Widget`. + +Like it was told before, you will notice look & feel changes aswell changes +in the styling code. To demonstrate the latter, a simple example follows. + +Tk code:: + + l1 = Tkinter.Label(text="Test", fg="black", bg="white") + l2 = Tkinter.Label(text="Test", fg="black", bg="white") + +Ttk code:: + + style = Ttk.Style() + style.configure("BW.TButton", foreground="black", background="white") + + l1 = Ttk.Label(text="Test", style="BW.TButton") + l2 = Ttk.Label(text="Test", style="BW.TButton") + + +.. class:: Widget + + Accepts the following options: + + +-----------+--------------------------------------------------------------+ + | Option | Description | + +===========+==============================================================+ + | class | Specifies the window class. The class is used when querying | + | | the option database for the window's other options, to | + | | determine the default bindtags for the window, and to select | + | | the widget's default layout and style. This is a read-only | + | | which may only be specified when the window is created | + +-----------+--------------------------------------------------------------+ + | cursor | Specifies the mouse cursor to be used for the widget. If set | + | | to the emptry string (the default), the cursor is inherited | + | | for the parent widget. | + +-----------+--------------------------------------------------------------+ + | takefocus | Determines wheter the window accepts the focus during | + | | keyboard traversal. 0, 1 or an empty is return. If 0 is | + | | returned, it means that the window should be skipped entirely| + | | during keyboard traversal. If 1, it means that the window | + | | should receive the input focus as long as it is viewable. And| + | | an empty string means that the traversal scripts make the | + | | decision about whether or not to focus on the window. | + +-----------+--------------------------------------------------------------+ + | style | May be used to specify a custom widget style | + +-----------+--------------------------------------------------------------+ + + And the new methods: + + .. method:: instate(statespec[, callback=None], *args]]) + + Test the widget's state. If a callback is not specified, returns 1 + if the widget state matches statespec and 0 otherwise. If callback + is specified then it is called with args if widget state matches + statespec. + + + .. method:: state([statespec=None]) + + Modify or inquire widget state. If statespec is specified, sets the + widget state according to it and return a new statespec indicating + which flags were changed. If statespec is not especified, returns + a list of the currently-enabled state flags. + + +Widget States +^^^^^^^^^^^^^ + + The widget state is a bitmap of independent state flags. + + +------------+-------------------------------------------------------------+ + | flag | description | + +============+=============================================================+ + | active | The mouse cursor is over the widget and pressing a mouse | + | | button will cause soem action to occur | + +------------+-------------------------------------------------------------+ + | disabled | Widget is disabled under program control | + +------------+-------------------------------------------------------------+ + | focus | Widget has keyboard focus | + +------------+-------------------------------------------------------------+ + | pressed | Widget is being pressed | + +------------+-------------------------------------------------------------+ + | selected | "On", "true", or "current" for things like Checkbuttons and | + | | radiobuttons | + +------------+-------------------------------------------------------------+ + | background | Windows and Mac have a notion of an "active" or foreground | + | | window. The *background* state is set for widgets in a | + | | background window, and cleared for those in the foreground | + | | window | + +------------+-------------------------------------------------------------+ + | readonly | Widget should not allow user mofidication | + +------------+-------------------------------------------------------------+ + | alternate | A widget-specific alternate display format | + +------------+-------------------------------------------------------------+ + | invalid | The widget's value is invalid | + +------------+-------------------------------------------------------------+ + + A state specification is a list of state names, optionally prefixed with an + exclamation point indicating that the bit is off. + + +New Widgets +^^^^^^^^^^^ + +:class:`Combobox`, :class:`Notebook`, :class:`Progressbar`, :class:`Separator`, :class:`Sizegrip` and :class:`Treeview`. + +.. class:: Combobox +.. class:: Notebook +.. class:: Progressbar +.. class:: Separator +.. class:: Sizegrip +.. class:: Treeview + + +Ttk Styling +----------- + + +.. class:: Style + + +Others new features +------------------- + + Modified: sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py (original) +++ sandbox/trunk/ttk-gsoc/Lib/lib-tk/Ttk.py Wed Apr 30 16:12:07 2008 @@ -16,8 +16,10 @@ __author__ = "Guilherme Polo " -__all__ = ["Button", "Checkbutton", "Combobox", "Entry", "Frame", "Label", - "Style", "Widget"] +__all__ = ["Button", "Checkbutton", "Combobox", "Entry", "Frame", + "Label", "LabelFrame", "Menubutton", "Notebook", "PanedWindow", + "Progressbar", "Radiobutton", "Scrollbar", "Separator", + "Sizegrip", "Treeview", "Style"] import Tkinter @@ -31,7 +33,9 @@ # Ttk is available for use, or not. def f(self): loadtk(self) - if REQUIRE_TILE: + if REQUIRE_TILE: + # XXX Maybe I should catch a possible TclError and display a + # Warning telling Ttk won't be available ? self.tk.eval('package require tile') return f @@ -51,12 +55,16 @@ self.tk = master.tk - def configure(self, style, *args): + def configure(self, style, **kw): """Sets the default value of the especified option(s) in style.""" - return self.tk.call(self._name, "configure", style, *args) + opts = [("-%s" % opt, value) for opt, value in kw.iteritems()] + opts = Tkinter._flatten(opts) + + return self.tk.call(self._name, "configure", style, *opts) def map(self, style, statespec): + # XXX Missing docstring self.tk.call(self._name, "map", style, statespec) @@ -123,10 +131,14 @@ raise NotImplementedError - def theme_settings(self, themename, script): - """Temporarily sets the current theme to themename, evaluate + def theme_settings(self, themeName, script): + """Temporarily sets the current theme to themeName, evaluate script, then restore the previous theme.""" - raise NotImplementedError + # XXX script may define styles and elements, but it also accepts + # arbitrary Tcl code. It may be more interesting to check + # what are the uses here and change this method so it + # resembles more like Python code than Tcl code. + self.tk.call(self._name, "theme", "settings", themeName, script) def theme_names(self): @@ -165,6 +177,9 @@ Tkinter.Widget.__init__(self, master, widgetName, cnf, kw, extra) + # XXX statespec is said to be a list of state names, but right now both + # functions expects and returns (state method) a string with the states. + def instate(self, statespec, callback=None, *args): """Test the widget's state. @@ -228,10 +243,10 @@ def invoke(self): """Toggles between the selected and deselected states and - invoke the associated command. If the widget is currently - selected, sets the option variable to the option offvalue - option and deselects the widget; otherwise, sets the option - variable to the option onvalue. + invokes the associated command. If the widget is currently + selected, sets the option variable to the offvalue option + and deselects the widget; otherwise, sets the option variable + to the option onvalue. Returns the result of the associated command.""" return self.tk.call(self._w, "invoke") @@ -346,3 +361,116 @@ relief, text, wraplength """ Widget.__init__(self, master, "ttk::label", cnf, kw) + + +class LabelFrame(Widget): + """Ttk Labelframe widget is a container used to group other widgets + together. It has an optional label, which may be a plain text string + or another widget.""" + + def __init__(self, master=None, cnf={}, **kw): + """Construct a Ttk Labelframe with parent master. + + STANDARD OPTIONS + + class, cursor, style, takefocus + + WIDGET-SPECIFIC OPTIONS + labelanchor, text, underline, padding, labelwidget, width, + height + """ + Widget.__init__(self, master, "ttk::labelframe", cnf, kw) + + +class Menubutton(Widget): + """Ttk Menubutton widget displays a textual label and/or image, and + displays a menu when pressed.""" + + def __init__(self, master=None, cnf={}, **kw): + """Construct a Ttk Menubutton with parent master. + + STANDARD OPTIONS + + class, compound, cursor, image, state, style, takefocus, + text, textvariable, underline, width + + WIDGET-SPECIFIC OPTIONS + + direction, menu + """ + Widget.__init__(self, master, "ttk::menubutton", cnf, kw) + + +class Notebook(Widget): pass + + +class PanedWindow(Widget): pass + + +class Progressbar(Widget): pass + + +class Radiobutton(Widget): + """Ttk Radiobutton widgets are used in groups to show or change a + set of mutually-exclusive options.""" + + def __init__(self, master=None, cnf={}, **kw): + """Construct a Ttk Radiobutton with parent master. + + STANDARD OPTIONS + + class, compound, cursor, image, state, style, takefocus, + text, textvariable, underline, width + + WIDGET-SPECIFIC OPTIONS + + command, value, variable + """ + Widget.__init__(self, master, "ttk::radiobutton", cnf, kw) + + + def invoke(self): + """Sets the option variable to the option value, selects the + widget, and invokes the associated command. + + Returns the result of the command, or an empty string if + no command is specified.""" + return self.tk.call(self._w, "invoke") + + +class Scrollbar(Widget): pass + + +class Separator(Widget): + """Ttk Separator widget displays a horizontal or vertical separator + bar.""" + + def __init__(self, master=None, cnf={}, **kw): + """Construct a Ttk Separator with parent master. + + STANDARD OPTIONS + + class, cursor, style, takefocus + + WIDGET-SPECIFIC OPTIONS + + orient + """ + Widget.__init__(self, master, "ttk::separator", cnf, kw) + + +class Sizegrip(Widget): + """Ttk Sizegrip allows the user to resize the containing toplevel + window by pressing and dragging the grip.""" + + def __init__(self, master=None, cnf={}, **kw): + """Construct a Ttk Sizegrip with parent master. + + STANDARD OPTIONS + + class, cursor, state, style, takefocus + """ + Widget.__init__(self, master, "ttk::sizegrip", cnf, kw) + + +class Treeview(Widget): pass Modified: sandbox/trunk/ttk-gsoc/samples/theme_selector.py ============================================================================== --- sandbox/trunk/ttk-gsoc/samples/theme_selector.py (original) +++ sandbox/trunk/ttk-gsoc/samples/theme_selector.py Wed Apr 30 16:12:07 2008 @@ -14,7 +14,7 @@ self.style = Ttk.Style() # XXX Ideally I wouldn't want to create a Tkinter.IntVar to make - # it work with Checkbutton variable option. + # it works with Checkbutton variable option. self.theme_autochange = Tkinter.IntVar(self, 0) self._setup_widgets() @@ -35,7 +35,7 @@ self.themes_combo.bind("<>", self._theme_sel_changed) change_btn = Ttk.Button(self, text='Change Theme', - command=self._change_theme) # XXX how can I set Ttk Button height? + command=self._change_theme) theme_change_checkbtn = Ttk.Checkbutton(self, text="Change themes when combobox item is activated", Modified: sandbox/trunk/ttk-gsoc/samples/widget_state.py ============================================================================== --- sandbox/trunk/ttk-gsoc/samples/widget_state.py (original) +++ sandbox/trunk/ttk-gsoc/samples/widget_state.py Wed Apr 30 16:12:07 2008 @@ -33,8 +33,8 @@ self._setup_widgets() def _set_font(self, extra=0): - self.style.configure("TButton", "-font", - "%s -%d" % (self.font_family, self.base_font_size + extra)) + self.style.configure("TButton", font="%s -%d" % (self.font_family, + self.base_font_size + extra)) def _new_state(self, widget, newtext): widget = self.nametowidget(widget) From python-checkins at python.org Wed Apr 30 16:23:36 2008 From: python-checkins at python.org (nick.coghlan) Date: Wed, 30 Apr 2008 16:23:36 +0200 (CEST) Subject: [Python-checkins] r62593 - python/trunk/Doc/using/cmdline.rst Message-ID: <20080430142336.B992E1E4022@bag.python.org> Author: nick.coghlan Date: Wed Apr 30 16:23:36 2008 New Revision: 62593 Log: Update command line usage documentation to reflect 2.6 changes (also includes some minor cleanups). Addresses TODO list issue 2258 Modified: python/trunk/Doc/using/cmdline.rst Modified: python/trunk/Doc/using/cmdline.rst ============================================================================== --- python/trunk/Doc/using/cmdline.rst (original) +++ python/trunk/Doc/using/cmdline.rst Wed Apr 30 16:23:36 2008 @@ -28,20 +28,25 @@ python myscript.py +.. _using-on-interface-options: + Interface options ~~~~~~~~~~~~~~~~~ -The interpreter interface resembles that of the UNIX shell: +The interpreter interface resembles that of the UNIX shell, but provides some +additional methods of invocation: * When called with standard input connected to a tty device, it prompts for commands and executes them until an EOF (an end-of-file character, you can produce that with *Ctrl-D* on UNIX or *Ctrl-Z, Enter* on Windows) is read. * When called with a file name argument or with a file as standard input, it reads and executes a script from that file. +* When called with a directory name argument, it reads and executes an + appropriately named script from that directory. * When called with ``-c command``, it executes the Python statement(s) given as *command*. Here *command* may contain multiple statements separated by newlines. Leading whitespace is significant in Python statements! -* When called with ``-m module-name``, the given module is searched on the +* When called with ``-m module-name``, the given module is located on the Python module path and executed as a script. In non-interactive mode, the entire input is parsed before it is executed. @@ -58,25 +63,31 @@ normal module code. If this option is given, the first element of :data:`sys.argv` will be - ``"-c"``. + ``"-c"`` and the current directory will be added to the start of + :data:`sys.path` (allowing modules in that directory to be imported as top + level modules). .. cmdoption:: -m - Search :data:`sys.path` for the named module and run the corresponding module - file as if it were executed with ``python modulefile.py`` as a script. + Search :data:`sys.path` for the named module and execute its contents as + the :mod:`__main__` module. Since the argument is a *module* name, you must not give a file extension - (``.py``). However, the ``module-name`` does not have to be a valid Python - identifer (e.g. you can use a file name including a hyphen). + (``.py``). The ``module-name`` should be a valid Python module name, but + the implementation may not always enforce this (e.g. it may allow you to + use a name that includes a hyphen). .. note:: This option cannot be used with builtin modules and extension modules - written in C, since they do not have Python module files. + written in C, since they do not have Python module files. However, it + can still be used for precompiled modules, even if the original source + file is not available. If this option is given, the first element of :data:`sys.argv` will be the - full path to the module file. + full path to the module file. As with the :option:`-c` option, the current + directory will be added to the start of :data:`sys.path`. Many standard library modules contain code that is invoked on their execution as a script. An example is the :mod:`timeit` module:: @@ -90,34 +101,52 @@ :pep:`338` -- Executing modules as scripts + .. versionadded:: 2.4 + .. versionchanged:: 2.5 - The module name can now include packages. + The named module can now be located inside a package. + + +.. describe:: - + + Read commands from standard input (:data:`sys.stdin`). If standard input is + a terminal, :option:`-i` is implied. + + If this option is given, the first element of :data:`sys.argv` will be + ``"-"`` and the current directory will be added to the start of + :data:`sys.path`. .. describe::