From python-checkins at python.org Mon Sep 1 16:13:43 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 1 Sep 2008 16:13:43 +0200 (CEST) Subject: [Python-checkins] r66097 - in python/trunk: Lib/test/test_fileio.py Misc/NEWS Modules/_fileio.c Message-ID: <20080901141343.AB2311E4005@bag.python.org> Author: benjamin.peterson Date: Mon Sep 1 16:13:43 2008 New Revision: 66097 Log: #3703 unhelpful _fileio.FileIO error message when trying to open a directory Reviewer: Gregory P. Smith Modified: python/trunk/Lib/test/test_fileio.py python/trunk/Misc/NEWS python/trunk/Modules/_fileio.c Modified: python/trunk/Lib/test/test_fileio.py ============================================================================== --- python/trunk/Lib/test/test_fileio.py (original) +++ python/trunk/Lib/test/test_fileio.py Mon Sep 1 16:13:43 2008 @@ -101,6 +101,17 @@ # should raise on closed file self.assertRaises(ValueError, method) + def testOpendir(self): + # Issue 3703: opening a directory should fill the errno + # Windows always returns "[Errno 13]: Permission denied + # Unix calls dircheck() and returns "[Errno 21]: Is a directory" + try: + _fileio._FileIO('.', 'r') + except IOError as e: + self.assertNotEqual(e.errno, 0) + else: + self.fail("Should have raised IOError") + class OtherFileTests(unittest.TestCase): Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Sep 1 16:13:43 2008 @@ -52,6 +52,9 @@ - Fixed two format strings in the _collections module. +- #3703 _fileio.FileIO gave unhelpful error message when trying to open a + directory. + Extension Modules ----------------- Modified: python/trunk/Modules/_fileio.c ============================================================================== --- python/trunk/Modules/_fileio.c (original) +++ python/trunk/Modules/_fileio.c Mon Sep 1 16:13:43 2008 @@ -262,7 +262,7 @@ #endif self->fd = open(name, flags, 0666); Py_END_ALLOW_THREADS - if (self->fd < 0 || dircheck(self) < 0) { + if (self->fd < 0) { #ifdef MS_WINDOWS PyErr_SetFromErrnoWithUnicodeFilename(PyExc_IOError, widename); #else @@ -270,6 +270,8 @@ #endif goto error; } + if(dircheck(self) < 0) + goto error; } goto done; From python-checkins at python.org Mon Sep 1 16:15:55 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 1 Sep 2008 16:15:55 +0200 (CEST) Subject: [Python-checkins] r66098 - python/trunk/Doc/library/codecs.rst Message-ID: <20080901141555.BBA191E401F@bag.python.org> Author: georg.brandl Date: Mon Sep 1 16:15:55 2008 New Revision: 66098 Log: #3749: fix c'n'p errors. Modified: python/trunk/Doc/library/codecs.rst Modified: python/trunk/Doc/library/codecs.rst ============================================================================== --- python/trunk/Doc/library/codecs.rst (original) +++ python/trunk/Doc/library/codecs.rst Mon Sep 1 16:15:55 2008 @@ -51,13 +51,13 @@ Codec Interface). The functions/methods are expected to work in a stateless mode. - *incrementalencoder* and *incrementalencoder*: These have to be factory + *incrementalencoder* and *incrementaldecoder*: These have to be factory functions providing the following interface: ``factory(errors='strict')`` The factory functions must return objects providing the interfaces defined by - the base classes :class:`IncrementalEncoder` and :class:`IncrementalEncoder`, + the base classes :class:`IncrementalEncoder` and :class:`IncrementalDecoder`, respectively. Incremental codecs can maintain state. *streamreader* and *streamwriter*: These have to be factory functions providing @@ -477,7 +477,7 @@ The *errors* argument will be assigned to an attribute of the same name. Assigning to this attribute makes it possible to switch between different error - handling strategies during the lifetime of the :class:`IncrementalEncoder` + handling strategies during the lifetime of the :class:`IncrementalDecoder` object. The set of allowed values for the *errors* argument can be extended with From python-checkins at python.org Mon Sep 1 16:18:30 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 1 Sep 2008 16:18:30 +0200 (CEST) Subject: [Python-checkins] r66099 - in python/trunk: Misc/NEWS Python/import.c Message-ID: <20080901141830.97C5B1E4005@bag.python.org> Author: benjamin.peterson Date: Mon Sep 1 16:18:30 2008 New Revision: 66099 Log: Fix compilation when --without-threads is given #3683 Reviewer: Georg Brandl, Benjamin Peterson Modified: python/trunk/Misc/NEWS python/trunk/Python/import.c Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Sep 1 16:18:30 2008 @@ -12,6 +12,8 @@ Core and Builtins ----------------- +- Issue #3683: Fix compilation when --without-threads is given. + - Issue #3668: Fix a memory leak with the "s*" argument parser in PyArg_ParseTuple and friends, which occurred when the argument for "s*" was correctly parsed but parsing of subsequent arguments failed. @@ -52,8 +54,8 @@ - Fixed two format strings in the _collections module. -- #3703 _fileio.FileIO gave unhelpful error message when trying to open a - directory. +- Issue #3703: _fileio.FileIO gave unhelpful error message when trying to open a + directory. Extension Modules ----------------- Modified: python/trunk/Python/import.c ============================================================================== --- python/trunk/Python/import.c (original) +++ python/trunk/Python/import.c Mon Sep 1 16:18:30 2008 @@ -2029,7 +2029,7 @@ else { PyErr_Clear(); } - +#ifdef WITH_THREAD /* check the import lock * me might be -1 but I ignore the error here, the lock function * takes care of the problem */ @@ -2045,6 +2045,9 @@ name); return NULL; } +#else + return PyImport_ImportModule(name); +#endif } /* Forward declarations for helper routines */ From python-checkins at python.org Mon Sep 1 16:24:05 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Mon, 1 Sep 2008 16:24:05 +0200 (CEST) Subject: [Python-checkins] r66100 - python/trunk/Lib/msilib/__init__.py Message-ID: <20080901142405.31ACB1E4005@bag.python.org> Author: hirokazu.yamamoto Date: Mon Sep 1 16:24:04 2008 New Revision: 66100 Log: Issue #3732: Backported r53335 to supress deprecation warning. Reviewed by Benjamin Peterson. Modified: python/trunk/Lib/msilib/__init__.py Modified: python/trunk/Lib/msilib/__init__.py ============================================================================== --- python/trunk/Lib/msilib/__init__.py (original) +++ python/trunk/Lib/msilib/__init__.py Mon Sep 1 16:24:04 2008 @@ -2,7 +2,7 @@ # Copyright (C) 2005 Martin v. L?wis # Licensed to PSF under a Contributor Agreement. from _msi import * -import sets, os, string, re +import os, string, re Win64=0 @@ -184,7 +184,7 @@ def __init__(self, name): self.name = name self.files = [] - self.filenames = sets.Set() + self.filenames = set() self.index = 0 def gen_id(self, file): @@ -215,7 +215,7 @@ os.unlink(filename) db.Commit() -_directories = sets.Set() +_directories = set() class Directory: def __init__(self, db, cab, basedir, physical, _logical, default, componentflags=None): """Create a new directory in the Directory table. There is a current component @@ -239,8 +239,8 @@ self.physical = physical self.logical = logical self.component = None - self.short_names = sets.Set() - self.ids = sets.Set() + self.short_names = set() + self.ids = set() self.keyfiles = {} self.componentflags = componentflags if basedir: From python-checkins at python.org Mon Sep 1 16:30:10 2008 From: python-checkins at python.org (vinay.sajip) Date: Mon, 1 Sep 2008 16:30:10 +0200 (CEST) Subject: [Python-checkins] r66103 - python/trunk/Lib/logging/__init__.py Message-ID: <20080901143010.D50321E4005@bag.python.org> Author: vinay.sajip Date: Mon Sep 1 16:30:10 2008 New Revision: 66103 Log: logging: fixed lack of use of encoding attribute specified on a stream. Modified: python/trunk/Lib/logging/__init__.py Modified: python/trunk/Lib/logging/__init__.py ============================================================================== --- python/trunk/Lib/logging/__init__.py (original) +++ python/trunk/Lib/logging/__init__.py Mon Sep 1 16:30:10 2008 @@ -719,6 +719,7 @@ to a stream. Note that this class does not close the stream, as sys.stdout or sys.stderr may be used. """ + def __init__(self, strm=None): """ Initialize the handler. @@ -743,10 +744,11 @@ Emit a record. If a formatter is specified, it is used to format the record. - The record is then written to the stream with a trailing newline - [N.B. this may be removed depending on feedback]. If exception - information is present, it is formatted using - traceback.print_exception and appended to the stream. + The record is then written to the stream with a trailing newline. If + exception information is present, it is formatted using + traceback.print_exception and appended to the stream. If the stream + has an 'encoding' attribute, it is used to encode the message before + output to the stream. """ try: msg = self.format(record) @@ -755,7 +757,10 @@ self.stream.write(fs % msg) else: try: - self.stream.write(fs % msg) + if hasattr(self.stream, 'encoding'): + self.stream.write(fs % msg.encode(self.stream.encoding)) + else: + self.stream.write(fs % msg) except UnicodeError: self.stream.write(fs % msg.encode("UTF-8")) self.flush() From python-checkins at python.org Mon Sep 1 16:32:59 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Mon, 1 Sep 2008 16:32:59 +0200 (CEST) Subject: [Python-checkins] r66104 - python/trunk/Lib/platform.py Message-ID: <20080901143259.31F6D1E4005@bag.python.org> Author: hirokazu.yamamoto Date: Mon Sep 1 16:32:58 2008 New Revision: 66104 Log: Issue #3748: platform.architecture() printed vogus message on windows. Reviewed by Marc-Andre Lemburg. Modified: python/trunk/Lib/platform.py Modified: python/trunk/Lib/platform.py ============================================================================== --- python/trunk/Lib/platform.py (original) +++ python/trunk/Lib/platform.py Mon Sep 1 16:32:58 2008 @@ -964,6 +964,9 @@ case the command should fail. """ + if sys.platform in ('dos','win32','win16','os2'): + # XXX Others too ? + return default target = _follow_symlinks(target) try: f = os.popen('file %s 2> /dev/null' % target) From python-checkins at python.org Mon Sep 1 16:34:00 2008 From: python-checkins at python.org (vinay.sajip) Date: Mon, 1 Sep 2008 16:34:00 +0200 (CEST) Subject: [Python-checkins] r66105 - python/trunk/Misc/NEWS Message-ID: <20080901143400.50D711E4005@bag.python.org> Author: vinay.sajip Date: Mon Sep 1 16:33:59 2008 New Revision: 66105 Log: logging: fixed lack of use of encoding attribute specified on a stream. Modified: python/trunk/Misc/NEWS Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Sep 1 16:33:59 2008 @@ -15,10 +15,10 @@ - Issue #3683: Fix compilation when --without-threads is given. - Issue #3668: Fix a memory leak with the "s*" argument parser in - PyArg_ParseTuple and friends, which occurred when the argument for "s*" + PyArg_ParseTuple and friends, which occurred when the argument for "s*" was correctly parsed but parsing of subsequent arguments failed. -- Issue #2534: speed up isinstance() and issubclass() by 50-70%, so as to +- Issue #2534: speed up isinstance() and issubclass() by 50-70%, so as to match Python 2.5 speed despite the __instancecheck__ / __subclasscheck__ mechanism. In the process, fix a bug where isinstance() and issubclass(), when given a tuple of classes as second argument, were looking up @@ -50,6 +50,8 @@ Library ------- +- logging: fixed lack of use of encoding attribute specified on a stream. + - Silenced a trivial compiler warning in the sqlite module. - Fixed two format strings in the _collections module. From python-checkins at python.org Mon Sep 1 16:39:55 2008 From: python-checkins at python.org (georg.brandl) Date: Mon, 1 Sep 2008 16:39:55 +0200 (CEST) Subject: [Python-checkins] r66107 - doctools/trunk/sphinx/templates/modindex.html Message-ID: <20080901143955.DD9331E4005@bag.python.org> Author: georg.brandl Date: Mon Sep 1 16:39:55 2008 New Revision: 66107 Log: When building html help, no scripts are embedded. Modified: doctools/trunk/sphinx/templates/modindex.html Modified: doctools/trunk/sphinx/templates/modindex.html ============================================================================== --- doctools/trunk/sphinx/templates/modindex.html (original) +++ doctools/trunk/sphinx/templates/modindex.html Mon Sep 1 16:39:55 2008 @@ -1,7 +1,7 @@ {% extends "layout.html" %} {% set title = _('Global Module Index') %} {% block extrahead %} -{% if collapse_modindex %} +{% if builder != 'htmlhelp' and collapse_modindex %} From python-checkins at python.org Mon Sep 1 17:08:07 2008 From: python-checkins at python.org (vinay.sajip) Date: Mon, 1 Sep 2008 17:08:07 +0200 (CEST) Subject: [Python-checkins] r66110 - python/trunk/Doc/library/logging.rst Message-ID: <20080901150807.CB83F1E4005@bag.python.org> Author: vinay.sajip Date: Mon Sep 1 17:08:07 2008 New Revision: 66110 Log: Added section about configuring logging in a library. Thanks to Thomas Heller for the idea. Modified: python/trunk/Doc/library/logging.rst Modified: python/trunk/Doc/library/logging.rst ============================================================================== --- python/trunk/Doc/library/logging.rst (original) +++ python/trunk/Doc/library/logging.rst Mon Sep 1 17:08:07 2008 @@ -422,6 +422,45 @@ code approach, mainly separation of configuration and code and the ability of noncoders to easily modify the logging properties. +Configuring Logging for a Library +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +When developing a library which uses logging, some consideration needs to be +given to its configuration. If the using application does not use logging, and +library code makes logging calls, then a one-off message "No handlers could be +found for logger X.Y.Z" is printed to the console. This message is intended +to catch mistakes in logging configuration, but will confuse an application +developer who is not aware of logging by the library. + +In addition to documenting how a library uses logging, a good way to configure +library logging so that it does not cause a spurious message is to add a +handler which does nothing. This avoids the message being printed, since a +handler will be found: it just doesn't produce any output. If the library user +configures logging for application use, presumably that configuration will add +some handlers, and if levels are suitably configured then logging calls made +in library code will send output to those handlers, as normal. + +A do-nothing handler can be simply defined as follows:: + + import logging + + class NullHandler(logging.Handler): + def emit(self, record): + pass + +An instance of this handler should be added to the top-level logger of the +logging namespace used by the library. If all logging by a library *foo* is +done using loggers with names matching "foo.x.y", then the code:: + + import logging + + h = NullHandler() + logging.getLogger("foo").addHandler(h) + +should have the desired effect. If an organisation produces a number of +libraries, then the logger name specified can be "orgname.foo" rather than +just "foo". + Logging Levels -------------- From buildbot at python.org Mon Sep 1 17:29:25 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 15:29:25 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080901152925.220EE1E401E@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/471 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: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_posix ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 17:35:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 15:35:38 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080901153539.17AD61E4005@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/273 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: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 17:59:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 15:59:16 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080901155916.857EF1E4005@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/170 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: hirokazu.yamamoto,vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_asynchat test_socket make: *** [buildbottest] Error 1 sincerely, -The Buildbot From stackless-checkins-bounces at stackless.com Mon Sep 1 18:27:25 2008 From: stackless-checkins-bounces at stackless.com (stackless-checkins-bounces at stackless.com) Date: Mon, 01 Sep 2008 18:27:25 +0200 Subject: [Python-checkins] Your message to Stackless-checkins awaits moderator approval Message-ID: Your mail to 'Stackless-checkins' with the subject r66112 - in stackless/branches/py3k: Demo/parser/unparse.py Doc/bugs.rst Doc/c-api/bytes.rst Doc/c-api/file.rst Doc/c-api/object.rst Doc/c-api/typeobj.rst Doc/includes/mp_distributing.py Doc/includes/mp_pool.py Doc/includes/mp_synchronize.py Doc/includes/mp_webserver.py Doc/includes/mp_workers.py Doc/library/multiprocessing.rst Doc/library/re.rst Doc/library/ssl.rst Doc/library/symtable.rst Doc/library/threading.rst Doc/library/types.rst Doc/library/urllib.parse.rst Doc/reference/datamodel.rst Doc/reference/expressions.rst Doc/tutorial/interpreter.rst Grammar/Grammar Include/abstract.h Include/bytesobject.h Include/cobject.h Include/memoryobject.h Include/object.h Include/patchlevel.h Include/pymath.h Lib/_strptime.py Lib/base64.py Lib/bsddb/__init__.py Lib/bsddb/db.py Lib/bsddb/dbobj.py Lib/bsddb/dbrecio.py Lib/bsddb/dbshelve.py Lib/bsddb/dbtables.py Lib/bsddb/dbutils.py Lib/bsddb/test/test_1413192.py Lib/bsddb/test/test_all.py Lib/bsddb/test/test_associate.py Lib! /bsddb/test/test_basics.py Lib/bsddb/test/test_compare.py Lib/bsddb/test/test_compat.py Lib/bsddb/test/test_cursor_pget_bug.py Lib/bsddb/test/test_dbobj.py Lib/bsddb/test/test_dbshelve.py Lib/bsddb/test/test_dbtables.py Lib/bsddb/test/test_distributed_transactions.py Lib/bsddb/test/test_early_close.py Lib/bsddb/test/test_get_none.py Lib/bsddb/test/test_join.py Lib/bsddb/test/test_lock.py Lib/bsddb/test/test_misc.py Lib/bsddb/test/test_pickle.py Lib/bsddb/test/test_queue.py Lib/bsddb/test/test_recno.py Lib/bsddb/test/test_replication.py Lib/bsddb/test/test_sequence.py Lib/bsddb/test/test_thread.py Lib/ctypes/__init__.py Lib/ctypes/test/test_frombuffer.py Lib/ctypes/test/test_memfunctions.py Lib/ctypes/test/test_pointers.py Lib/ctypes/wintypes.py Lib/decimal.py Lib/distutils/__init__.py Lib/distutils/cygwinccompiler.py Lib/distutils/emxccompiler.py Lib/distutils/sysconfig.py Lib/distutils/util.py Lib/distutils/version.py Lib/distutils/versionpredicate.py Lib/email/quoprimime.! py Lib/email/utils.py Lib/encodings/aliases.py Lib/encodings/idna.py Lib/ftplib.py Lib/hashlib.py Lib/html/parser.py Lib/http/cookiejar.py Lib/http/cookies.py Lib/idlelib/idlever.py Lib/imaplib.py Lib/json/decoder.py Lib/lib2to3 Lib/lib2to3/refactor.py Lib/logging/__init__.py Lib/logging/handlers.py Lib/multiprocessing/conne Is being held until the list moderator can review it for approval. The reason it is being held: Message body is too big: 1101874 bytes with a limit of 500 KB Either the message will get posted to the list, or you will receive notification of the moderator's decision. If you would like to cancel this posting, please visit the following URL: http://www.stackless.com/mailman/confirm/stackless-checkins/3c31d49c3207864a5508178cf901924a2fb1e2f1 From python-checkins at python.org Mon Sep 1 18:47:26 2008 From: python-checkins at python.org (jesse.noller) Date: Mon, 1 Sep 2008 18:47:26 +0200 (CEST) Subject: [Python-checkins] r66114 - in python/trunk/Lib/multiprocessing: __init__.py sharedctypes.py synchronize.py util.py Message-ID: <20080901164726.332461E4005@bag.python.org> Author: jesse.noller Date: Mon Sep 1 18:47:25 2008 New Revision: 66114 Log: Submit Nick's patch for issue 3589, reviewed by jnoller Modified: python/trunk/Lib/multiprocessing/__init__.py python/trunk/Lib/multiprocessing/sharedctypes.py python/trunk/Lib/multiprocessing/synchronize.py python/trunk/Lib/multiprocessing/util.py Modified: python/trunk/Lib/multiprocessing/__init__.py ============================================================================== --- python/trunk/Lib/multiprocessing/__init__.py (original) +++ python/trunk/Lib/multiprocessing/__init__.py Mon Sep 1 18:47:25 2008 @@ -97,13 +97,6 @@ m.start() return m -def Pipe(duplex=True): - ''' - Returns two connection object connected by a pipe - ''' - from multiprocessing.connection import Pipe - return Pipe(duplex) - def cpu_count(): ''' Returns the number of CPUs in the system @@ -138,134 +131,28 @@ from multiprocessing.forking import freeze_support freeze_support() -def get_logger(): - ''' - Return package logger -- if it does not already exist then it is created - ''' - from multiprocessing.util import get_logger - return get_logger() - -def log_to_stderr(level=None): - ''' - Turn on logging and add a handler which prints to stderr - ''' - from multiprocessing.util import log_to_stderr - return log_to_stderr(level) - def allow_connection_pickling(): ''' Install support for sending connections and sockets between processes ''' from multiprocessing import reduction -# -# Definitions depending on native semaphores -# - -def Lock(): - ''' - Returns a non-recursive lock object - ''' - from multiprocessing.synchronize import Lock - return Lock() - -def RLock(): - ''' - Returns a recursive lock object - ''' - from multiprocessing.synchronize import RLock - return RLock() - -def Condition(lock=None): - ''' - Returns a condition object - ''' - from multiprocessing.synchronize import Condition - return Condition(lock) - -def Semaphore(value=1): - ''' - Returns a semaphore object - ''' - from multiprocessing.synchronize import Semaphore - return Semaphore(value) - -def BoundedSemaphore(value=1): - ''' - Returns a bounded semaphore object - ''' - from multiprocessing.synchronize import BoundedSemaphore - return BoundedSemaphore(value) - -def Event(): - ''' - Returns an event object - ''' - from multiprocessing.synchronize import Event - return Event() - -def Queue(maxsize=0): - ''' - Returns a queue object - ''' - from multiprocessing.queues import Queue - return Queue(maxsize) - -def JoinableQueue(maxsize=0): - ''' - Returns a queue object - ''' - from multiprocessing.queues import JoinableQueue - return JoinableQueue(maxsize) - -def Pool(processes=None, initializer=None, initargs=()): - ''' - Returns a process pool object - ''' - from multiprocessing.pool import Pool - return Pool(processes, initializer, initargs) - -def RawValue(typecode_or_type, *args): - ''' - Returns a shared object - ''' - from multiprocessing.sharedctypes import RawValue - return RawValue(typecode_or_type, *args) - -def RawArray(typecode_or_type, size_or_initializer): - ''' - Returns a shared array - ''' - from multiprocessing.sharedctypes import RawArray - return RawArray(typecode_or_type, size_or_initializer) - -def Value(typecode_or_type, *args, **kwds): - ''' - Returns a synchronized shared object - ''' - from multiprocessing.sharedctypes import Value - return Value(typecode_or_type, *args, **kwds) - -def Array(typecode_or_type, size_or_initializer, **kwds): - ''' - Returns a synchronized shared array - ''' - from multiprocessing.sharedctypes import Array - return Array(typecode_or_type, size_or_initializer, **kwds) +# Alias some names from submodules in the package namespace +from multiprocessing.connection import Pipe +from multiprocessing.util import (get_logger, log_to_stderr) # +# Definitions depending on native semaphores # -# +# Alias some names from submodules in the package namespace +from multiprocessing.synchronize import (Lock, RLock, Condition, Event, + Semaphore, BoundedSemaphore) +from multiprocessing.queues import (Queue, JoinableQueue) +from multiprocessing.pool import Pool +from multiprocessing.sharedctypes import (RawValue, Value, + RawArray, Array) if sys.platform == 'win32': - - def set_executable(executable): - ''' - Sets the path to a python.exe or pythonw.exe binary used to run - child processes on Windows instead of sys.executable. - Useful for people embedding Python. - ''' - from multiprocessing.forking import set_executable - set_executable(executable) + from multiprocessing.forking import set_executable __all__ += ['set_executable'] Modified: python/trunk/Lib/multiprocessing/sharedctypes.py ============================================================================== --- python/trunk/Lib/multiprocessing/sharedctypes.py (original) +++ python/trunk/Lib/multiprocessing/sharedctypes.py Mon Sep 1 18:47:25 2008 @@ -63,7 +63,7 @@ def Value(typecode_or_type, *args, **kwds): ''' - Return a synchronization wrapper for a Value + Return a synchronization wrapper for a RawValue ''' lock = kwds.pop('lock', None) if kwds: Modified: python/trunk/Lib/multiprocessing/synchronize.py ============================================================================== --- python/trunk/Lib/multiprocessing/synchronize.py (original) +++ python/trunk/Lib/multiprocessing/synchronize.py Mon Sep 1 18:47:25 2008 @@ -65,7 +65,9 @@ # class Semaphore(SemLock): - + ''' + A semaphore object + ''' def __init__(self, value=1): SemLock.__init__(self, SEMAPHORE, value, SEM_VALUE_MAX) @@ -84,7 +86,9 @@ # class BoundedSemaphore(Semaphore): - + ''' + A bounded semaphore object + ''' def __init__(self, value=1): SemLock.__init__(self, SEMAPHORE, value, value) @@ -101,7 +105,9 @@ # class Lock(SemLock): - + ''' + A non-recursive lock object + ''' def __init__(self): SemLock.__init__(self, SEMAPHORE, 1, 1) @@ -126,7 +132,9 @@ # class RLock(SemLock): - + ''' + A recursive lock object + ''' def __init__(self): SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1) @@ -152,6 +160,9 @@ # class Condition(object): + ''' + A condition object + ''' def __init__(self, lock=None): self._lock = lock or RLock() @@ -252,7 +263,9 @@ # class Event(object): - + ''' + An event object + ''' def __init__(self): self._cond = Condition(Lock()) self._flag = Semaphore(0) Modified: python/trunk/Lib/multiprocessing/util.py ============================================================================== --- python/trunk/Lib/multiprocessing/util.py (original) +++ python/trunk/Lib/multiprocessing/util.py Mon Sep 1 18:47:25 2008 @@ -54,7 +54,7 @@ def get_logger(): ''' - Returns logger used by multiprocessing + Return package logger -- if it does not already exist then it is created ''' global _logger From buildbot at python.org Mon Sep 1 19:01:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:01:29 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080901170129.BC7961E4005@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/3871 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: hirokazu.yamamoto,vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 19:10:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:10:33 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080901171033.9FA1F1E4005@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/221 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: jesse.noller,vinay.sajip BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Mon Sep 1 19:10:47 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 1 Sep 2008 19:10:47 +0200 (CEST) Subject: [Python-checkins] r66115 - in python/trunk/Lib/multiprocessing: __init__.py managers.py sharedctypes.py synchronize.py util.py Message-ID: <20080901171047.2DB9B1E4005@bag.python.org> Author: benjamin.peterson Date: Mon Sep 1 19:10:46 2008 New Revision: 66115 Log: revert r66114 for Jesse Modified: python/trunk/Lib/multiprocessing/__init__.py python/trunk/Lib/multiprocessing/managers.py python/trunk/Lib/multiprocessing/sharedctypes.py python/trunk/Lib/multiprocessing/synchronize.py python/trunk/Lib/multiprocessing/util.py Modified: python/trunk/Lib/multiprocessing/__init__.py ============================================================================== --- python/trunk/Lib/multiprocessing/__init__.py (original) +++ python/trunk/Lib/multiprocessing/__init__.py Mon Sep 1 19:10:46 2008 @@ -97,6 +97,13 @@ m.start() return m +def Pipe(duplex=True): + ''' + Returns two connection object connected by a pipe + ''' + from multiprocessing.connection import Pipe + return Pipe(duplex) + def cpu_count(): ''' Returns the number of CPUs in the system @@ -131,28 +138,134 @@ from multiprocessing.forking import freeze_support freeze_support() +def get_logger(): + ''' + Return package logger -- if it does not already exist then it is created + ''' + from multiprocessing.util import get_logger + return get_logger() + +def log_to_stderr(level=None): + ''' + Turn on logging and add a handler which prints to stderr + ''' + from multiprocessing.util import log_to_stderr + return log_to_stderr(level) + def allow_connection_pickling(): ''' Install support for sending connections and sockets between processes ''' from multiprocessing import reduction -# Alias some names from submodules in the package namespace -from multiprocessing.connection import Pipe -from multiprocessing.util import (get_logger, log_to_stderr) - # # Definitions depending on native semaphores # -# Alias some names from submodules in the package namespace -from multiprocessing.synchronize import (Lock, RLock, Condition, Event, - Semaphore, BoundedSemaphore) -from multiprocessing.queues import (Queue, JoinableQueue) -from multiprocessing.pool import Pool -from multiprocessing.sharedctypes import (RawValue, Value, - RawArray, Array) + +def Lock(): + ''' + Returns a non-recursive lock object + ''' + from multiprocessing.synchronize import Lock + return Lock() + +def RLock(): + ''' + Returns a recursive lock object + ''' + from multiprocessing.synchronize import RLock + return RLock() + +def Condition(lock=None): + ''' + Returns a condition object + ''' + from multiprocessing.synchronize import Condition + return Condition(lock) + +def Semaphore(value=1): + ''' + Returns a semaphore object + ''' + from multiprocessing.synchronize import Semaphore + return Semaphore(value) + +def BoundedSemaphore(value=1): + ''' + Returns a bounded semaphore object + ''' + from multiprocessing.synchronize import BoundedSemaphore + return BoundedSemaphore(value) + +def Event(): + ''' + Returns an event object + ''' + from multiprocessing.synchronize import Event + return Event() + +def Queue(maxsize=0): + ''' + Returns a queue object + ''' + from multiprocessing.queues import Queue + return Queue(maxsize) + +def JoinableQueue(maxsize=0): + ''' + Returns a queue object + ''' + from multiprocessing.queues import JoinableQueue + return JoinableQueue(maxsize) + +def Pool(processes=None, initializer=None, initargs=()): + ''' + Returns a process pool object + ''' + from multiprocessing.pool import Pool + return Pool(processes, initializer, initargs) + +def RawValue(typecode_or_type, *args): + ''' + Returns a shared object + ''' + from multiprocessing.sharedctypes import RawValue + return RawValue(typecode_or_type, *args) + +def RawArray(typecode_or_type, size_or_initializer): + ''' + Returns a shared array + ''' + from multiprocessing.sharedctypes import RawArray + return RawArray(typecode_or_type, size_or_initializer) + +def Value(typecode_or_type, *args, **kwds): + ''' + Returns a synchronized shared object + ''' + from multiprocessing.sharedctypes import Value + return Value(typecode_or_type, *args, **kwds) + +def Array(typecode_or_type, size_or_initializer, **kwds): + ''' + Returns a synchronized shared array + ''' + from multiprocessing.sharedctypes import Array + return Array(typecode_or_type, size_or_initializer, **kwds) + +# +# +# if sys.platform == 'win32': - from multiprocessing.forking import set_executable + + def set_executable(executable): + ''' + Sets the path to a python.exe or pythonw.exe binary used to run + child processes on Windows instead of sys.executable. + Useful for people embedding Python. + ''' + from multiprocessing.forking import set_executable + set_executable(executable) __all__ += ['set_executable'] Modified: python/trunk/Lib/multiprocessing/managers.py ============================================================================== --- python/trunk/Lib/multiprocessing/managers.py (original) +++ python/trunk/Lib/multiprocessing/managers.py Mon Sep 1 19:10:46 2008 @@ -371,7 +371,13 @@ self.id_to_obj[ident] = (obj, set(exposed), method_to_typeid) if ident not in self.id_to_refcount: - self.id_to_refcount[ident] = None + self.id_to_refcount[ident] = 0 + # increment the reference count immediately, to avoid + # this object being garbage collected before a Proxy + # object for it can be created. The caller of create() + # is responsible for doing a decref once the Proxy object + # has been created. + self.incref(c, ident) return ident, tuple(exposed) finally: self.mutex.release() @@ -393,11 +399,7 @@ def incref(self, c, ident): self.mutex.acquire() try: - try: - self.id_to_refcount[ident] += 1 - except TypeError: - assert self.id_to_refcount[ident] is None - self.id_to_refcount[ident] = 1 + self.id_to_refcount[ident] += 1 finally: self.mutex.release() @@ -634,6 +636,8 @@ token, self._serializer, manager=self, authkey=self._authkey, exposed=exp ) + conn = self._Client(token.address, authkey=self._authkey) + dispatch(conn, None, 'decref', (token.id,)) return proxy temp.__name__ = typeid setattr(cls, typeid, temp) @@ -726,10 +730,13 @@ elif kind == '#PROXY': exposed, token = result proxytype = self._manager._registry[token.typeid][-1] - return proxytype( + proxy = proxytype( token, self._serializer, manager=self._manager, authkey=self._authkey, exposed=exposed ) + conn = self._Client(token.address, authkey=self._authkey) + dispatch(conn, None, 'decref', (token.id,)) + return proxy raise convert_to_error(kind, result) def _getvalue(self): Modified: python/trunk/Lib/multiprocessing/sharedctypes.py ============================================================================== --- python/trunk/Lib/multiprocessing/sharedctypes.py (original) +++ python/trunk/Lib/multiprocessing/sharedctypes.py Mon Sep 1 19:10:46 2008 @@ -63,7 +63,7 @@ def Value(typecode_or_type, *args, **kwds): ''' - Return a synchronization wrapper for a RawValue + Return a synchronization wrapper for a Value ''' lock = kwds.pop('lock', None) if kwds: Modified: python/trunk/Lib/multiprocessing/synchronize.py ============================================================================== --- python/trunk/Lib/multiprocessing/synchronize.py (original) +++ python/trunk/Lib/multiprocessing/synchronize.py Mon Sep 1 19:10:46 2008 @@ -65,9 +65,7 @@ # class Semaphore(SemLock): - ''' - A semaphore object - ''' + def __init__(self, value=1): SemLock.__init__(self, SEMAPHORE, value, SEM_VALUE_MAX) @@ -86,9 +84,7 @@ # class BoundedSemaphore(Semaphore): - ''' - A bounded semaphore object - ''' + def __init__(self, value=1): SemLock.__init__(self, SEMAPHORE, value, value) @@ -105,9 +101,7 @@ # class Lock(SemLock): - ''' - A non-recursive lock object - ''' + def __init__(self): SemLock.__init__(self, SEMAPHORE, 1, 1) @@ -132,9 +126,7 @@ # class RLock(SemLock): - ''' - A recursive lock object - ''' + def __init__(self): SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1) @@ -160,9 +152,6 @@ # class Condition(object): - ''' - A condition object - ''' def __init__(self, lock=None): self._lock = lock or RLock() @@ -263,9 +252,7 @@ # class Event(object): - ''' - An event object - ''' + def __init__(self): self._cond = Condition(Lock()) self._flag = Semaphore(0) Modified: python/trunk/Lib/multiprocessing/util.py ============================================================================== --- python/trunk/Lib/multiprocessing/util.py (original) +++ python/trunk/Lib/multiprocessing/util.py Mon Sep 1 19:10:46 2008 @@ -54,7 +54,7 @@ def get_logger(): ''' - Return package logger -- if it does not already exist then it is created + Returns logger used by multiprocessing ''' global _logger From buildbot at python.org Mon Sep 1 19:13:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:13:34 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 trunk Message-ID: <20080901171334.BD4101E4005@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/81 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: nelson-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jesse.noller,vinay.sajip BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Mon Sep 1 19:17:23 2008 From: python-checkins at python.org (benjamin.peterson) Date: Mon, 1 Sep 2008 19:17:23 +0200 (CEST) Subject: [Python-checkins] r66117 - in python/trunk/Lib/lib2to3: fixer_util.py fixes/fix_paren.py fixes/fix_raw_input.py fixes/fix_sys_exc.py refactor.py tests/test_fixers.py Message-ID: <20080901171723.370631E4005@bag.python.org> Author: benjamin.peterson Date: Mon Sep 1 19:17:22 2008 New Revision: 66117 Log: Merged revisions 65887,65889,65967-65968,65981 via svnmerge from svn+ssh://pythondev at svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r65887 | benjamin.peterson | 2008-08-19 17:45:04 -0500 (Tue, 19 Aug 2008) | 1 line allow the raw_input fixer to handle calls after the raw_input (ie. raw_input().split()) ........ r65889 | benjamin.peterson | 2008-08-19 18:11:03 -0500 (Tue, 19 Aug 2008) | 1 line no need for 2.4 compatibility now ........ r65967 | benjamin.peterson | 2008-08-21 18:43:37 -0500 (Thu, 21 Aug 2008) | 1 line allow a Call to have no arguments ........ r65968 | benjamin.peterson | 2008-08-21 18:45:13 -0500 (Thu, 21 Aug 2008) | 1 line add a fixer for sys.exc_info etc by Jeff Balogh #2357 ........ r65981 | benjamin.peterson | 2008-08-22 15:41:30 -0500 (Fri, 22 Aug 2008) | 1 line add a fixer to add parenthese for list and gen comps #2367 ........ Added: python/trunk/Lib/lib2to3/fixes/fix_paren.py - copied unchanged from r65981, /sandbox/trunk/2to3/lib2to3/fixes/fix_paren.py python/trunk/Lib/lib2to3/fixes/fix_sys_exc.py - copied unchanged from r65981, /sandbox/trunk/2to3/lib2to3/fixes/fix_sys_exc.py Modified: python/trunk/Lib/lib2to3/ (props changed) python/trunk/Lib/lib2to3/fixer_util.py python/trunk/Lib/lib2to3/fixes/fix_raw_input.py python/trunk/Lib/lib2to3/refactor.py python/trunk/Lib/lib2to3/tests/test_fixers.py Modified: python/trunk/Lib/lib2to3/fixer_util.py ============================================================================== --- python/trunk/Lib/lib2to3/fixer_util.py (original) +++ python/trunk/Lib/lib2to3/fixer_util.py Mon Sep 1 19:17:22 2008 @@ -51,12 +51,12 @@ def ArgList(args, lparen=LParen(), rparen=RParen()): """A parenthesised argument list, used by Call()""" - return Node(syms.trailer, - [lparen.clone(), - Node(syms.arglist, args), - rparen.clone()]) + node = Node(syms.trailer, [lparen.clone(), rparen.clone()]) + if args: + node.insert_child(1, Node(syms.arglist, args)) + return node -def Call(func_name, args, prefix=None): +def Call(func_name, args=None, prefix=None): """A function call""" node = Node(syms.power, [func_name, ArgList(args)]) if prefix is not None: Modified: python/trunk/Lib/lib2to3/fixes/fix_raw_input.py ============================================================================== --- python/trunk/Lib/lib2to3/fixes/fix_raw_input.py (original) +++ python/trunk/Lib/lib2to3/fixes/fix_raw_input.py Mon Sep 1 19:17:22 2008 @@ -8,7 +8,7 @@ class FixRawInput(fixer_base.BaseFix): PATTERN = """ - power< name='raw_input' trailer< '(' [any] ')' > > + power< name='raw_input' trailer< '(' [any] ')' > any* > """ def transform(self, node, results): Modified: python/trunk/Lib/lib2to3/refactor.py ============================================================================== --- python/trunk/Lib/lib2to3/refactor.py (original) +++ python/trunk/Lib/lib2to3/refactor.py Mon Sep 1 19:17:22 2008 @@ -69,13 +69,7 @@ return 2 # Set up logging handler - if sys.version_info < (2, 4): - hdlr = logging.StreamHandler() - fmt = logging.Formatter('%(name)s: %(message)s') - hdlr.setFormatter(fmt) - logging.root.addHandler(hdlr) - else: - logging.basicConfig(format='%(name)s: %(message)s', level=logging.INFO) + logging.basicConfig(format='%(name)s: %(message)s', level=logging.INFO) # Initialize the refactoring tool rt = RefactoringTool(fixer_dir, options) Modified: python/trunk/Lib/lib2to3/tests/test_fixers.py ============================================================================== --- python/trunk/Lib/lib2to3/tests/test_fixers.py (original) +++ python/trunk/Lib/lib2to3/tests/test_fixers.py Mon Sep 1 19:17:22 2008 @@ -1340,6 +1340,21 @@ a = """x = input(foo(a) + 6)""" self.check(b, a) + def test_5(self): + b = """x = raw_input(invite).split()""" + a = """x = input(invite).split()""" + self.check(b, a) + + def test_6(self): + b = """x = raw_input(invite) . split ()""" + a = """x = input(invite) . split ()""" + self.check(b, a) + + def test_8(self): + b = "x = int(raw_input())" + a = "x = int(input())" + self.check(b, a) + class Test_funcattrs(FixerTestCase): fixer = "funcattrs" @@ -3330,6 +3345,98 @@ """ self.check_both(b, a) +class Test_sys_exc(FixerTestCase): + fixer = "sys_exc" + + def test_0(self): + b = "sys.exc_type" + a = "sys.exc_info()[0]" + self.check(b, a) + + def test_1(self): + b = "sys.exc_value" + a = "sys.exc_info()[1]" + self.check(b, a) + + def test_2(self): + b = "sys.exc_traceback" + a = "sys.exc_info()[2]" + self.check(b, a) + + def test_3(self): + b = "sys.exc_type # Foo" + a = "sys.exc_info()[0] # Foo" + self.check(b, a) + + def test_4(self): + b = "sys. exc_type" + a = "sys. exc_info()[0]" + self.check(b, a) + + def test_5(self): + b = "sys .exc_type" + a = "sys .exc_info()[0]" + self.check(b, a) + + +class Test_paren(FixerTestCase): + fixer = "paren" + + def test_0(self): + b = """[i for i in 1, 2 ]""" + a = """[i for i in (1, 2) ]""" + self.check(b, a) + + def test_1(self): + b = """[i for i in 1, 2, ]""" + a = """[i for i in (1, 2,) ]""" + self.check(b, a) + + def test_2(self): + b = """[i for i in 1, 2 ]""" + a = """[i for i in (1, 2) ]""" + self.check(b, a) + + def test_3(self): + b = """[i for i in 1, 2 if i]""" + a = """[i for i in (1, 2) if i]""" + self.check(b, a) + + def test_4(self): + b = """[i for i in 1, 2 ]""" + a = """[i for i in (1, 2) ]""" + self.check(b, a) + + def test_5(self): + b = """(i for i in 1, 2)""" + a = """(i for i in (1, 2))""" + self.check(b, a) + + def test_6(self): + b = """(i for i in 1 ,2 if i)""" + a = """(i for i in (1 ,2) if i)""" + self.check(b, a) + + def test_unchanged_0(self): + s = """[i for i in (1, 2)]""" + self.unchanged(s) + + def test_unchanged_1(self): + s = """[i for i in foo()]""" + self.unchanged(s) + + def test_unchanged_2(self): + s = """[i for i in (1, 2) if nothing]""" + self.unchanged(s) + + def test_unchanged_3(self): + s = """(i for i in (1, 2))""" + self.unchanged(s) + + def test_unchanged_4(self): + s = """[i for i in m]""" + self.unchanged(s) + if __name__ == "__main__": import __main__ From buildbot at python.org Mon Sep 1 19:29:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:29:15 +0000 Subject: [Python-checkins] buildbot failure in i386 Ubuntu trunk Message-ID: <20080901172915.352DE1E4005@bag.python.org> The Buildbot has detected a new failure of i386 Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/i386%20Ubuntu%20trunk/builds/359 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-i386 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_pickletools make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 19:30:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:30:36 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080901173036.814A71E4005@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/242 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,georg.brandl BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 19:33:33 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:33:33 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian trunk Message-ID: <20080901173334.13DAC1E4005@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/1378 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: jesse.noller,vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/threading.py", line 524, in __bootstrap_inner self.run() File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/threading.py", line 479, in run self.__target(*self.__args, **self.__kwargs) File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/bsddb/test/test_thread.py", line 306, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/pybot/buildarea64/trunk.klose-debian-ppc64/build/Lib/bsddb/dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30995, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 1 test failed: test_pickletools make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 19:38:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 17:38:46 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080901173846.C80B61E4005@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/172 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_socket make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Mon Sep 1 19:44:14 2008 From: python-checkins at python.org (vinay.sajip) Date: Mon, 1 Sep 2008 19:44:14 +0200 (CEST) Subject: [Python-checkins] r66118 - python/trunk/Doc/library/logging.rst Message-ID: <20080901174414.720C01E4005@bag.python.org> Author: vinay.sajip Date: Mon Sep 1 19:44:14 2008 New Revision: 66118 Log: Bug #3738: Documentation is now more accurate in describing handler close methods. Modified: python/trunk/Doc/library/logging.rst Modified: python/trunk/Doc/library/logging.rst ============================================================================== --- python/trunk/Doc/library/logging.rst (original) +++ python/trunk/Doc/library/logging.rst Mon Sep 1 19:44:14 2008 @@ -1504,8 +1504,10 @@ .. method:: Handler.close() - Tidy up any resources used by the handler. This version does nothing and is - intended to be implemented by subclasses. + Tidy up any resources used by the handler. This version does no output but + removes the handler from an internal list of handlers which is closed when + :func:`shutdown` is called. Subclasses should ensure that this gets called + from overridden :meth:`close` methods. .. method:: Handler.handle(record) @@ -1567,7 +1569,7 @@ Flushes the stream by calling its :meth:`flush` method. Note that the :meth:`close` method is inherited from :class:`Handler` and so does - nothing, so an explicit :meth:`flush` call may be needed at times. + no output, so an explicit :meth:`flush` call may be needed at times. FileHandler @@ -1887,7 +1889,7 @@ source of event log entries. However, if you do this, you will not be able to see the events as you intended in the Event Log Viewer - it needs to be able to access the registry to get the .dll name. The current version does - not do this (in fact it doesn't do anything). + not do this. .. method:: emit(record) From buildbot at python.org Mon Sep 1 20:18:19 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 18:18:19 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080901181819.31FED1E4005@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/473 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: benjamin.peterson,georg.brandl BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_posix ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From python-checkins at python.org Mon Sep 1 21:52:00 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Mon, 1 Sep 2008 21:52:00 +0200 (CEST) Subject: [Python-checkins] r66119 - in python/trunk: Lib/test/string_tests.py Misc/NEWS Objects/stringobject.c Message-ID: <20080901195200.CB0031E4005@bag.python.org> Author: amaury.forgeotdarc Date: Mon Sep 1 21:52:00 2008 New Revision: 66119 Log: Issue #3751: str.rpartition would perform a left-partition when called with a unicode argument. will backport. Modified: python/trunk/Lib/test/string_tests.py python/trunk/Misc/NEWS python/trunk/Objects/stringobject.c Modified: python/trunk/Lib/test/string_tests.py ============================================================================== --- python/trunk/Lib/test/string_tests.py (original) +++ python/trunk/Lib/test/string_tests.py Mon Sep 1 21:52:00 2008 @@ -1117,6 +1117,9 @@ self.checkraises(ValueError, S, 'partition', '') self.checkraises(TypeError, S, 'partition', None) + # mixed use of str and unicode + self.assertEqual('a/b/c'.partition(u'/'), ('a', '/', 'b/c')) + def test_rpartition(self): self.checkequal(('this is the rparti', 'ti', 'on method'), @@ -1132,6 +1135,8 @@ self.checkraises(ValueError, S, 'rpartition', '') self.checkraises(TypeError, S, 'rpartition', None) + # mixed use of str and unicode + self.assertEqual('a/b/c'.rpartition(u'/'), ('a/b', '/', 'c')) class MixinStrStringUserStringTest: # Additional tests for 8bit strings, i.e. str, UserString and Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Mon Sep 1 21:52:00 2008 @@ -12,6 +12,9 @@ Core and Builtins ----------------- +- Issue #3751: str.rpartition would perform a left-partition when called with + a unicode argument. + - Issue #3683: Fix compilation when --without-threads is given. - Issue #3668: Fix a memory leak with the "s*" argument parser in Modified: python/trunk/Objects/stringobject.c ============================================================================== --- python/trunk/Objects/stringobject.c (original) +++ python/trunk/Objects/stringobject.c Mon Sep 1 21:52:00 2008 @@ -1638,7 +1638,7 @@ } #ifdef Py_USING_UNICODE else if (PyUnicode_Check(sep_obj)) - return PyUnicode_Partition((PyObject *) self, sep_obj); + return PyUnicode_RPartition((PyObject *) self, sep_obj); #endif else if (PyObject_AsCharBuffer(sep_obj, &sep, &sep_len)) return NULL; From python-checkins at python.org Mon Sep 1 22:05:09 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Mon, 1 Sep 2008 22:05:09 +0200 (CEST) Subject: [Python-checkins] r66121 - in python/branches/release25-maint: Lib/test/string_tests.py Misc/NEWS Objects/stringobject.c Message-ID: <20080901200509.65FD91E4005@bag.python.org> Author: amaury.forgeotdarc Date: Mon Sep 1 22:05:08 2008 New Revision: 66121 Log: Issue #3751: str.rpartition would perform a left-partition when called with a unicode argument. Backport of r66119 Modified: python/branches/release25-maint/Lib/test/string_tests.py python/branches/release25-maint/Misc/NEWS python/branches/release25-maint/Objects/stringobject.c Modified: python/branches/release25-maint/Lib/test/string_tests.py ============================================================================== --- python/branches/release25-maint/Lib/test/string_tests.py (original) +++ python/branches/release25-maint/Lib/test/string_tests.py Mon Sep 1 22:05:08 2008 @@ -1066,6 +1066,9 @@ self.checkraises(ValueError, S, 'partition', '') self.checkraises(TypeError, S, 'partition', None) + # mixed use of str and unicode + self.assertEqual('a/b/c'.partition(u'/'), ('a', '/', 'b/c')) + def test_rpartition(self): self.checkequal(('this is the rparti', 'ti', 'on method'), @@ -1081,6 +1084,8 @@ self.checkraises(ValueError, S, 'rpartition', '') self.checkraises(TypeError, S, 'rpartition', None) + # mixed use of str and unicode + self.assertEqual('a/b/c'.rpartition(u'/'), ('a/b', '/', 'c')) class MixinStrStringUserStringTest: # Additional tests for 8bit strings, i.e. str, UserString and Modified: python/branches/release25-maint/Misc/NEWS ============================================================================== --- python/branches/release25-maint/Misc/NEWS (original) +++ python/branches/release25-maint/Misc/NEWS Mon Sep 1 22:05:08 2008 @@ -12,6 +12,9 @@ Core and builtins ----------------- +- Issue #3751: str.rpartition would perform a left-partition when called with + a unicode argument. + - Issue #3537: Fix an assertion failure when an empty but presized dict object was stored in the freelist. Modified: python/branches/release25-maint/Objects/stringobject.c ============================================================================== --- python/branches/release25-maint/Objects/stringobject.c (original) +++ python/branches/release25-maint/Objects/stringobject.c Mon Sep 1 22:05:08 2008 @@ -1595,7 +1595,7 @@ } #ifdef Py_USING_UNICODE else if (PyUnicode_Check(sep_obj)) - return PyUnicode_Partition((PyObject *) self, sep_obj); + return PyUnicode_RPartition((PyObject *) self, sep_obj); #endif else if (PyObject_AsCharBuffer(sep_obj, &sep, &sep_len)) return NULL; From buildbot at python.org Mon Sep 1 22:38:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 20:38:09 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu trunk Message-ID: <20080901203809.75D931E4005@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%20trunk/builds/499 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: amaury.forgeotdarc,vinay.sajip BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Mon Sep 1 22:48:17 2008 From: python-checkins at python.org (jesus.cea) Date: Mon, 1 Sep 2008 22:48:17 +0200 (CEST) Subject: [Python-checkins] r66123 - python/trunk/Lib/bsddb/test/test_all.py Message-ID: <20080901204817.08EC21E4005@bag.python.org> Author: jesus.cea Date: Mon Sep 1 22:48:16 2008 New Revision: 66123 Log: In Python3.0, "test.test_support" is renamed to "test.support". Modified: python/trunk/Lib/bsddb/test/test_all.py Modified: python/trunk/Lib/bsddb/test/test_all.py ============================================================================== --- python/trunk/Lib/bsddb/test/test_all.py (original) +++ python/trunk/Lib/bsddb/test/test_all.py Mon Sep 1 22:48:16 2008 @@ -356,7 +356,10 @@ try: from bsddb3 import test_support except ImportError: - from test import test_support + if sys.version_info[0] < 3 : + from test import test_support + else : + from test import support as test_support try: From buildbot at python.org Mon Sep 1 22:51:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 20:51:17 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 2.5 Message-ID: <20080901205117.2DB3A1E4005@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/24 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: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 22:58:42 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 20:58:42 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080901205842.3139E1E4005@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/244 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 compile sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 23:17:08 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 21:17:08 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu 3.0 Message-ID: <20080901211708.E68341E4005@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%203.0/builds/474 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_bsddb test_dbm ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_whichdb (test.test_dbm.WhichDBTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 122, in test_whichdb f = module.open(_fname, 'c') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_access (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 88, in test_anydbm_access self.init_db() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_creation (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 61, in test_anydbm_creation f = dbm.open(_fname, 'c') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_keys (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 82, in test_anydbm_keys self.init_db() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_modification (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 69, in test_anydbm_modification self.init_db() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_read (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 76, in test_anydbm_read self.init_db() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 23:20:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 21:20:01 +0000 Subject: [Python-checkins] buildbot failure in ARM Linux EABI 2.5 Message-ID: <20080901212001.5736A1E4005@bag.python.org> The Buildbot has detected a new failure of ARM Linux EABI 2.5. Full details are available at: http://www.python.org/dev/buildbot/all/ARM%20Linux%20EABI%202.5/builds/18 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-linux-armeabi Build Reason: Build Source Stamp: [branch branches/release25-maint] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Mon Sep 1 23:28:47 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 21:28:47 +0000 Subject: [Python-checkins] buildbot failure in ARM Linux EABI 3.0 Message-ID: <20080901212847.90D911E4005@bag.python.org> The Buildbot has detected a new failure of ARM Linux EABI 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ARM%20Linux%20EABI%203.0/builds/173 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-linux-armeabi Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: jesus.cea BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 00:04:22 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 22:04:22 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080901220422.CC0041E400E@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/475 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: amaury.forgeotdarc,jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 00:09:15 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 22:09:15 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080901220915.9E3061E4005@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/464 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: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_bsddb test_dbm ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_contains (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_for_cursor_memleak (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_iteritems_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_len (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 20, in setUp self.f = self.do_open(self.fname, self.openflag, cachesize=32768) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_bsddb.py", line 17, in do_open return bsddb.StringValues(bsddb.StringKeys(self.openmethod[0](*args, **kw))) AttributeError: 'module' object has no attribute 'StringValues' ====================================================================== ERROR: test_whichdb (test.test_dbm.WhichDBTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 122, in test_whichdb f = module.open(_fname, 'c') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_access (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 88, in test_anydbm_access self.init_db() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_creation (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 61, in test_anydbm_creation f = dbm.open(_fname, 'c') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_keys (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 82, in test_anydbm_keys self.init_db() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_modification (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 69, in test_anydbm_modification self.init_db() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' ====================================================================== ERROR: test_anydbm_read (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 76, in test_anydbm_read self.init_db() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/test/test_dbm.py", line 46, in init_db f = dbm.open(_fname, 'n') File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/__init__.py", line 88, in open return mod.open(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/dbm/bsd.py", line 11, in open return bsddb.hashopen(file, flag, mode) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 345, in hashopen e = _openDBEnv(cachesize) File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/__init__.py", line 395, in _openDBEnv e = db.DBEnv() File "/home/pybot/buildarea-sid/3.0.klose-debian-sparc/build/Lib/bsddb/test/test_all.py", line 302, in __init__ self._dbenv = bsddb._db.DBEnv_orig(*args, **kwargs) AttributeError: 'NoneType' object has no attribute '_db' make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 01:12:58 2008 From: python-checkins at python.org (benjamin.peterson) Date: Tue, 2 Sep 2008 01:12:58 +0200 (CEST) Subject: [Python-checkins] r66127 - in python/trunk: Doc/library/threading.rst Lib/test/test_py3kwarn.py Lib/threading.py Misc/NEWS Message-ID: <20080901231259.1F2881E4010@bag.python.org> Author: benjamin.peterson Date: Tue Sep 2 01:12:58 2008 New Revision: 66127 Log: remove py3k warnings about the threading api; update docs Reviewer: Benjamin Peterson Modified: python/trunk/Doc/library/threading.rst python/trunk/Lib/test/test_py3kwarn.py python/trunk/Lib/threading.py python/trunk/Misc/NEWS Modified: python/trunk/Doc/library/threading.rst ============================================================================== --- python/trunk/Doc/library/threading.rst (original) +++ python/trunk/Doc/library/threading.rst Tue Sep 2 01:12:58 2008 @@ -14,11 +14,12 @@ .. note:: - Some ``camelCase`` names have been converted to their underscored - equivalents. Others have been replaced by properties. Using the old methods - in 2.6 will trigger a :exc:`DeprecationWarning` when Python is run with the - :option:`-3` flag and a full :exc:`DeprecationWarning` in 3.0. The old names - will be removed early in the 3.x series. + Starting with Python 2.6, this module provides PEP 8 compliant aliases and + properties to replace the ``camelCase`` names that were inspired by Java's + threading API. This updated API is compatible with that of the + :mod:`multiprocessing` module. However, no schedule has been set for the + deprecation of the ``camelCase`` names and they remain fully supported in + both Python 2.x and 3.x. This module defines the following functions and objects: Modified: python/trunk/Lib/test/test_py3kwarn.py ============================================================================== --- python/trunk/Lib/test/test_py3kwarn.py (original) +++ python/trunk/Lib/test/test_py3kwarn.py Tue Sep 2 01:12:58 2008 @@ -272,41 +272,6 @@ def __hash__(self): pass self.assertEqual(len(w.warnings), 0) - def test_pep8ified_threading(self): - import threading - - t = threading.Thread() - with catch_warning() as w: - msg = "isDaemon() is deprecated in favor of the " \ - "Thread.daemon property" - self.assertWarning(t.isDaemon(), w, msg) - w.reset() - msg = "setDaemon() is deprecated in favor of the " \ - "Thread.daemon property" - self.assertWarning(t.setDaemon(True), w, msg) - w.reset() - msg = "getName() is deprecated in favor of the " \ - "Thread.name property" - self.assertWarning(t.getName(), w, msg) - w.reset() - msg = "setName() is deprecated in favor of the " \ - "Thread.name property" - self.assertWarning(t.setName("name"), w, msg) - w.reset() - msg = "isAlive() is deprecated in favor of is_alive()" - self.assertWarning(t.isAlive(), w, msg) - w.reset() - e = threading.Event() - msg = "isSet() is deprecated in favor of is_set()" - self.assertWarning(e.isSet(), w, msg) - w.reset() - msg = "currentThread() is deprecated in favor of current_thread()" - self.assertWarning(threading.currentThread(), w, msg) - w.reset() - msg = "activeCount() is deprecated in favor of active_count()" - self.assertWarning(threading.activeCount(), w, msg) - - class TestStdlibRemovals(unittest.TestCase): Modified: python/trunk/Lib/threading.py ============================================================================== --- python/trunk/Lib/threading.py (original) +++ python/trunk/Lib/threading.py Tue Sep 2 01:12:58 2008 @@ -15,6 +15,17 @@ from traceback import format_exc as _format_exc from collections import deque +# Note regarding PEP 8 compliant aliases +# This threading model was originally inspired by Java, and inherited +# the convention of camelCase function and method names from that +# language. While those names are not in any imminent danger of being +# deprecated, starting with Python 2.6, the module now provides a +# PEP 8 compliant alias for any such method name. +# Using the new PEP 8 compliant names also facilitates substitution +# with the multiprocessing module, which doesn't provide the old +# Java inspired names. + + # Rename some stuff so "from threading import *" is safe __all__ = ['activeCount', 'active_count', 'Condition', 'currentThread', 'current_thread', 'enumerate', 'Event', @@ -33,19 +44,6 @@ warnings.filterwarnings('ignore', category=DeprecationWarning, module='threading', message='sys.exc_clear') - -def _old_api(callable, old_name): - if not _sys.py3kwarning: - return callable - @wraps(callable) - def old(*args, **kwargs): - warnings.warnpy3k("{0}() is deprecated in favor of {1}()" - .format(old_name, callable.__name__), - stacklevel=3) - return callable(*args, **kwargs) - old.__name__ = old_name - return old - # Debug support (adapted from ihooks.py). # All the major classes here derive from _Verbose. We force that to # be a new-style class so that all the major classes here are new-style. @@ -287,10 +285,10 @@ except ValueError: pass - def notify_all(self): + def notifyAll(self): self.notify(len(self.__waiters)) - notifyAll = _old_api(notify_all, "notifyAll") + notify_all = notifyAll def Semaphore(*args, **kwargs): @@ -368,10 +366,10 @@ self.__cond = Condition(Lock()) self.__flag = False - def is_set(self): + def isSet(self): return self.__flag - isSet = _old_api(is_set, "isSet") + is_set = isSet def set(self): self.__cond.acquire() @@ -666,11 +664,11 @@ assert self.__initialized, "Thread.__init__() not called" return self.__ident - def is_alive(self): + def isAlive(self): assert self.__initialized, "Thread.__init__() not called" return self.__started.is_set() and not self.__stopped - isAlive = _old_api(is_alive, "isAlive") + is_alive = isAlive @property def daemon(self): @@ -686,23 +684,15 @@ self.__daemonic = daemonic def isDaemon(self): - warnings.warnpy3k("isDaemon() is deprecated in favor of the " \ - "Thread.daemon property") return self.daemon def setDaemon(self, daemonic): - warnings.warnpy3k("setDaemon() is deprecated in favor of the " \ - "Thread.daemon property") self.daemon = daemonic def getName(self): - warnings.warnpy3k("getName() is deprecated in favor of the " \ - "Thread.name property") return self.name def setName(self, name): - warnings.warnpy3k("setName() is deprecated in favor of the " \ - "Thread.name property") self.name = name # The timer class was contributed by Itamar Shtull-Trauring @@ -803,22 +793,22 @@ # Global API functions -def current_thread(): +def currentThread(): try: return _active[_get_ident()] except KeyError: ##print "current_thread(): no current thread for", _get_ident() return _DummyThread() -currentThread = _old_api(current_thread, "currentThread") +current_thread = currentThread -def active_count(): +def activeCount(): _active_limbo_lock.acquire() count = len(_active) + len(_limbo) _active_limbo_lock.release() return count -activeCount = _old_api(active_count, "activeCount") +active_count = activeCount def enumerate(): _active_limbo_lock.acquire() Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Sep 2 01:12:58 2008 @@ -53,6 +53,8 @@ Library ------- +- The deprecation warnings for the old camelCase threading API were removed. + - logging: fixed lack of use of encoding attribute specified on a stream. - Silenced a trivial compiler warning in the sqlite module. From python-checkins at python.org Tue Sep 2 01:14:19 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 2 Sep 2008 01:14:19 +0200 (CEST) Subject: [Python-checkins] r66128 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/test_other_widgets.py 2.x/ttk.py 3.x/test/test_other_widgets.py 3.x/ttk.py Message-ID: <20080901231419.728B11E4005@bag.python.org> Author: guilherme.polo Date: Tue Sep 2 01:14:19 2008 New Revision: 66128 Log: Panedwindow.forget works again; Fixed custom Scale.configure so it works when Tkinter calls it through __setitem__; Tests added for the Scale and Panedwindow widgets. Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/2.x/ttk.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py Tue Sep 2 01:14:19 2008 @@ -279,9 +279,203 @@ self.failUnlessEqual(self.entry.state(), ()) +class PanedwindowTest(unittest.TestCase): + + def setUp(self): + self.paned = ttk.Panedwindow() + + def tearDown(self): + self.paned.destroy() + + + def test_add(self): + # attempt to add a child that is not a direct child of the paned window + label = ttk.Label(self.paned) + child = ttk.Label(label) + self.failUnlessRaises(Tkinter.TclError, self.paned.add, child) + label.destroy() + child.destroy() + # another attempt + label = ttk.Label() + child = ttk.Label(label) + self.failUnlessRaises(Tkinter.TclError, self.paned.add, child) + child.destroy() + label.destroy() + + good_child = ttk.Label() + self.paned.add(good_child) + # re-adding a child is not accepted + self.failUnlessRaises(Tkinter.TclError, self.paned.add, good_child) + + other_child = ttk.Label(self.paned) + self.paned.add(other_child) + self.failUnlessEqual(self.paned.pane(0), self.paned.pane(1)) + self.failUnlessRaises(Tkinter.TclError, self.paned.pane, 2) + good_child.destroy() + other_child.destroy() + self.failUnlessRaises(Tkinter.TclError, self.paned.pane, 0) + + + def test_forget(self): + self.failUnlessRaises(Tkinter.TclError, self.paned.forget, None) + self.failUnlessRaises(Tkinter.TclError, self.paned.forget, 0) + + self.paned.add(ttk.Label()) + self.paned.forget(0) + self.failUnlessRaises(Tkinter.TclError, self.paned.forget, 0) + + + def test_insert(self): + self.failUnlessRaises(Tkinter.TclError, self.paned.insert, None, 0) + self.failUnlessRaises(Tkinter.TclError, self.paned.insert, 0, None) + self.failUnlessRaises(Tkinter.TclError, self.paned.insert, 0, 0) + + child = ttk.Label() + child2 = ttk.Label() + child3 = ttk.Label() + + self.failUnlessRaises(Tkinter.TclError, self.paned.insert, 0, child) + + self.paned.insert('end', child2) + self.paned.insert(0, child) + self.failUnlessEqual(self.paned.panes(), (str(child), str(child2))) + + self.paned.insert(0, child2) + self.failUnlessEqual(self.paned.panes(), (str(child2), str(child))) + + self.paned.insert('end', child3) + self.failUnlessEqual(self.paned.panes(), + (str(child2), str(child), str(child3))) + + # reinserting a child should move it to its current position + panes = self.paned.panes() + self.paned.insert('end', child3) + self.failUnlessEqual(panes, self.paned.panes()) + + # moving child3 to child2 position should result in child2 ending up + # in previous child position and child ending up in previous child3 + # position + self.paned.insert(child2, child3) + self.failUnlessEqual(self.paned.panes(), + (str(child3), str(child2), str(child))) + + + def test_pane(self): + self.failUnlessRaises(Tkinter.TclError, self.paned.pane, 0) + + child = ttk.Label() + self.paned.add(child) + self.failUnless(isinstance(self.paned.pane(0), dict)) + self.failUnlessEqual(self.paned.pane(0, weight=None), 0) + self.failUnlessEqual(self.paned.pane(0), self.paned.pane(str(child))) + + self.failUnlessRaises(Tkinter.TclError, self.paned.pane, 0, + badoption='somevalue') + + + def test_sashpos(self): + self.failUnlessRaises(Tkinter.TclError, self.paned.sashpos, None) + self.failUnlessRaises(Tkinter.TclError, self.paned.sashpos, '') + self.failUnlessRaises(Tkinter.TclError, self.paned.sashpos, 0) + + child = ttk.Label(self.paned, text='a') + self.paned.add(child, weight=1) + self.failUnlessRaises(Tkinter.TclError, self.paned.sashpos, 0) + child2 = ttk.Label(self.paned, text='b') + self.paned.add(child2) + self.failUnlessRaises(Tkinter.TclError, self.paned.sashpos, 1) + + self.paned.pack(expand=True, fill='both') + self.paned.wait_visibility() + + curr_pos = self.paned.sashpos(0) + self.paned.sashpos(0, 1000) + self.failUnless(curr_pos != self.paned.sashpos(0)) + self.failUnless(isinstance(self.paned.sashpos(0), int)) + + +class RadiobuttonTest(unittest.TestCase): pass + + +class ScaleTest(unittest.TestCase): + + def setUp(self): + self.scale = ttk.Scale() + self.scale.pack() + self.scale.update() + + def tearDown(self): + self.scale.destroy() + + + def test_custom_event(self): + failure = [1, 1, 1] # will need to be empty + def cb_test(event): + failure.pop() + + funcid = self.scale.bind('<>', cb_test) + + self.scale['from'] = 10 + self.scale['from_'] = 10 + self.scale['to'] = 3 + + self.failIf(failure) + + failure = [1, 1, 1] + self.scale.configure(from_=2, to=5) + self.scale.configure(from_=0, to=-2) + self.scale.configure(to=10) + + self.failIf(failure) + + + def test_get(self): + scale_width = self.scale.winfo_width() + self.failUnlessEqual(self.scale.get(scale_width, 0), self.scale['to']) + + self.failUnlessEqual(self.scale.get(0, 0), self.scale['from']) + self.failUnlessEqual(self.scale.get(), self.scale['value']) + self.scale['value'] = 30 + self.failUnlessEqual(self.scale.get(), self.scale['value']) + + self.failUnlessRaises(Tkinter.TclError, self.scale.get, '', 0) + self.failUnlessRaises(Tkinter.TclError, self.scale.get, 0, '') + + + def test_set(self): + # set restricts the max/min values according to the current range + max = self.scale['to'] + new_max = max + 10 + self.scale.set(new_max) + self.failUnlessEqual(self.scale.get(), max) + min = self.scale['from'] + self.scale.set(min - 1) + self.failUnlessEqual(self.scale.get(), min) + + # changing directly the variable doesn't impose this limitation tho + var = Tkinter.DoubleVar() + self.scale['variable'] = var + var.set(max + 5) + self.failUnlessEqual(self.scale.get(), var.get()) + self.failUnlessEqual(self.scale.get(), max + 5) + del var + + # the same happens with the value option + self.scale['value'] = max + 10 + self.failUnlessEqual(self.scale.get(), max + 10) + self.failUnlessEqual(self.scale.get(), self.scale['value']) + + # nevertheless, note that the max/min values we can get specifying + # x, y coords are the ones according to the current range + self.failUnlessEqual(self.scale.get(0, 0), min) + self.failUnlessEqual(self.scale.get(self.scale.winfo_width(), 0), max) + + self.failUnlessRaises(Tkinter.TclError, self.scale.set, None) + + def test_main(): - support.run(WidgetTest, ButtonTest, #CheckbuttonTest, - ComboboxTest, EntryTest) + support.run(WidgetTest, ButtonTest, #CheckbuttonTest, RadiobuttonTest, + ComboboxTest, EntryTest, PanedwindowTest, ScaleTest) if __name__ == "__main__": test_main() Modified: sandbox/trunk/ttk-gsoc/src/2.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/ttk.py Tue Sep 2 01:14:19 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.3" +__version__ = "0.2.4" __author__ = "Guilherme Polo " @@ -955,6 +955,9 @@ Widget.__init__(self, master, "ttk::panedwindow", kw) + forget = Tkinter.PanedWindow.forget # overrides Pack.forget + + def insert(self, pos, child, **kw): """Inserts a pane at the specified positions. @@ -1075,11 +1078,13 @@ Widget.__init__(self, master, "ttk::scale", kw) - def configure(self, **kw): + def configure(self, cnf=None, **kw): """Modify or query scale options. - Changing "from", "from_" or "to" options generates a - <> event.""" + Setting a value for any of the "from", "from_" or "to" options + generates a <> event.""" + if cnf: + kw.update(cnf) Widget.configure(self, **kw) if any(['from' in kw, 'from_' in kw, 'to' in kw]): self.event_generate('<>') Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py Tue Sep 2 01:14:19 2008 @@ -279,9 +279,203 @@ self.failUnlessEqual(self.entry.state(), ()) +class PanedwindowTest(unittest.TestCase): + + def setUp(self): + self.paned = ttk.Panedwindow() + + def tearDown(self): + self.paned.destroy() + + + def test_add(self): + # attempt to add a child that is not a direct child of the paned window + label = ttk.Label(self.paned) + child = ttk.Label(label) + self.failUnlessRaises(tkinter.TclError, self.paned.add, child) + label.destroy() + child.destroy() + # another attempt + label = ttk.Label() + child = ttk.Label(label) + self.failUnlessRaises(tkinter.TclError, self.paned.add, child) + child.destroy() + label.destroy() + + good_child = ttk.Label() + self.paned.add(good_child) + # re-adding a child is not accepted + self.failUnlessRaises(tkinter.TclError, self.paned.add, good_child) + + other_child = ttk.Label(self.paned) + self.paned.add(other_child) + self.failUnlessEqual(self.paned.pane(0), self.paned.pane(1)) + self.failUnlessRaises(tkinter.TclError, self.paned.pane, 2) + good_child.destroy() + other_child.destroy() + self.failUnlessRaises(tkinter.TclError, self.paned.pane, 0) + + + def test_forget(self): + self.failUnlessRaises(tkinter.TclError, self.paned.forget, None) + self.failUnlessRaises(tkinter.TclError, self.paned.forget, 0) + + self.paned.add(ttk.Label()) + self.paned.forget(0) + self.failUnlessRaises(tkinter.TclError, self.paned.forget, 0) + + + def test_insert(self): + self.failUnlessRaises(tkinter.TclError, self.paned.insert, None, 0) + self.failUnlessRaises(tkinter.TclError, self.paned.insert, 0, None) + self.failUnlessRaises(tkinter.TclError, self.paned.insert, 0, 0) + + child = ttk.Label() + child2 = ttk.Label() + child3 = ttk.Label() + + self.failUnlessRaises(tkinter.TclError, self.paned.insert, 0, child) + + self.paned.insert('end', child2) + self.paned.insert(0, child) + self.failUnlessEqual(self.paned.panes(), (str(child), str(child2))) + + self.paned.insert(0, child2) + self.failUnlessEqual(self.paned.panes(), (str(child2), str(child))) + + self.paned.insert('end', child3) + self.failUnlessEqual(self.paned.panes(), + (str(child2), str(child), str(child3))) + + # reinserting a child should move it to its current position + panes = self.paned.panes() + self.paned.insert('end', child3) + self.failUnlessEqual(panes, self.paned.panes()) + + # moving child3 to child2 position should result in child2 ending up + # in previous child position and child ending up in previous child3 + # position + self.paned.insert(child2, child3) + self.failUnlessEqual(self.paned.panes(), + (str(child3), str(child2), str(child))) + + + def test_pane(self): + self.failUnlessRaises(tkinter.TclError, self.paned.pane, 0) + + child = ttk.Label() + self.paned.add(child) + self.failUnless(isinstance(self.paned.pane(0), dict)) + self.failUnlessEqual(self.paned.pane(0, weight=None), 0) + self.failUnlessEqual(self.paned.pane(0), self.paned.pane(str(child))) + + self.failUnlessRaises(tkinter.TclError, self.paned.pane, 0, + badoption='somevalue') + + + def test_sashpos(self): + self.failUnlessRaises(tkinter.TclError, self.paned.sashpos, None) + self.failUnlessRaises(tkinter.TclError, self.paned.sashpos, '') + self.failUnlessRaises(tkinter.TclError, self.paned.sashpos, 0) + + child = ttk.Label(self.paned, text='a') + self.paned.add(child, weight=1) + self.failUnlessRaises(tkinter.TclError, self.paned.sashpos, 0) + child2 = ttk.Label(self.paned, text='b') + self.paned.add(child2) + self.failUnlessRaises(tkinter.TclError, self.paned.sashpos, 1) + + self.paned.pack(expand=True, fill='both') + self.paned.wait_visibility() + + curr_pos = self.paned.sashpos(0) + self.paned.sashpos(0, 1000) + self.failUnless(curr_pos != self.paned.sashpos(0)) + self.failUnless(isinstance(self.paned.sashpos(0), int)) + + +class RadiobuttonTest(unittest.TestCase): pass + + +class ScaleTest(unittest.TestCase): + + def setUp(self): + self.scale = ttk.Scale() + self.scale.pack() + self.scale.update() + + def tearDown(self): + self.scale.destroy() + + + def test_custom_event(self): + failure = [1, 1, 1] # will need to be empty + def cb_test(event): + failure.pop() + + funcid = self.scale.bind('<>', cb_test) + + self.scale['from'] = 10 + self.scale['from_'] = 10 + self.scale['to'] = 3 + + self.failIf(failure) + + failure = [1, 1, 1] + self.scale.configure(from_=2, to=5) + self.scale.configure(from_=0, to=-2) + self.scale.configure(to=10) + + self.failIf(failure) + + + def test_get(self): + scale_width = self.scale.winfo_width() + self.failUnlessEqual(self.scale.get(scale_width, 0), self.scale['to']) + + self.failUnlessEqual(self.scale.get(0, 0), self.scale['from']) + self.failUnlessEqual(self.scale.get(), self.scale['value']) + self.scale['value'] = 30 + self.failUnlessEqual(self.scale.get(), self.scale['value']) + + self.failUnlessRaises(tkinter.TclError, self.scale.get, '', 0) + self.failUnlessRaises(tkinter.TclError, self.scale.get, 0, '') + + + def test_set(self): + # set restricts the max/min values according to the current range + max = self.scale['to'] + new_max = max + 10 + self.scale.set(new_max) + self.failUnlessEqual(self.scale.get(), max) + min = self.scale['from'] + self.scale.set(min - 1) + self.failUnlessEqual(self.scale.get(), min) + + # changing directly the variable doesn't impose this limitation tho + var = tkinter.DoubleVar() + self.scale['variable'] = var + var.set(max + 5) + self.failUnlessEqual(self.scale.get(), var.get()) + self.failUnlessEqual(self.scale.get(), max + 5) + del var + + # the same happens with the value option + self.scale['value'] = max + 10 + self.failUnlessEqual(self.scale.get(), max + 10) + self.failUnlessEqual(self.scale.get(), self.scale['value']) + + # nevertheless, note that the max/min values we can get specifying + # x, y coords are the ones according to the current range + self.failUnlessEqual(self.scale.get(0, 0), min) + self.failUnlessEqual(self.scale.get(self.scale.winfo_width(), 0), max) + + self.failUnlessRaises(tkinter.TclError, self.scale.set, None) + + def test_main(): - support.run(WidgetTest, ButtonTest, #CheckbuttonTest, - ComboboxTest, EntryTest) + support.run(WidgetTest, ButtonTest, #CheckbuttonTest, RadiobuttonTest, + ComboboxTest, EntryTest, PanedwindowTest, ScaleTest) if __name__ == "__main__": test_main() Modified: sandbox/trunk/ttk-gsoc/src/3.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Tue Sep 2 01:14:19 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.3" +__version__ = "0.2.4" __author__ = "Guilherme Polo " @@ -955,6 +955,9 @@ Widget.__init__(self, master, "ttk::panedwindow", kw) + forget = tkinter.PanedWindow.forget # overrides Pack.forget + + def insert(self, pos, child, **kw): """Inserts a pane at the specified positions. @@ -1075,11 +1078,13 @@ Widget.__init__(self, master, "ttk::scale", kw) - def configure(self, **kw): + def configure(self, cnf=None, **kw): """Modify or query scale options. - Changing "from", "from_" or "to" options generates a - <> event.""" + Setting a value for any of the "from", "from_" or "to" options + generates a <> event.""" + if cnf: + kw.update(cnf) Widget.configure(self, **kw) if any(['from' in kw, 'from_' in kw, 'to' in kw]): self.event_generate('<>') From buildbot at python.org Tue Sep 2 01:21:42 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 23:21:42 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080901232142.C5BAE1E4005@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/246 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 buildbot at python.org Tue Sep 2 01:28:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 23:28:16 +0000 Subject: [Python-checkins] buildbot failure in ARM Linux EABI trunk Message-ID: <20080901232816.422AA1E4016@bag.python.org> The Buildbot has detected a new failure of ARM Linux EABI trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ARM%20Linux%20EABI%20trunk/builds/139 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-linux-armeabi Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 01:44:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Mon, 01 Sep 2008 23:44:23 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080901234424.1B2051E4008@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/226 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 BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 02:06:20 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 00:06:20 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu trunk Message-ID: <20080902000620.5868B1E4005@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/784 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: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: make: *** [buildbottest] Bus error sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 02:33:13 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 00:33:13 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080902003314.10E271E4005@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/3875 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 03:01:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 01:01:23 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080902010123.9EA971E4005@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/248 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,jesus.cea BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 03:04:33 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 2 Sep 2008 03:04:33 +0200 (CEST) Subject: [Python-checkins] r66133 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/test_other_widgets.py 3.x/test/test_other_widgets.py Message-ID: <20080902010433.8DBA81E4005@bag.python.org> Author: guilherme.polo Date: Tue Sep 2 03:04:33 2008 New Revision: 66133 Log: Added tests for Checkbutton and Radiobutton Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py Tue Sep 2 03:04:33 2008 @@ -74,18 +74,33 @@ class CheckbuttonTest(unittest.TestCase): - # XXX broken for now def test_invoke(self): success = [] def cb_test(): success.append(1) + return "cb test called" + cbtn = ttk.Checkbutton(command=cb_test) - print cbtn.tk.globalgetvar(cbtn['variable']) - print cbtn['variable'], "<<" - cbtn.invoke() + # the variable automatically created by ttk.Checkbutton is actually + # undefined till we invoke the Checkbutton + self.failUnlessEqual(cbtn.state(), ('alternate', )) + self.failUnlessRaises(Tkinter.TclError, cbtn.tk.globalgetvar, + cbtn['variable']) + + res = cbtn.invoke() + self.failUnlessEqual(res, "cb test called") + self.failUnlessEqual(cbtn['onvalue'], + cbtn.tk.globalgetvar(cbtn['variable'])) self.failUnless(success) + cbtn['command'] = '' + res = cbtn.invoke() + self.failUnlessEqual(res, '') + self.failIf(len(success) > 1) + self.failUnlessEqual(cbtn['offvalue'], + cbtn.tk.globalgetvar(cbtn['variable'])) + class ComboboxTest(unittest.TestCase): @@ -394,7 +409,35 @@ self.failUnless(isinstance(self.paned.sashpos(0), int)) -class RadiobuttonTest(unittest.TestCase): pass +class RadiobuttonTest(unittest.TestCase): + + def test_invoke(self): + success = [] + def cb_test(): + success.append(1) + return "cb test called" + + myvar = Tkinter.IntVar() + cbtn = ttk.Radiobutton(command=cb_test, variable=myvar, value=0) + cbtn2 = ttk.Radiobutton(command=cb_test, variable=myvar, value=1) + + res = cbtn.invoke() + self.failUnlessEqual(res, "cb test called") + self.failUnlessEqual(cbtn['value'], myvar.get()) + self.failUnlessEqual(myvar.get(), + cbtn.tk.globalgetvar(cbtn['variable'])) + self.failUnless(success) + + cbtn2['command'] = '' + res = cbtn2.invoke() + self.failUnlessEqual(res, '') + self.failIf(len(success) > 1) + self.failUnlessEqual(cbtn2['value'], myvar.get()) + self.failUnlessEqual(myvar.get(), + cbtn.tk.globalgetvar(cbtn['variable'])) + + self.failUnlessEqual(str(cbtn['variable']), str(cbtn2['variable'])) + class ScaleTest(unittest.TestCase): @@ -474,7 +517,7 @@ def test_main(): - support.run(WidgetTest, ButtonTest, #CheckbuttonTest, RadiobuttonTest, + support.run(WidgetTest, ButtonTest, CheckbuttonTest, RadiobuttonTest, ComboboxTest, EntryTest, PanedwindowTest, ScaleTest) if __name__ == "__main__": Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py Tue Sep 2 03:04:33 2008 @@ -74,18 +74,33 @@ class CheckbuttonTest(unittest.TestCase): - # XXX broken for now def test_invoke(self): success = [] def cb_test(): success.append(1) + return "cb test called" + cbtn = ttk.Checkbutton(command=cb_test) - print(cbtn.tk.globalgetvar(cbtn['variable'])) - print(cbtn['variable'], "<<") - cbtn.invoke() + # the variable automatically created by ttk.Checkbutton is actually + # undefined till we invoke the Checkbutton + self.failUnlessEqual(cbtn.state(), ('alternate', )) + self.failUnlessRaises(tkinter.TclError, cbtn.tk.globalgetvar, + cbtn['variable']) + + res = cbtn.invoke() + self.failUnlessEqual(res, "cb test called") + self.failUnlessEqual(cbtn['onvalue'], + cbtn.tk.globalgetvar(cbtn['variable'])) self.failUnless(success) + cbtn['command'] = '' + res = cbtn.invoke() + self.failUnlessEqual(res, '') + self.failIf(len(success) > 1) + self.failUnlessEqual(cbtn['offvalue'], + cbtn.tk.globalgetvar(cbtn['variable'])) + class ComboboxTest(unittest.TestCase): @@ -394,7 +409,35 @@ self.failUnless(isinstance(self.paned.sashpos(0), int)) -class RadiobuttonTest(unittest.TestCase): pass +class RadiobuttonTest(unittest.TestCase): + + def test_invoke(self): + success = [] + def cb_test(): + success.append(1) + return "cb test called" + + myvar = tkinter.IntVar() + cbtn = ttk.Radiobutton(command=cb_test, variable=myvar, value=0) + cbtn2 = ttk.Radiobutton(command=cb_test, variable=myvar, value=1) + + res = cbtn.invoke() + self.failUnlessEqual(res, "cb test called") + self.failUnlessEqual(cbtn['value'], myvar.get()) + self.failUnlessEqual(myvar.get(), + cbtn.tk.globalgetvar(cbtn['variable'])) + self.failUnless(success) + + cbtn2['command'] = '' + res = cbtn2.invoke() + self.failUnlessEqual(res, '') + self.failIf(len(success) > 1) + self.failUnlessEqual(cbtn2['value'], myvar.get()) + self.failUnlessEqual(myvar.get(), + cbtn.tk.globalgetvar(cbtn['variable'])) + + self.failUnlessEqual(str(cbtn['variable']), str(cbtn2['variable'])) + class ScaleTest(unittest.TestCase): @@ -474,7 +517,7 @@ def test_main(): - support.run(WidgetTest, ButtonTest, #CheckbuttonTest, RadiobuttonTest, + support.run(WidgetTest, ButtonTest, CheckbuttonTest, RadiobuttonTest, ComboboxTest, EntryTest, PanedwindowTest, ScaleTest) if __name__ == "__main__": From buildbot at python.org Tue Sep 2 03:08:05 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 01:08:05 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902010805.CB8321E4015@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/477 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: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_distutils test_posix ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 03:13:42 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 2 Sep 2008 03:13:42 +0200 (CEST) Subject: [Python-checkins] r66134 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080902011342.7D7DF1E401A@bag.python.org> Author: andrew.kuchling Date: Tue Sep 2 03:13:42 2008 New Revision: 66134 Log: Describe the __hash__ changes 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 Sep 2 03:13:42 2008 @@ -1595,6 +1595,22 @@ :func:`complex` constructor will now preserve the sign of the zero. (Fixed by Mark T. Dickinson; :issue:`1507`.) +* Classes that inherit a :meth:`__hash__` method from a parent class + can set ``__hash__ = None`` to indicate that the class isn't + hashable. This will make ``hash(obj)`` raise a :exc:`TypeError` + and the class will not be indicated as implementing the + :class:`Hashable` ABC. + + You should do this when you've defined a :meth:`__cmp__` or + :meth:`__eq__` method that compares objects by their value rather + than by identity. All objects have a default hash method that uses + ``id(obj)`` as the hash value. There's no tidy way to remove the + :meth:`__hash__` method inherited from a parent class, so + assigning ``None`` was implemented as an override. At the + C level, extensions can set ``tp_hash`` to + :cfunc:`PyObject_HashNotImplemented`. + (Fixed by Nick Coghlan and Amaury Forgeot d'Arc; :issue:`2235`.) + * Changes to the :class:`Exception` interface as dictated by :pep:`352` continue to be made. For 2.6, the :attr:`message` attribute is being deprecated in favor of the @@ -3125,6 +3141,10 @@ This section lists previously described changes and other bugfixes that may require changes to your code: +* Classes that aren't supposed to be hashable should + set ``__hash__ = None`` in their definitions to indicate + the fact. + * The :meth:`__init__` method of :class:`collections.deque` now clears any existing contents of the deque before adding elements from the iterable. This change makes the @@ -3147,6 +3167,10 @@ functions now default to absolute imports, not relative imports. This will affect C extensions that import other modules. +* C API: extension data types that shouldn't be hashable + should define their ``tp_hash`` slot to + :cfunc:`PyObject_HashNotImplemented`. + * The :mod:`socket` module exception :exc:`socket.error` now inherits from :exc:`IOError`. Previously it wasn't a subclass of :exc:`StandardError` but now it is, through :exc:`IOError`. @@ -3182,5 +3206,5 @@ The author would like to thank the following people for offering suggestions, corrections and assistance with various drafts of this article: -Georg Brandl, Jim Jewett, Antoine Pitrou. +Georg Brandl, Nick Coghlan, Jim Jewett, Antoine Pitrou. From python-checkins at python.org Tue Sep 2 03:25:17 2008 From: python-checkins at python.org (brett.cannon) Date: Tue, 2 Sep 2008 03:25:17 +0200 (CEST) Subject: [Python-checkins] r66135 - in python/trunk: Doc/library/warnings.rst Lib/BaseHTTPServer.py Lib/asynchat.py Lib/cgi.py Lib/httplib.py Lib/mimetools.py Lib/test/test_support.py Lib/test/test_warnings.py Lib/warnings.py Misc/NEWS Python/_warnings.c Message-ID: <20080902012517.A27261E4005@bag.python.org> Author: brett.cannon Date: Tue Sep 2 03:25:16 2008 New Revision: 66135 Log: Move test.test_support.catch_warning() to the warnings module, rename it catch_warnings(), and clean up the API. While expanding the test suite, a bug was found where a warning about the 'line' argument to showwarning() was not letting functions with '*args' go without a warning. Closes issue 3602. Code review by Benjamin Peterson. Modified: python/trunk/Doc/library/warnings.rst python/trunk/Lib/BaseHTTPServer.py python/trunk/Lib/asynchat.py python/trunk/Lib/cgi.py python/trunk/Lib/httplib.py python/trunk/Lib/mimetools.py python/trunk/Lib/test/test_support.py python/trunk/Lib/test/test_warnings.py python/trunk/Lib/warnings.py python/trunk/Misc/NEWS python/trunk/Python/_warnings.c Modified: python/trunk/Doc/library/warnings.rst ============================================================================== --- python/trunk/Doc/library/warnings.rst (original) +++ python/trunk/Doc/library/warnings.rst Tue Sep 2 03:25:16 2008 @@ -263,3 +263,53 @@ :func:`filterwarnings`, including that of the :option:`-W` command line options and calls to :func:`simplefilter`. + +Available Classes +----------------- + +.. class:: catch_warnings([record=False[, module=None]]) + + A context manager that guards the warnings filter from being permanentally + mutated. The manager returns an instance of :class:`WarningsRecorder`. The + *record* argument specifies whether warnings that would typically be + handled by :func:`showwarning` should instead be recorded by the + :class:`WarningsRecorder` instance. This argument is typically set when + testing for expected warnings behavior. The *module* argument may be a + module object that is to be used instead of the :mod:`warnings` module. + This argument should only be set when testing the :mod:`warnings` module + or some similar use-case. + + Typical usage of the context manager is like so:: + + def fxn(): + warn("fxn is deprecated", DeprecationWarning) + return "spam spam bacon spam" + + # The function 'fxn' is known to raise a DeprecationWarning. + with catch_warnings() as w: + warnings.filterwarning('ignore', 'fxn is deprecated', DeprecationWarning) + fxn() # DeprecationWarning is temporarily suppressed. + + .. note:: + + In Python 3.0, the arguments to the constructor for + :class:`catch_warnings` are keyword-only arguments. + + .. versionadded:: 2.6 + + +.. class:: WarningsRecorder() + + A subclass of :class:`list` that stores all warnings passed to + :func:`showwarning` when returned by a :class:`catch_warnings` context + manager created with its *record* argument set to ``True``. Each recorded + warning is represented by an object whose attributes correspond to the + arguments to :func:`showwarning`. As a convenience, a + :class:`WarningsRecorder` instance has the attributes of the last + recorded warning set on the :class:`WarningsRecorder` instance as well. + + .. method:: reset() + + Delete all recorded warnings. + + .. versionadded:: 2.6 Modified: python/trunk/Lib/BaseHTTPServer.py ============================================================================== --- python/trunk/Lib/BaseHTTPServer.py (original) +++ python/trunk/Lib/BaseHTTPServer.py Tue Sep 2 03:25:16 2008 @@ -73,11 +73,11 @@ import sys import time import socket # For gethostbyaddr() -from test.test_support import catch_warning -from warnings import filterwarnings -with catch_warning(record=False): - filterwarnings("ignore", ".*mimetools has been removed", - DeprecationWarning) +from warnings import filterwarnings, catch_warnings +with catch_warnings(): + if sys.py3kwarning: + filterwarnings("ignore", ".*mimetools has been removed", + DeprecationWarning) import mimetools import SocketServer Modified: python/trunk/Lib/asynchat.py ============================================================================== --- python/trunk/Lib/asynchat.py (original) +++ python/trunk/Lib/asynchat.py Tue Sep 2 03:25:16 2008 @@ -49,8 +49,9 @@ import socket import asyncore from collections import deque +from sys import py3kwarning from test.test_support import catch_warning -from warnings import filterwarnings +from warnings import filterwarnings, catch_warnings class async_chat (asyncore.dispatcher): """This is an abstract class. You must derive from this class, and add @@ -218,8 +219,9 @@ # handle classic producer behavior obs = self.ac_out_buffer_size try: - with catch_warning(record=False): - filterwarnings("ignore", ".*buffer", DeprecationWarning) + with catch_warnings(): + if py3kwarning: + filterwarnings("ignore", ".*buffer", DeprecationWarning) data = buffer(first, 0, obs) except TypeError: data = first.more() Modified: python/trunk/Lib/cgi.py ============================================================================== --- python/trunk/Lib/cgi.py (original) +++ python/trunk/Lib/cgi.py Tue Sep 2 03:25:16 2008 @@ -39,13 +39,14 @@ import os import urllib import UserDict -from test.test_support import catch_warning -from warnings import filterwarnings -with catch_warning(record=False): - filterwarnings("ignore", ".*mimetools has been removed", - DeprecationWarning) +from warnings import filterwarnings, catch_warnings +with catch_warnings(): + if sys.py3kwarning: + filterwarnings("ignore", ".*mimetools has been removed", + DeprecationWarning) import mimetools - filterwarnings("ignore", ".*rfc822 has been removed", DeprecationWarning) + if sys.py3kwarning: + filterwarnings("ignore", ".*rfc822 has been removed", DeprecationWarning) import rfc822 try: Modified: python/trunk/Lib/httplib.py ============================================================================== --- python/trunk/Lib/httplib.py (original) +++ python/trunk/Lib/httplib.py Tue Sep 2 03:25:16 2008 @@ -67,12 +67,13 @@ """ import socket +from sys import py3kwarning from urlparse import urlsplit import warnings -from test.test_support import catch_warning -with catch_warning(record=False): - warnings.filterwarnings("ignore", ".*mimetools has been removed", - DeprecationWarning) +with warnings.catch_warnings(): + if py3kwarning: + warnings.filterwarnings("ignore", ".*mimetools has been removed", + DeprecationWarning) import mimetools try: Modified: python/trunk/Lib/mimetools.py ============================================================================== --- python/trunk/Lib/mimetools.py (original) +++ python/trunk/Lib/mimetools.py Tue Sep 2 03:25:16 2008 @@ -2,11 +2,12 @@ import os +import sys import tempfile -from test.test_support import catch_warning -from warnings import filterwarnings -with catch_warning(record=False): - filterwarnings("ignore", ".*rfc822 has been removed", DeprecationWarning) +from warnings import filterwarnings, catch_warnings +with catch_warnings(record=False): + if sys.py3kwarning: + filterwarnings("ignore", ".*rfc822 has been removed", DeprecationWarning) import rfc822 from warnings import warnpy3k Modified: python/trunk/Lib/test/test_support.py ============================================================================== --- python/trunk/Lib/test/test_support.py (original) +++ python/trunk/Lib/test/test_support.py Tue Sep 2 03:25:16 2008 @@ -18,7 +18,7 @@ "is_resource_enabled", "requires", "find_unused_port", "bind_port", "fcmp", "have_unicode", "is_jython", "TESTFN", "HOST", "FUZZ", "findfile", "verify", "vereq", "sortdict", "check_syntax_error", - "open_urlresource", "WarningMessage", "catch_warning", "CleanImport", + "open_urlresource", "catch_warning", "CleanImport", "EnvironmentVarGuard", "captured_output", "captured_stdout", "TransientResource", "transient_internet", "run_with_locale", "set_memlimit", "bigmemtest", "bigaddrspacetest", @@ -381,71 +381,8 @@ return open(fn) -class WarningMessage(object): - "Holds the result of a single showwarning() call" - _WARNING_DETAILS = "message category filename lineno line".split() - def __init__(self, message, category, filename, lineno, line=None): - for attr in self._WARNING_DETAILS: - setattr(self, attr, locals()[attr]) - self._category_name = category.__name__ if category else None - - def __str__(self): - return ("{message : %r, category : %r, filename : %r, lineno : %s, " - "line : %r}" % (self.message, self._category_name, - self.filename, self.lineno, self.line)) - -class WarningRecorder(object): - "Records the result of any showwarning calls" - def __init__(self): - self.warnings = [] - self._set_last(None) - - def _showwarning(self, message, category, filename, lineno, - file=None, line=None): - wm = WarningMessage(message, category, filename, lineno, line) - self.warnings.append(wm) - self._set_last(wm) - - def _set_last(self, last_warning): - if last_warning is None: - for attr in WarningMessage._WARNING_DETAILS: - setattr(self, attr, None) - else: - for attr in WarningMessage._WARNING_DETAILS: - setattr(self, attr, getattr(last_warning, attr)) - - def reset(self): - self.warnings = [] - self._set_last(None) - - def __str__(self): - return '[%s]' % (', '.join(map(str, self.warnings))) - - at contextlib.contextmanager def catch_warning(module=warnings, record=True): - """Guard the warnings filter from being permanently changed and - optionally record the details of any warnings that are issued. - - Use like this: - - with catch_warning() as w: - warnings.warn("foo") - assert str(w.message) == "foo" - """ - original_filters = module.filters - original_showwarning = module.showwarning - if record: - recorder = WarningRecorder() - module.showwarning = recorder._showwarning - else: - recorder = None - try: - # Replace the filters with a copy of the original - module.filters = module.filters[:] - yield recorder - finally: - module.showwarning = original_showwarning - module.filters = original_filters + return warnings.catch_warnings(record=record, module=module) class CleanImport(object): Modified: python/trunk/Lib/test/test_warnings.py ============================================================================== --- python/trunk/Lib/test/test_warnings.py (original) +++ python/trunk/Lib/test/test_warnings.py Tue Sep 2 03:25:16 2008 @@ -79,20 +79,19 @@ "FilterTests.test_error") def test_ignore(self): - with test_support.catch_warning(self.module) as w: + with test_support.catch_warning(module=self.module) as w: self.module.resetwarnings() self.module.filterwarnings("ignore", category=UserWarning) self.module.warn("FilterTests.test_ignore", UserWarning) - self.assert_(not w.message) + self.assertEquals(len(w), 0) def test_always(self): - with test_support.catch_warning(self.module) as w: + with test_support.catch_warning(module=self.module) as w: self.module.resetwarnings() self.module.filterwarnings("always", category=UserWarning) message = "FilterTests.test_always" self.module.warn(message, UserWarning) self.assert_(message, w.message) - w.message = None # Reset. self.module.warn(message, UserWarning) self.assert_(w.message, message) @@ -107,7 +106,7 @@ self.assertEquals(w.message, message) w.reset() elif x == 1: - self.assert_(not w.message, "unexpected warning: " + str(w)) + self.assert_(not len(w), "unexpected warning: " + str(w)) else: raise ValueError("loop variant unhandled") @@ -120,7 +119,7 @@ self.assertEquals(w.message, message) w.reset() self.module.warn(message, UserWarning) - self.assert_(not w.message, "unexpected message: " + str(w)) + self.assert_(not len(w), "unexpected message: " + str(w)) def test_once(self): with test_support.catch_warning(self.module) as w: @@ -133,10 +132,10 @@ w.reset() self.module.warn_explicit(message, UserWarning, "test_warnings.py", 13) - self.assert_(not w.message) + self.assertEquals(len(w), 0) self.module.warn_explicit(message, UserWarning, "test_warnings2.py", 42) - self.assert_(not w.message) + self.assertEquals(len(w), 0) def test_inheritance(self): with test_support.catch_warning(self.module) as w: @@ -156,7 +155,7 @@ self.module.warn("FilterTests.test_ordering", UserWarning) except UserWarning: self.fail("order handling for actions failed") - self.assert_(not w.message) + self.assertEquals(len(w), 0) def test_filterwarnings(self): # Test filterwarnings(). @@ -317,7 +316,6 @@ None, Warning, None, 1, registry=42) - class CWarnTests(BaseTest, WarnTests): module = c_warnings @@ -377,7 +375,7 @@ self.failUnlessEqual(w.message, message) w.reset() self.module.warn_explicit(message, UserWarning, "file", 42) - self.assert_(not w.message) + self.assertEquals(len(w), 0) # Test the resetting of onceregistry. self.module.onceregistry = {} __warningregistry__ = {} @@ -388,7 +386,7 @@ del self.module.onceregistry __warningregistry__ = {} self.module.warn_explicit(message, UserWarning, "file", 42) - self.failUnless(not w.message) + self.assertEquals(len(w), 0) finally: self.module.onceregistry = original_registry @@ -489,45 +487,45 @@ -class WarningsSupportTests(object): - """Test the warning tools from test support module""" +class CatchWarningTests(BaseTest): - def test_catch_warning_restore(self): + """Test catch_warnings().""" + + def test_catch_warnings_restore(self): wmod = self.module orig_filters = wmod.filters orig_showwarning = wmod.showwarning - with test_support.catch_warning(wmod): + with wmod.catch_warnings(record=True, module=wmod): wmod.filters = wmod.showwarning = object() self.assert_(wmod.filters is orig_filters) self.assert_(wmod.showwarning is orig_showwarning) - with test_support.catch_warning(wmod, record=False): + with wmod.catch_warnings(module=wmod, record=False): wmod.filters = wmod.showwarning = object() self.assert_(wmod.filters is orig_filters) self.assert_(wmod.showwarning is orig_showwarning) - def test_catch_warning_recording(self): + def test_catch_warnings_recording(self): wmod = self.module - with test_support.catch_warning(wmod) as w: - self.assertEqual(w.warnings, []) + with wmod.catch_warnings(module=wmod, record=True) as w: + self.assertEqual(w, []) wmod.simplefilter("always") wmod.warn("foo") self.assertEqual(str(w.message), "foo") wmod.warn("bar") self.assertEqual(str(w.message), "bar") - self.assertEqual(str(w.warnings[0].message), "foo") - self.assertEqual(str(w.warnings[1].message), "bar") + self.assertEqual(str(w[0].message), "foo") + self.assertEqual(str(w[1].message), "bar") w.reset() - self.assertEqual(w.warnings, []) + self.assertEqual(w, []) orig_showwarning = wmod.showwarning - with test_support.catch_warning(wmod, record=False) as w: + with wmod.catch_warnings(module=wmod, record=False) as w: self.assert_(w is None) self.assert_(wmod.showwarning is orig_showwarning) - -class CWarningsSupportTests(BaseTest, WarningsSupportTests): +class CCatchWarningTests(CatchWarningTests): module = c_warnings -class PyWarningsSupportTests(BaseTest, WarningsSupportTests): +class PyCatchWarningTests(CatchWarningTests): module = py_warnings @@ -539,14 +537,24 @@ def bad_showwarning(message, category, filename, lineno, file=None): pass + @staticmethod + def ok_showwarning(*args): + pass + def test_deprecation(self): # message, category, filename, lineno[, file[, line]] args = ("message", UserWarning, "file name", 42) - with test_support.catch_warning(self.module): + with test_support.catch_warning(module=self.module): self.module.filterwarnings("error", category=DeprecationWarning) self.module.showwarning = self.bad_showwarning self.assertRaises(DeprecationWarning, self.module.warn_explicit, *args) + self.module.showwarning = self.ok_showwarning + try: + self.module.warn_explicit(*args) + except DeprecationWarning as exc: + self.fail('showwarning(*args) should not trigger a ' + 'DeprecationWarning') class CShowwarningDeprecationTests(ShowwarningDeprecationTests): module = c_warnings @@ -559,16 +567,14 @@ def test_main(): py_warnings.onceregistry.clear() c_warnings.onceregistry.clear() - test_support.run_unittest(CFilterTests, - PyFilterTests, - CWarnTests, - PyWarnTests, + test_support.run_unittest(CFilterTests, PyFilterTests, + CWarnTests, PyWarnTests, CWCmdLineTests, PyWCmdLineTests, _WarningsTests, CWarningsDisplayTests, PyWarningsDisplayTests, - CWarningsSupportTests, PyWarningsSupportTests, + CCatchWarningTests, PyCatchWarningTests, CShowwarningDeprecationTests, - PyShowwarningDeprecationTests, + PyShowwarningDeprecationTests, ) Modified: python/trunk/Lib/warnings.py ============================================================================== --- python/trunk/Lib/warnings.py (original) +++ python/trunk/Lib/warnings.py Tue Sep 2 03:25:16 2008 @@ -272,7 +272,8 @@ fxn_code = showwarning.__func__.func_code if fxn_code: args = fxn_code.co_varnames[:fxn_code.co_argcount] - if 'line' not in args: + CO_VARARGS = 0x4 + if 'line' not in args and not fxn_code.co_flags & CO_VARARGS: showwarning_msg = ("functions overriding warnings.showwarning() " "must support the 'line' argument") if message == showwarning_msg: @@ -283,6 +284,78 @@ showwarning(message, category, filename, lineno) +class WarningMessage(object): + + """Holds the result of a single showwarning() call.""" + + _WARNING_DETAILS = ("message", "category", "filename", "lineno", "file", + "line") + + def __init__(self, message, category, filename, lineno, file=None, + line=None): + local_values = locals() + for attr in self._WARNING_DETAILS: + setattr(self, attr, local_values[attr]) + self._category_name = category.__name__ if category else None + + def __str__(self): + return ("{message : %r, category : %r, filename : %r, lineno : %s, " + "line : %r}" % (self.message, self._category_name, + self.filename, self.lineno, self.line)) + + +class WarningsRecorder(list): + + """Record the result of various showwarning() calls.""" + + # Explicitly stated arguments so as to not trigger DeprecationWarning + # about adding 'line'. + def showwarning(self, *args, **kwargs): + self.append(WarningMessage(*args, **kwargs)) + + def __getattr__(self, attr): + return getattr(self[-1], attr) + + def reset(self): + del self[:] + + +class catch_warnings(object): + + """Guard the warnings filter from being permanently changed and optionally + record the details of any warnings that are issued. + + Context manager returns an instance of warnings.WarningRecorder which is a + list of WarningMessage instances. Attributes on WarningRecorder are + redirected to the last created WarningMessage instance. + + """ + + def __init__(self, record=False, module=None): + """Specify whether to record warnings and if an alternative module + should be used other than sys.modules['warnings']. + + For compatibility with Python 3.0, please consider all arguments to be + keyword-only. + + """ + self._recorder = WarningsRecorder() if record else None + self._module = sys.modules['warnings'] if module is None else module + + def __enter__(self): + self._filters = self._module.filters + self._module.filters = self._filters[:] + self._showwarning = self._module.showwarning + if self._recorder is not None: + self._recorder.reset() # In case the instance is being reused. + self._module.showwarning = self._recorder.showwarning + return self._recorder + + def __exit__(self, *exc_info): + self._module.filters = self._filters + self._module.showwarning = self._showwarning + + # filters contains a sequence of filter 5-tuples # The components of the 5-tuple are: # - an action: error, ignore, always, default, module, or once Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Sep 2 03:25:16 2008 @@ -53,6 +53,11 @@ Library ------- +- Issue 3602: Moved test.test_support.catch_warning() to + warnings.catch_warnings() along with some API cleanup. Expanding the tests + for catch_warnings() also led to an improvement in the raising of a + DeprecationWarning related to warnings.warn_explicit(). + - The deprecation warnings for the old camelCase threading API were removed. - logging: fixed lack of use of encoding attribute specified on a stream. Modified: python/trunk/Python/_warnings.c ============================================================================== --- python/trunk/Python/_warnings.c (original) +++ python/trunk/Python/_warnings.c Tue Sep 2 03:25:16 2008 @@ -1,4 +1,5 @@ #include "Python.h" +#include "code.h" /* For DeprecationWarning about adding 'line'. */ #include "frameobject.h" #define MODULE_NAME "_warnings" @@ -416,11 +417,16 @@ /* A proper implementation of warnings.showwarning() should have at least two default arguments. */ if ((defaults == NULL) || (PyTuple_Size(defaults) < 2)) { - if (PyErr_WarnEx(PyExc_DeprecationWarning, msg, 1) < 0) { - Py_DECREF(show_fxn); - goto cleanup; + PyCodeObject *code = (PyCodeObject *) + PyFunction_GetCode(check_fxn); + if (!(code->co_flags & CO_VARARGS)) { + if (PyErr_WarnEx(PyExc_DeprecationWarning, msg, 1) < + 0) { + Py_DECREF(show_fxn); + goto cleanup; + } } - } + } res = PyObject_CallFunctionObjArgs(show_fxn, message, category, filename, lineno_obj, NULL); From python-checkins at python.org Tue Sep 2 03:39:18 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 2 Sep 2008 03:39:18 +0200 (CEST) Subject: [Python-checkins] r66136 - python/trunk/Doc/library/warnings.rst Message-ID: <20080902013918.D43B11E401A@bag.python.org> Author: andrew.kuchling Date: Tue Sep 2 03:39:18 2008 New Revision: 66136 Log: typo fix Modified: python/trunk/Doc/library/warnings.rst Modified: python/trunk/Doc/library/warnings.rst ============================================================================== --- python/trunk/Doc/library/warnings.rst (original) +++ python/trunk/Doc/library/warnings.rst Tue Sep 2 03:39:18 2008 @@ -269,7 +269,7 @@ .. class:: catch_warnings([record=False[, module=None]]) - A context manager that guards the warnings filter from being permanentally + A context manager that guards the warnings filter from being permanently mutated. The manager returns an instance of :class:`WarningsRecorder`. The *record* argument specifies whether warnings that would typically be handled by :func:`showwarning` should instead be recorded by the From python-checkins at python.org Tue Sep 2 04:29:06 2008 From: python-checkins at python.org (jesus.cea) Date: Tue, 2 Sep 2008 04:29:06 +0200 (CEST) Subject: [Python-checkins] r66137 - in python/trunk: Lib/bsddb/__init__.py Lib/bsddb/test/test_all.py Modules/bsddb.h Message-ID: <20080902022906.6C79D1E4005@bag.python.org> Author: jesus.cea Date: Tue Sep 2 04:29:06 2008 New Revision: 66137 Log: Improve compatibility with Python3.0 testsuite Modified: python/trunk/Lib/bsddb/__init__.py python/trunk/Lib/bsddb/test/test_all.py python/trunk/Modules/bsddb.h Modified: python/trunk/Lib/bsddb/__init__.py ============================================================================== --- python/trunk/Lib/bsddb/__init__.py (original) +++ python/trunk/Lib/bsddb/__init__.py Tue Sep 2 04:29:06 2008 @@ -110,7 +110,7 @@ key = _DeadlockWrap(cur.first, 0,0,0)[0] yield key - next = cur.next + next = getattr(cur, "next") while 1: try: key = _DeadlockWrap(next, 0,0,0)[0] @@ -123,7 +123,7 @@ # FIXME-20031101-greg: race condition. cursor could # be closed by another thread before this call. _DeadlockWrap(cur.set, key,0,0,0) - next = cur.next + next = getattr(cur, "next") except _bsddb.DBNotFoundError: pass except _bsddb.DBCursorClosedError: @@ -152,7 +152,7 @@ key = kv[0] yield kv - next = cur.next + next = getattr(cur, "next") while 1: try: kv = _DeadlockWrap(next) @@ -166,7 +166,7 @@ # FIXME-20031101-greg: race condition. cursor could # be closed by another thread before this call. _DeadlockWrap(cur.set, key,0,0,0) - next = cur.next + next = getattr(cur, "next") except _bsddb.DBNotFoundError: pass except _bsddb.DBCursorClosedError: @@ -302,12 +302,15 @@ self._checkCursor() return _DeadlockWrap(self.dbc.set_range, key) - def next(self): + def next(self): # Renamed by "2to3" self._checkOpen() self._checkCursor() - rv = _DeadlockWrap(self.dbc.next) + rv = _DeadlockWrap(getattr(self.dbc, "next")) return rv + if sys.version_info[0] >= 3 : # For "2to3" conversion + next = __next__ + def previous(self): self._checkOpen() self._checkCursor() Modified: python/trunk/Lib/bsddb/test/test_all.py ============================================================================== --- python/trunk/Lib/bsddb/test/test_all.py (original) +++ python/trunk/Lib/bsddb/test/test_all.py Tue Sep 2 04:29:06 2008 @@ -33,6 +33,8 @@ v = getattr(self._dbcursor, "next")() return self._fix(v) + next = __next__ + def previous(self) : v = self._dbcursor.previous() return self._fix(v) Modified: python/trunk/Modules/bsddb.h ============================================================================== --- python/trunk/Modules/bsddb.h (original) +++ python/trunk/Modules/bsddb.h Tue Sep 2 04:29:06 2008 @@ -105,7 +105,7 @@ #error "eek! DBVER can't handle minor versions > 9" #endif -#define PY_BSDDB_VERSION "4.7.3pre2" +#define PY_BSDDB_VERSION "4.7.3pre3" /* Python object definitions */ From buildbot at python.org Tue Sep 2 05:41:46 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 03:41:46 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902034147.0890C1E4005@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/479 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: jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 4 tests failed: test_distutils test_posix test_smtplib test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 05:58:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 03:58:54 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080902035854.F34E51E4005@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/250 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: brett.cannon BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 06:28:06 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 04:28:06 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080902042806.DD7AF1E4005@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/285 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: brett.cannon 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 python-checkins at python.org Tue Sep 2 07:29:52 2008 From: python-checkins at python.org (gregory.p.smith) Date: Tue, 2 Sep 2008 07:29:52 +0200 (CEST) Subject: [Python-checkins] r66141 - in python/trunk: Makefile.pre.in Misc/NEWS Message-ID: <20080902052952.7CAA51E4005@bag.python.org> Author: gregory.p.smith Date: Tue Sep 2 07:29:51 2008 New Revision: 66141 Log: Issue #3678: Correctly pass LDFLAGS and LDLAST to the linker on shared library targets in the Makefile. Modified: python/trunk/Makefile.pre.in python/trunk/Misc/NEWS Modified: python/trunk/Makefile.pre.in ============================================================================== --- python/trunk/Makefile.pre.in (original) +++ python/trunk/Makefile.pre.in Tue Sep 2 07:29:51 2008 @@ -412,14 +412,14 @@ libpython$(VERSION).so: $(LIBRARY_OBJS) if test $(INSTSONAME) != $(LDLIBRARY); then \ - $(LDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM); \ + $(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ $(LN) -f $(INSTSONAME) $@; \ else\ - $(LDSHARED) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM); \ + $(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ fi libpython$(VERSION).sl: $(LIBRARY_OBJS) - $(LDSHARED) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) + $(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) # This rule is here for OPENSTEP/Rhapsody/MacOSX. It builds a temporary # minimal framework (not including the Lib directory and such) in the current @@ -453,8 +453,8 @@ # for a shared core library; otherwise, this rule is a noop. $(DLLLIBRARY) libpython$(VERSION).dll.a: $(LIBRARY_OBJS) if test -n "$(DLLLIBRARY)"; then \ - $(LDSHARED) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ - $(LIBS) $(MODLIBS) $(SYSLIBS); \ + $(LDSHARED) $(LDFLAGS) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ + $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \ else true; \ fi Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Sep 2 07:29:51 2008 @@ -45,6 +45,9 @@ - Added warnings on the use of ``__getslice__``, ``__setslice__``, or ``__delslice__``. +- Issue #3678: Correctly pass LDFLAGS and LDLAST to the linker on shared + library targets in the Makefile. + C-API ----- From python-checkins at python.org Tue Sep 2 07:36:11 2008 From: python-checkins at python.org (gregory.p.smith) Date: Tue, 2 Sep 2008 07:36:11 +0200 (CEST) Subject: [Python-checkins] r66142 - in python/trunk: Lib/os.py Lib/test/test_os.py Misc/NEWS Message-ID: <20080902053611.ACBE81E4005@bag.python.org> Author: gregory.p.smith Date: Tue Sep 2 07:36:11 2008 New Revision: 66142 Log: Issue #3708: os.urandom no longer goes into an infinite loop when passed a non-integer floating point number. Modified: python/trunk/Lib/os.py python/trunk/Lib/test/test_os.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/os.py ============================================================================== --- python/trunk/Lib/os.py (original) +++ python/trunk/Lib/os.py Tue Sep 2 07:36:11 2008 @@ -753,8 +753,10 @@ _urandomfd = open("/dev/urandom", O_RDONLY) except (OSError, IOError): raise NotImplementedError("/dev/urandom (or equivalent) not found") - bytes = "" - while len(bytes) < n: - bytes += read(_urandomfd, n - len(bytes)) - close(_urandomfd) - return bytes + try: + bs = b"" + while n - len(bs) >= 1: + bs += read(_urandomfd, n - len(bs)) + finally: + close(_urandomfd) + return bs Modified: python/trunk/Lib/test/test_os.py ============================================================================== --- python/trunk/Lib/test/test_os.py (original) +++ python/trunk/Lib/test/test_os.py Tue Sep 2 07:36:11 2008 @@ -497,6 +497,10 @@ self.assertEqual(len(os.urandom(10)), 10) self.assertEqual(len(os.urandom(100)), 100) self.assertEqual(len(os.urandom(1000)), 1000) + # see http://bugs.python.org/issue3708 + self.assertEqual(len(os.urandom(0.9)), 0) + self.assertEqual(len(os.urandom(1.1)), 1) + self.assertEqual(len(os.urandom(2.0)), 2) except NotImplementedError: pass Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Sep 2 07:36:11 2008 @@ -72,6 +72,9 @@ - Issue #3703: _fileio.FileIO gave unhelpful error message when trying to open a directory. +- Issue #3708: os.urandom no longer goes into an infinite loop when passed a + non-integer floating point number. + Extension Modules ----------------- From buildbot at python.org Tue Sep 2 07:45:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 05:45:36 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080902054536.63E6D1E4005@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/3878 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: andrew.kuchling,jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 07:46:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 05:46:14 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902054615.085D91E4005@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/481 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: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 08:47:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 06:47:01 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080902064701.E01531E4005@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/230 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: gregory.p.smith BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 09:23:16 2008 From: python-checkins at python.org (mark.summerfield) Date: Tue, 2 Sep 2008 09:23:16 +0200 (CEST) Subject: [Python-checkins] r66143 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080902072316.6954A1E4005@bag.python.org> Author: mark.summerfield Date: Tue Sep 2 09:23:16 2008 New Revision: 66143 Log: a typo 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 Sep 2 09:23:16 2008 @@ -203,7 +203,7 @@ started around 1989. In the 1980s and early 1990s, most documentation was printed out for later study, not viewed online. LaTeX was widely used because it provided attractive printed output while remaining -straightforward to write once the basic rules of the markup werw +straightforward to write once the basic rules of the markup were learned. Today LaTeX is still used for writing publications destined for From buildbot at python.org Tue Sep 2 10:08:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 08:08:49 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian trunk Message-ID: <20080902080849.418151E4005@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/1039 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: gregory.p.smith BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_bsddb3 Traceback (most recent call last): File "/scratch/pybot/buildarea/trunk.klose-debian-s390/build/Lib/threading.py", line 522, in __bootstrap_inner self.run() File "/scratch/pybot/buildarea/trunk.klose-debian-s390/build/Lib/threading.py", line 477, in run self.__target(*self.__args, **self.__kwargs) File "/scratch/pybot/buildarea/trunk.klose-debian-s390/build/Lib/bsddb/test/test_thread.py", line 306, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/scratch/pybot/buildarea/trunk.klose-debian-s390/build/Lib/bsddb/dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30994, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 12:14:48 2008 From: python-checkins at python.org (nick.coghlan) Date: Tue, 2 Sep 2008 12:14:48 +0200 (CEST) Subject: [Python-checkins] r66144 - python/trunk/Lib/abc.py Message-ID: <20080902101448.402BD1E4008@bag.python.org> Author: nick.coghlan Date: Tue Sep 2 12:14:47 2008 New Revision: 66144 Log: Issue 3747: Fix caching in ABCMeta.__subclasscheck__ (R: Georg Brandl) Modified: python/trunk/Lib/abc.py Modified: python/trunk/Lib/abc.py ============================================================================== --- python/trunk/Lib/abc.py (original) +++ python/trunk/Lib/abc.py Tue Sep 2 12:14:47 2008 @@ -159,12 +159,12 @@ # Check if it's a subclass of a registered class (recursive) for rcls in cls._abc_registry: if issubclass(subclass, rcls): - cls._abc_registry.add(subclass) + cls._abc_cache.add(subclass) return True # Check if it's a subclass of a subclass (recursive) for scls in cls.__subclasses__(): if issubclass(subclass, scls): - cls._abc_registry.add(subclass) + cls._abc_cache.add(subclass) return True # No dice; update negative cache cls._abc_negative_cache.add(subclass) From python-checkins at python.org Tue Sep 2 12:32:34 2008 From: python-checkins at python.org (marc-andre.lemburg) Date: Tue, 2 Sep 2008 12:32:34 +0200 (CEST) Subject: [Python-checkins] r66145 - python/trunk/Lib/platform.py Message-ID: <20080902103234.706131E4008@bag.python.org> Author: marc-andre.lemburg Date: Tue Sep 2 12:32:34 2008 New Revision: 66145 Log: Add quotes around the file name to avoid issues with spaces. Closes #3719. Modified: python/trunk/Lib/platform.py Modified: python/trunk/Lib/platform.py ============================================================================== --- python/trunk/Lib/platform.py (original) +++ python/trunk/Lib/platform.py Tue Sep 2 12:32:34 2008 @@ -969,7 +969,7 @@ return default target = _follow_symlinks(target) try: - f = os.popen('file %s 2> /dev/null' % target) + f = os.popen('file "%s" 2> /dev/null' % target) except (AttributeError,os.error): return default output = string.strip(f.read()) From buildbot at python.org Tue Sep 2 13:27:02 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 11:27:02 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080902112703.1297B1E4008@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/182 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: marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== ERROR: testShutdown (test.test_socket.BasicTCPTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/trunk.heller-x86-osx5/build/Lib/test/test_socket.py", line 120, in _tearDown self.fail(msg) AssertionError: [Errno 57] Socket is not connected make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 14:11:19 2008 From: python-checkins at python.org (marc-andre.lemburg) Date: Tue, 2 Sep 2008 14:11:19 +0200 (CEST) Subject: [Python-checkins] r66150 - python/trunk/Misc/NEWS Message-ID: <20080902121119.B9ECD1E4008@bag.python.org> Author: marc-andre.lemburg Date: Tue Sep 2 14:11:19 2008 New Revision: 66150 Log: Add news item for #3719. Modified: python/trunk/Misc/NEWS Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Tue Sep 2 14:11:19 2008 @@ -56,6 +56,9 @@ Library ------- +- Issue #3719: platform.architecture() fails if there are spaces in the + path to the Python binary. + - Issue 3602: Moved test.test_support.catch_warning() to warnings.catch_warnings() along with some API cleanup. Expanding the tests for catch_warnings() also led to an improvement in the raising of a From buildbot at python.org Tue Sep 2 14:39:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 12:39:27 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902123928.07B481E4008@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/483 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: nick.coghlan BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 14:59:13 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 12:59:13 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080902125913.86A361E4008@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/253 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: nick.coghlan BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 15:02:34 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 13:02:34 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080902130234.99E0D1E4008@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/3881 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 15:06:01 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 2 Sep 2008 15:06:01 +0200 (CEST) Subject: [Python-checkins] r66154 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080902130601.1F2E71E4008@bag.python.org> Author: andrew.kuchling Date: Tue Sep 2 15:06:00 2008 New Revision: 66154 Log: Clarify example; add imports 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 Sep 2 15:06:00 2008 @@ -1224,7 +1224,7 @@ You can write your own ABCs by using ``abc.ABCMeta`` as the metaclass in a class definition:: - from abc import ABCMeta + from abc import ABCMeta, abstractmethod class Drawable(): __metaclass__ = ABCMeta @@ -1256,15 +1256,21 @@ Note that the exception is only raised when you actually try to create an instance of a subclass lacking the method:: - >>> s=Square() + >>> class Circle(Drawable): + ... pass + ... + >>> c=Circle() Traceback (most recent call last): File "", line 1, in - TypeError: Can't instantiate abstract class Square with abstract methods draw + TypeError: Can't instantiate abstract class Circle with abstract methods draw >>> Abstract data attributes can be declared using the ``@abstractproperty`` decorator:: + from abc import abstractproperty + ... + @abstractproperty def readonly(self): return self._x @@ -3206,5 +3212,5 @@ The author would like to thank the following people for offering suggestions, corrections and assistance with various drafts of this article: -Georg Brandl, Nick Coghlan, Jim Jewett, Antoine Pitrou. +Georg Brandl, Steve Brown, Nick Coghlan, Jim Jewett, Antoine Pitrou. From python-checkins at python.org Tue Sep 2 15:08:11 2008 From: python-checkins at python.org (andrew.kuchling) Date: Tue, 2 Sep 2008 15:08:11 +0200 (CEST) Subject: [Python-checkins] r66155 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080902130811.83B6C1E4008@bag.python.org> Author: andrew.kuchling Date: Tue Sep 2 15:08:11 2008 New Revision: 66155 Log: Add e-mail address 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 Sep 2 15:08:11 2008 @@ -4,7 +4,7 @@ .. XXX add trademark info for Apple, Microsoft, SourceForge. -:Author: A.M. Kuchling +:Author: A.M. Kuchling (amk at amk.ca) :Release: |release| :Date: |today| From python-checkins at python.org Tue Sep 2 19:39:45 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 2 Sep 2008 19:39:45 +0200 (CEST) Subject: [Python-checkins] r66159 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/support.py 2.x/test/test_extensions.py 2.x/test/test_notebook.py 2.x/test/test_other_widgets.py 2.x/test/test_style.py 2.x/test/test_treeview.py 2.x/ttk.py 3.x/test/support.py 3.x/test/test_extensions.py 3.x/test/test_notebook.py 3.x/test/test_other_widgets.py 3.x/test/test_style.py 3.x/test/test_treeview.py 3.x/ttk.py Message-ID: <20080902173945.6A42C1E4008@bag.python.org> Author: guilherme.polo Date: Tue Sep 2 19:39:44 2008 New Revision: 66159 Log: Notebook.tabs always returns a container now; Style stores its master now; Added tests for the Notebook widget; Moved simulate_mouse_click from treeview test to the support module; Changed some tests in order to always keep only a single Tk window running at a time, this prevents some possible problems that some tests may hit in case it depends on having its window focused while it runs (this problem appeared in the new Notebook tests before this fix). Added: sandbox/trunk/ttk-gsoc/src/2.x/test/test_notebook.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_notebook.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/support.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_extensions.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py sandbox/trunk/ttk-gsoc/src/2.x/ttk.py sandbox/trunk/ttk-gsoc/src/3.x/test/support.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_extensions.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/support.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/support.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/support.py Tue Sep 2 19:39:44 2008 @@ -14,3 +14,11 @@ verbosity = 0 runner = unittest.TextTestRunner(sys.stdout, verbosity=verbosity) runner.run(suite) + +def simulate_mouse_click(widget, x, y): + """Generate proper events to click at the x, y position (tries to act + like an X server).""" + widget.event_generate('', x=0, y=0) + widget.event_generate('', x=x, y=y) + widget.event_generate('', x=x, y=y) + widget.event_generate('', x=x, y=y) Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_extensions.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_extensions.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_extensions.py Tue Sep 2 19:39:44 2008 @@ -38,7 +38,7 @@ self.failIf(sys.last_type == Tkinter.TclError) - def x_test_initialization(self): + def test_initialization(self): # master passing x = ttk.LabeledScale() self.failUnlessEqual(x.master, Tkinter._default_root) @@ -170,19 +170,19 @@ class OptionMenuTest(unittest.TestCase): + # XXX Since a StringVar is being created without an explict master, this + # test case can't be the first one to run. def setUp(self): - self.root = Tkinter.Tk() - self.textvar = Tkinter.StringVar(self.root) + self.textvar = Tkinter.StringVar() def tearDown(self): del self.textvar - del self.root def test_widget_destroy(self): - var = Tkinter.StringVar(self.root) - optmenu = ttk.OptionMenu(self.root, var) + var = Tkinter.StringVar() + optmenu = ttk.OptionMenu(None, var) name = var._name optmenu.destroy() self.failUnlessEqual(optmenu.tk.globalgetvar(name), var.get()) @@ -192,9 +192,9 @@ def test_initialization(self): self.failUnlessRaises(Tkinter.TclError, - ttk.OptionMenu, self.root, self.textvar, invalid='thing') + ttk.OptionMenu, None, self.textvar, invalid='thing') - optmenu = ttk.OptionMenu(self.root, self.textvar, 'b', 'a', 'b') + optmenu = ttk.OptionMenu(None, self.textvar, 'b', 'a', 'b') self.failUnlessEqual(optmenu._variable.get(), 'b') self.failUnless(optmenu['menu']) @@ -206,7 +206,7 @@ def test_menu(self): items = ('a', 'b', 'c') default = 'a' - optmenu = ttk.OptionMenu(self.root, self.textvar, default, *items) + optmenu = ttk.OptionMenu(None, self.textvar, default, *items) found_default = False for i in range(len(items)): value = optmenu['menu'].entrycget(i, 'value') @@ -214,10 +214,11 @@ if value == default: found_default = True self.failUnless(found_default) + optmenu.destroy() # default shouldn't be in menu if it is not part of values default = 'd' - optmenu = ttk.OptionMenu(self.root, self.textvar, default, *items) + optmenu = ttk.OptionMenu(None, self.textvar, default, *items) curr = None i = 0 while True: @@ -246,7 +247,7 @@ def cb_test(item): self.failUnlessEqual(item, items[1]) success.append(True) - optmenu = ttk.OptionMenu(self.root, self.textvar, 'a', command=cb_test, + optmenu = ttk.OptionMenu(None, self.textvar, 'a', command=cb_test, *items) optmenu['menu'].invoke(1) if not success: Added: sandbox/trunk/ttk-gsoc/src/2.x/test/test_notebook.py ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_notebook.py Tue Sep 2 19:39:44 2008 @@ -0,0 +1,197 @@ +import unittest +import Tkinter +import ttk + +import support + +class NotebookTest(unittest.TestCase): + + def setUp(self): + self.nb = ttk.Notebook() + self.child1 = ttk.Label() + self.child2 = ttk.Label() + self.nb.add(self.child1, text='a') + self.nb.add(self.child2, text='b') + + def tearDown(self): + self.child1.destroy() + self.child2.destroy() + self.nb.destroy() + + + def test_tab_identifiers(self): + self.nb.forget(0) + self.nb.hide(self.child2) + self.failUnlessRaises(Tkinter.TclError, self.nb.tab, self.child1) + self.failUnlessEqual(self.nb.index('end'), 1) + self.nb.add(self.child2) + self.failUnlessEqual(self.nb.index('end'), 1) + self.nb.select(self.child2) + + self.failUnless(self.nb.tab('current')) + self.nb.add(self.child1, text='a') + + self.nb.pack() + self.nb.wait_visibility() + self.failUnlessEqual(self.nb.tab('@5,5'), self.nb.tab('current')) + + for i in range(5, 100, 5): + if self.nb.tab('@%d, 5' % i, text=None) == 'a': + break + else: + self.fail("Tab with text 'a' not found") + + + def test_add_and_hidden(self): + self.failUnlessRaises(Tkinter.TclError, self.nb.hide, -1) + self.failUnlessRaises(Tkinter.TclError, self.nb.hide, 'hi') + self.failUnlessRaises(Tkinter.TclError, self.nb.hide, None) + self.failUnlessRaises(Tkinter.TclError, self.nb.add, None) + self.failUnlessRaises(Tkinter.TclError, self.nb.add, ttk.Label(), + unknown='option') + + tabs = self.nb.tabs() + self.nb.hide(self.child1) + self.nb.add(self.child1) + self.failUnlessEqual(self.nb.tabs(), tabs) + + child = ttk.Label() + self.nb.add(child, text='c') + tabs = self.nb.tabs() + + curr = self.nb.index('current') + # verify that the tab gets readded at its previous position + child2_index = self.nb.index(self.child2) + self.nb.hide(self.child2) + self.nb.add(self.child2) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.failUnlessEqual(self.nb.index(self.child2), child2_index) + self.failUnless(str(self.child2) == self.nb.tabs()[child2_index]) + # but the tab next to it (not hidden) is the one selected now + self.failUnlessEqual(self.nb.index('current'), curr + 1) + + + def test_forget(self): + self.failUnlessRaises(Tkinter.TclError, self.nb.forget, -1) + self.failUnlessRaises(Tkinter.TclError, self.nb.forget, 'hi') + self.failUnlessRaises(Tkinter.TclError, self.nb.forget, None) + + tabs = self.nb.tabs() + child1_index = self.nb.index(self.child1) + self.nb.forget(self.child1) + self.failIf(str(self.child1) in self.nb.tabs()) + self.failUnlessEqual(len(tabs) - 1, len(self.nb.tabs())) + + self.nb.add(self.child1) + self.failUnlessEqual(self.nb.index(self.child1), 1) + self.failIf(child1_index == self.nb.index(self.child1)) + + + def test_index(self): + self.failUnlessRaises(Tkinter.TclError, self.nb.index, -1) + self.failUnlessRaises(Tkinter.TclError, self.nb.index, None) + + self.failUnless(isinstance(self.nb.index('end'), int)) + self.failUnlessEqual(self.nb.index(self.child1), 0) + self.failUnlessEqual(self.nb.index(self.child2), 1) + self.failUnlessEqual(self.nb.index('end'), 2) + + + def test_insert(self): + # moving tabs + tabs = self.nb.tabs() + self.nb.insert(1, tabs[0]) + self.failUnlessEqual(self.nb.tabs(), (tabs[1], tabs[0])) + self.nb.insert(self.child1, self.child2) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.nb.insert('end', self.child1) + self.failUnlessEqual(self.nb.tabs(), (tabs[1], tabs[0])) + self.nb.insert('end', 0) + self.failUnlessEqual(self.nb.tabs(), tabs) + # bad moves + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, 2, tabs[0]) + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, -1, tabs[0]) + + # new tab + child3 = ttk.Label() + self.nb.insert(1, child3) + self.failUnlessEqual(self.nb.tabs(), (tabs[0], str(child3), tabs[1])) + self.nb.forget(child3) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.nb.insert(self.child1, child3) + self.failUnlessEqual(self.nb.tabs(), (str(child3), ) + tabs) + self.nb.forget(child3) + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, 2, child3) + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, -1, child3) + + # bad inserts + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, 'end', None) + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, None, 0) + self.failUnlessRaises(Tkinter.TclError, self.nb.insert, None, None) + + + def test_select(self): + self.nb.pack() + self.nb.wait_visibility() + + success = [] + tab_changed = [] + + self.child1.bind('', lambda evt: success.append(True)) + self.nb.bind('<>', + lambda evt: tab_changed.append(True)) + + self.failUnlessEqual(self.nb.select(), str(self.child1)) + self.nb.select(self.child2) + self.failUnless(success) + self.failUnlessEqual(self.nb.select(), str(self.child2)) + + self.nb.update() + self.failUnless(tab_changed) + + + def test_tab(self): + self.failUnlessRaises(Tkinter.TclError, self.nb.tab, -1) + self.failUnlessRaises(Tkinter.TclError, self.nb.tab, 'notab') + self.failUnlessRaises(Tkinter.TclError, self.nb.tab, None) + + self.failUnless(isinstance(self.nb.tab(self.child1), dict)) + self.failUnlessEqual(self.nb.tab(self.child1, text=None), 'a') + self.nb.tab(self.child1, text='abc') + self.failUnlessEqual(self.nb.tab(self.child1, text=None), 'abc') + + + def test_tabs(self): + self.failUnlessEqual(len(self.nb.tabs()), 2) + + self.nb.forget(self.child1) + self.nb.forget(self.child2) + + self.failUnlessEqual(self.nb.tabs(), ()) + + + def test_traversal(self): + self.nb.pack() + self.nb.wait_visibility() + + self.nb.select(0) + + support.simulate_mouse_click(self.nb, 5, 5) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child2)) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child1)) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child2)) + + self.nb.tab(self.child1, text='a', underline=0) + self.nb.enable_traversal() + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child1)) + + +def test_main(): + support.run(NotebookTest) + +if __name__ == "__main__": + test_main() Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py Tue Sep 2 19:39:44 2008 @@ -66,9 +66,7 @@ def test_invoke(self): success = [] - def cb_test(): - success.append(1) - btn = ttk.Button(command=cb_test) + btn = ttk.Button(command=lambda: success.append(1)) btn.invoke() self.failUnless(success) @@ -119,11 +117,10 @@ def test_virtual_event(self): success = [] - def cb_test(evt): - success.append(True) self.combo['values'] = [1] - self.combo.bind('<>', cb_test) + self.combo.bind('<>', + lambda evt: success.append(True)) self.combo.pack() self.combo.wait_visibility() @@ -136,10 +133,8 @@ def test_postcommand(self): success = [] - def cb_test(): - success.append(True) - self.combo['postcommand'] = cb_test + self.combo['postcommand'] = lambda: success.append(True) self.combo.pack() self.combo.wait_visibility() @@ -224,8 +219,7 @@ def test_validation_options(self): success = [] - def test_invalid(): - success.append(True) + test_invalid = lambda: success.append(True) self.entry['validate'] = 'none' self.entry['validatecommand'] = lambda: False @@ -453,10 +447,8 @@ def test_custom_event(self): failure = [1, 1, 1] # will need to be empty - def cb_test(event): - failure.pop() - funcid = self.scale.bind('<>', cb_test) + funcid = self.scale.bind('<>', lambda evt: failure.pop()) self.scale['from'] = 10 self.scale['from_'] = 10 Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py Tue Sep 2 19:39:44 2008 @@ -6,7 +6,12 @@ class StyleTest(unittest.TestCase): - style = ttk.Style() + def setUp(self): + self.style = ttk.Style() + + def tearDown(self): + self.style.master.destroy() + def test_configure(self): style = self.style Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py Tue Sep 2 19:39:44 2008 @@ -13,13 +13,6 @@ def tearDown(self): self.tv.destroy() - def _simulate_mouse_click(self, x, y): - # Generate proper events (trying to act like an X server). - self.tv.event_generate('', x=0, y=0) - self.tv.event_generate('', x=x, y=y) - self.tv.event_generate('', x=x, y=y) - self.tv.event_generate('', x=x, y=y) - def test_bbox(self): self.tv.pack() @@ -201,20 +194,18 @@ def test_heading_callback(self): - def callback(): - success.append(True) - def simulate_heading_click(x, y): - self._simulate_mouse_click(x, y) + support.simulate_mouse_click(self.tv, x, y) self.tv.update_idletasks() + success = [] # no success for now + self.tv.pack() self.tv.wait_visibility() - self.tv.heading('#0', command=callback) + self.tv.heading('#0', command=lambda: success.append(True)) self.tv.column('#0', width=100) self.tv.update() - success = [] # no success for now # assuming that the coords (5, 5) fall into heading #0 simulate_heading_click(5, 5) if not success: @@ -356,15 +347,13 @@ def test_tag_bind(self): - def cb_test(event): - events.append(1) - def cb_test2(event): - events.append(2) events = [] item1 = self.tv.insert('', 'end', tags=['call']) item2 = self.tv.insert('', 'end', tags=['call']) - self.tv.tag_bind('call', '', cb_test) - self.tv.tag_bind('call', '', cb_test2) + self.tv.tag_bind('call', '', + lambda evt: events.append(1)) + self.tv.tag_bind('call', '', + lambda evt: events.append(2)) self.tv.pack() self.tv.wait_visibility() @@ -382,7 +371,7 @@ self.failUnlessEqual(len(pos_y), 2) # item1 and item2 y pos for y in pos_y: - self._simulate_mouse_click(0, y) + support.simulate_mouse_click(self.tv, 0, y) # by now there should be 4 things in the events list, since each # item had a bind for two events that were simulated above Modified: sandbox/trunk/ttk-gsoc/src/2.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/ttk.py Tue Sep 2 19:39:44 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.4" +__version__ = "0.2.5" __author__ = "Guilherme Polo " @@ -360,7 +360,8 @@ Tkinter._default_root = Tkinter.Tk() master = Tkinter._default_root - self.tk = master.tk + self.master = master + self.tk = self.master.tk def configure(self, style, query_opt=None, **kw): @@ -904,7 +905,7 @@ def tabs(self): """Returns a list of windows managed by the notebook.""" - return self.tk.call(self._w, "tabs") + return self.tk.call(self._w, "tabs") or () def enable_traversal(self): Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/support.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/support.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/support.py Tue Sep 2 19:39:44 2008 @@ -14,3 +14,11 @@ verbosity = 0 runner = unittest.TextTestRunner(sys.stdout, verbosity=verbosity) runner.run(suite) + +def simulate_mouse_click(widget, x, y): + """Generate proper events to click at the x, y position (tries to act + like an X server).""" + widget.event_generate('', x=0, y=0) + widget.event_generate('', x=x, y=y) + widget.event_generate('', x=x, y=y) + widget.event_generate('', x=x, y=y) Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_extensions.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_extensions.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_extensions.py Tue Sep 2 19:39:44 2008 @@ -38,7 +38,7 @@ self.failIf(sys.last_type == tkinter.TclError) - def x_test_initialization(self): + def test_initialization(self): # master passing x = ttk.LabeledScale() self.failUnlessEqual(x.master, tkinter._default_root) @@ -170,19 +170,19 @@ class OptionMenuTest(unittest.TestCase): + # XXX Since a StringVar is being created without an explict master, this + # test case can't be the first one to run. def setUp(self): - self.root = tkinter.Tk() - self.textvar = tkinter.StringVar(self.root) + self.textvar = tkinter.StringVar() def tearDown(self): del self.textvar - del self.root def test_widget_destroy(self): - var = tkinter.StringVar(self.root) - optmenu = ttk.OptionMenu(self.root, var) + var = tkinter.StringVar() + optmenu = ttk.OptionMenu(None, var) name = var._name optmenu.destroy() self.failUnlessEqual(optmenu.tk.globalgetvar(name), var.get()) @@ -192,9 +192,9 @@ def test_initialization(self): self.failUnlessRaises(tkinter.TclError, - ttk.OptionMenu, self.root, self.textvar, invalid='thing') + ttk.OptionMenu, None, self.textvar, invalid='thing') - optmenu = ttk.OptionMenu(self.root, self.textvar, 'b', 'a', 'b') + optmenu = ttk.OptionMenu(None, self.textvar, 'b', 'a', 'b') self.failUnlessEqual(optmenu._variable.get(), 'b') self.failUnless(optmenu['menu']) @@ -206,7 +206,7 @@ def test_menu(self): items = ('a', 'b', 'c') default = 'a' - optmenu = ttk.OptionMenu(self.root, self.textvar, default, *items) + optmenu = ttk.OptionMenu(None, self.textvar, default, *items) found_default = False for i in range(len(items)): value = optmenu['menu'].entrycget(i, 'value') @@ -214,10 +214,11 @@ if value == default: found_default = True self.failUnless(found_default) + optmenu.destroy() # default shouldn't be in menu if it is not part of values default = 'd' - optmenu = ttk.OptionMenu(self.root, self.textvar, default, *items) + optmenu = ttk.OptionMenu(None, self.textvar, default, *items) curr = None i = 0 while True: @@ -246,7 +247,7 @@ def cb_test(item): self.failUnlessEqual(item, items[1]) success.append(True) - optmenu = ttk.OptionMenu(self.root, self.textvar, 'a', command=cb_test, + optmenu = ttk.OptionMenu(None, self.textvar, 'a', command=cb_test, *items) optmenu['menu'].invoke(1) if not success: Added: sandbox/trunk/ttk-gsoc/src/3.x/test/test_notebook.py ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_notebook.py Tue Sep 2 19:39:44 2008 @@ -0,0 +1,197 @@ +import unittest +import tkinter +import ttk + +import support + +class NotebookTest(unittest.TestCase): + + def setUp(self): + self.nb = ttk.Notebook() + self.child1 = ttk.Label() + self.child2 = ttk.Label() + self.nb.add(self.child1, text='a') + self.nb.add(self.child2, text='b') + + def tearDown(self): + self.child1.destroy() + self.child2.destroy() + self.nb.destroy() + + + def test_tab_identifiers(self): + self.nb.forget(0) + self.nb.hide(self.child2) + self.failUnlessRaises(tkinter.TclError, self.nb.tab, self.child1) + self.failUnlessEqual(self.nb.index('end'), 1) + self.nb.add(self.child2) + self.failUnlessEqual(self.nb.index('end'), 1) + self.nb.select(self.child2) + + self.failUnless(self.nb.tab('current')) + self.nb.add(self.child1, text='a') + + self.nb.pack() + self.nb.wait_visibility() + self.failUnlessEqual(self.nb.tab('@5,5'), self.nb.tab('current')) + + for i in range(5, 100, 5): + if self.nb.tab('@%d, 5' % i, text=None) == 'a': + break + else: + self.fail("Tab with text 'a' not found") + + + def test_add_and_hidden(self): + self.failUnlessRaises(tkinter.TclError, self.nb.hide, -1) + self.failUnlessRaises(tkinter.TclError, self.nb.hide, 'hi') + self.failUnlessRaises(tkinter.TclError, self.nb.hide, None) + self.failUnlessRaises(tkinter.TclError, self.nb.add, None) + self.failUnlessRaises(tkinter.TclError, self.nb.add, ttk.Label(), + unknown='option') + + tabs = self.nb.tabs() + self.nb.hide(self.child1) + self.nb.add(self.child1) + self.failUnlessEqual(self.nb.tabs(), tabs) + + child = ttk.Label() + self.nb.add(child, text='c') + tabs = self.nb.tabs() + + curr = self.nb.index('current') + # verify that the tab gets readded at its previous position + child2_index = self.nb.index(self.child2) + self.nb.hide(self.child2) + self.nb.add(self.child2) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.failUnlessEqual(self.nb.index(self.child2), child2_index) + self.failUnless(str(self.child2) == self.nb.tabs()[child2_index]) + # but the tab next to it (not hidden) is the one selected now + self.failUnlessEqual(self.nb.index('current'), curr + 1) + + + def test_forget(self): + self.failUnlessRaises(tkinter.TclError, self.nb.forget, -1) + self.failUnlessRaises(tkinter.TclError, self.nb.forget, 'hi') + self.failUnlessRaises(tkinter.TclError, self.nb.forget, None) + + tabs = self.nb.tabs() + child1_index = self.nb.index(self.child1) + self.nb.forget(self.child1) + self.failIf(str(self.child1) in self.nb.tabs()) + self.failUnlessEqual(len(tabs) - 1, len(self.nb.tabs())) + + self.nb.add(self.child1) + self.failUnlessEqual(self.nb.index(self.child1), 1) + self.failIf(child1_index == self.nb.index(self.child1)) + + + def test_index(self): + self.failUnlessRaises(tkinter.TclError, self.nb.index, -1) + self.failUnlessRaises(tkinter.TclError, self.nb.index, None) + + self.failUnless(isinstance(self.nb.index('end'), int)) + self.failUnlessEqual(self.nb.index(self.child1), 0) + self.failUnlessEqual(self.nb.index(self.child2), 1) + self.failUnlessEqual(self.nb.index('end'), 2) + + + def test_insert(self): + # moving tabs + tabs = self.nb.tabs() + self.nb.insert(1, tabs[0]) + self.failUnlessEqual(self.nb.tabs(), (tabs[1], tabs[0])) + self.nb.insert(self.child1, self.child2) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.nb.insert('end', self.child1) + self.failUnlessEqual(self.nb.tabs(), (tabs[1], tabs[0])) + self.nb.insert('end', 0) + self.failUnlessEqual(self.nb.tabs(), tabs) + # bad moves + self.failUnlessRaises(tkinter.TclError, self.nb.insert, 2, tabs[0]) + self.failUnlessRaises(tkinter.TclError, self.nb.insert, -1, tabs[0]) + + # new tab + child3 = ttk.Label() + self.nb.insert(1, child3) + self.failUnlessEqual(self.nb.tabs(), (tabs[0], str(child3), tabs[1])) + self.nb.forget(child3) + self.failUnlessEqual(self.nb.tabs(), tabs) + self.nb.insert(self.child1, child3) + self.failUnlessEqual(self.nb.tabs(), (str(child3), ) + tabs) + self.nb.forget(child3) + self.failUnlessRaises(tkinter.TclError, self.nb.insert, 2, child3) + self.failUnlessRaises(tkinter.TclError, self.nb.insert, -1, child3) + + # bad inserts + self.failUnlessRaises(tkinter.TclError, self.nb.insert, 'end', None) + self.failUnlessRaises(tkinter.TclError, self.nb.insert, None, 0) + self.failUnlessRaises(tkinter.TclError, self.nb.insert, None, None) + + + def test_select(self): + self.nb.pack() + self.nb.wait_visibility() + + success = [] + tab_changed = [] + + self.child1.bind('', lambda evt: success.append(True)) + self.nb.bind('<>', + lambda evt: tab_changed.append(True)) + + self.failUnlessEqual(self.nb.select(), str(self.child1)) + self.nb.select(self.child2) + self.failUnless(success) + self.failUnlessEqual(self.nb.select(), str(self.child2)) + + self.nb.update() + self.failUnless(tab_changed) + + + def test_tab(self): + self.failUnlessRaises(tkinter.TclError, self.nb.tab, -1) + self.failUnlessRaises(tkinter.TclError, self.nb.tab, 'notab') + self.failUnlessRaises(tkinter.TclError, self.nb.tab, None) + + self.failUnless(isinstance(self.nb.tab(self.child1), dict)) + self.failUnlessEqual(self.nb.tab(self.child1, text=None), 'a') + self.nb.tab(self.child1, text='abc') + self.failUnlessEqual(self.nb.tab(self.child1, text=None), 'abc') + + + def test_tabs(self): + self.failUnlessEqual(len(self.nb.tabs()), 2) + + self.nb.forget(self.child1) + self.nb.forget(self.child2) + + self.failUnlessEqual(self.nb.tabs(), ()) + + + def test_traversal(self): + self.nb.pack() + self.nb.wait_visibility() + + self.nb.select(0) + + support.simulate_mouse_click(self.nb, 5, 5) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child2)) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child1)) + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child2)) + + self.nb.tab(self.child1, text='a', underline=0) + self.nb.enable_traversal() + self.nb.event_generate('') + self.failUnlessEqual(self.nb.select(), str(self.child1)) + + +def test_main(): + support.run(NotebookTest) + +if __name__ == "__main__": + test_main() Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py Tue Sep 2 19:39:44 2008 @@ -66,9 +66,7 @@ def test_invoke(self): success = [] - def cb_test(): - success.append(1) - btn = ttk.Button(command=cb_test) + btn = ttk.Button(command=lambda: success.append(1)) btn.invoke() self.failUnless(success) @@ -119,11 +117,10 @@ def test_virtual_event(self): success = [] - def cb_test(evt): - success.append(True) self.combo['values'] = [1] - self.combo.bind('<>', cb_test) + self.combo.bind('<>', + lambda evt: success.append(True)) self.combo.pack() self.combo.wait_visibility() @@ -136,10 +133,8 @@ def test_postcommand(self): success = [] - def cb_test(): - success.append(True) - self.combo['postcommand'] = cb_test + self.combo['postcommand'] = lambda: success.append(True) self.combo.pack() self.combo.wait_visibility() @@ -224,8 +219,7 @@ def test_validation_options(self): success = [] - def test_invalid(): - success.append(True) + test_invalid = lambda: success.append(True) self.entry['validate'] = 'none' self.entry['validatecommand'] = lambda: False @@ -453,10 +447,8 @@ def test_custom_event(self): failure = [1, 1, 1] # will need to be empty - def cb_test(event): - failure.pop() - funcid = self.scale.bind('<>', cb_test) + funcid = self.scale.bind('<>', lambda evt: failure.pop()) self.scale['from'] = 10 self.scale['from_'] = 10 Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py Tue Sep 2 19:39:44 2008 @@ -6,7 +6,12 @@ class StyleTest(unittest.TestCase): - style = ttk.Style() + def setUp(self): + self.style = ttk.Style() + + def tearDown(self): + self.style.master.destroy() + def test_configure(self): style = self.style Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py Tue Sep 2 19:39:44 2008 @@ -13,13 +13,6 @@ def tearDown(self): self.tv.destroy() - def _simulate_mouse_click(self, x, y): - # Generate proper events (trying to act like an X server). - self.tv.event_generate('', x=0, y=0) - self.tv.event_generate('', x=x, y=y) - self.tv.event_generate('', x=x, y=y) - self.tv.event_generate('', x=x, y=y) - def test_bbox(self): self.tv.pack() @@ -201,20 +194,18 @@ def test_heading_callback(self): - def callback(): - success.append(True) - def simulate_heading_click(x, y): - self._simulate_mouse_click(x, y) + support.simulate_mouse_click(self.tv, x, y) self.tv.update_idletasks() + success = [] # no success for now + self.tv.pack() self.tv.wait_visibility() - self.tv.heading('#0', command=callback) + self.tv.heading('#0', command=lambda: success.append(True)) self.tv.column('#0', width=100) self.tv.update() - success = [] # no success for now # assuming that the coords (5, 5) fall into heading #0 simulate_heading_click(5, 5) if not success: @@ -356,15 +347,13 @@ def test_tag_bind(self): - def cb_test(event): - events.append(1) - def cb_test2(event): - events.append(2) events = [] item1 = self.tv.insert('', 'end', tags=['call']) item2 = self.tv.insert('', 'end', tags=['call']) - self.tv.tag_bind('call', '', cb_test) - self.tv.tag_bind('call', '', cb_test2) + self.tv.tag_bind('call', '', + lambda evt: events.append(1)) + self.tv.tag_bind('call', '', + lambda evt: events.append(2)) self.tv.pack() self.tv.wait_visibility() @@ -382,7 +371,7 @@ self.failUnlessEqual(len(pos_y), 2) # item1 and item2 y pos for y in pos_y: - self._simulate_mouse_click(0, y) + support.simulate_mouse_click(self.tv, 0, y) # by now there should be 4 things in the events list, since each # item had a bind for two events that were simulated above Modified: sandbox/trunk/ttk-gsoc/src/3.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Tue Sep 2 19:39:44 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.4" +__version__ = "0.2.5" __author__ = "Guilherme Polo " @@ -360,7 +360,8 @@ tkinter._default_root = tkinter.Tk() master = tkinter._default_root - self.tk = master.tk + self.master = master + self.tk = self.master.tk def configure(self, style, query_opt=None, **kw): @@ -904,7 +905,7 @@ def tabs(self): """Returns a list of windows managed by the notebook.""" - return self.tk.call(self._w, "tabs") + return self.tk.call(self._w, "tabs") or () def enable_traversal(self): From buildbot at python.org Tue Sep 2 21:11:58 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 19:11:58 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080902191158.2A62B1E400A@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/288 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: jesse.noller,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_email test_socket make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 21:33:41 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 19:33:41 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080902193341.A6C9E1E4006@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/255 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: jesse.noller BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 22:36:44 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Tue, 2 Sep 2008 22:36:44 +0200 (CEST) Subject: [Python-checkins] r66162 - python/trunk/Lib/test/test_asyncore.py Message-ID: <20080902203644.9DBBC1E4006@bag.python.org> Author: hirokazu.yamamoto Date: Tue Sep 2 22:36:44 2008 New Revision: 66162 Log: Issue #3759: test_asyncore.py leaked handle. Reviewed by Amaury Forgeot d'Arc Modified: python/trunk/Lib/test/test_asyncore.py Modified: python/trunk/Lib/test/test_asyncore.py ============================================================================== --- python/trunk/Lib/test/test_asyncore.py (original) +++ python/trunk/Lib/test/test_asyncore.py Tue Sep 2 22:36:44 2008 @@ -389,6 +389,7 @@ def test_recv(self): fd = os.open(TESTFN, os.O_RDONLY) w = asyncore.file_wrapper(fd) + os.close(fd) self.assertNotEqual(w.fd, fd) self.assertNotEqual(w.fileno(), fd) @@ -402,6 +403,7 @@ d2 = "I want to buy some cheese." fd = os.open(TESTFN, os.O_WRONLY | os.O_APPEND) w = asyncore.file_wrapper(fd) + os.close(fd) w.write(d1) w.send(d2) From buildbot at python.org Tue Sep 2 22:50:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 20:50:52 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902205052.41D6A1E400D@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/485 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: jesse.noller BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Tue Sep 2 22:54:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 20:54:30 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080902205430.7A8251E4006@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/233 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: andrew.kuchling,hirokazu.yamamoto,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 23:02:23 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 2 Sep 2008 23:02:23 +0200 (CEST) Subject: [Python-checkins] r66164 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/README 3.x/test/README Message-ID: <20080902210223.7E4141E4006@bag.python.org> Author: guilherme.polo Date: Tue Sep 2 23:02:23 2008 New Revision: 66164 Log: README added for writing new tests, just a reminder right now. Added: sandbox/trunk/ttk-gsoc/src/2.x/test/README sandbox/trunk/ttk-gsoc/src/3.x/test/README Added: sandbox/trunk/ttk-gsoc/src/2.x/test/README ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/README Tue Sep 2 23:02:23 2008 @@ -0,0 +1,13 @@ +Writing new tests +================= + +Precaution +---------- + + * New tests should always use only one Tk window at once, like all the + current tests do. This means that you have to destroy the current window + before creating another one, and clean up after the test. The motivation + behind this is that some tests may depend on having its window focused while + it is running to work properly, and it may be hard to force focus on your + window across platforms (right now only test_traversal at test_notebook + depends on this). Added: sandbox/trunk/ttk-gsoc/src/3.x/test/README ============================================================================== --- (empty file) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/README Tue Sep 2 23:02:23 2008 @@ -0,0 +1,13 @@ +Writing new tests +================= + +Precaution +---------- + + * New tests should always use only one Tk window at once, like all the + current tests do. This means that you have to destroy the current window + before creating another one, and clean up after the test. The motivation + behind this is that some tests may depend on having its window focused while + it is running to work properly, and it may be hard to force focus on your + window across platforms (right now only test_traversal at test_notebook + depends on this). From python-checkins at python.org Tue Sep 2 23:09:43 2008 From: python-checkins at python.org (guilherme.polo) Date: Tue, 2 Sep 2008 23:09:43 +0200 (CEST) Subject: [Python-checkins] r66165 - sandbox/trunk/ttk-gsoc/README Message-ID: <20080902210944.00DF31E400B@bag.python.org> Author: guilherme.polo Date: Tue Sep 2 23:09:43 2008 New Revision: 66165 Log: Updated to tell about the test suite Modified: sandbox/trunk/ttk-gsoc/README Modified: sandbox/trunk/ttk-gsoc/README ============================================================================== --- sandbox/trunk/ttk-gsoc/README (original) +++ sandbox/trunk/ttk-gsoc/README Tue Sep 2 23:09:43 2008 @@ -14,9 +14,12 @@ ttk-gsoc/src/3.x depending on your python version) or placing the ttk module somewhere in sys.path. If you are not sure if you have Tile installed correctly or if your -tkinter is compiled against Tk 8.5, you could try creating an instance of -of any class present in the ttk or Tkinter module, like Tkinter.Tk(), -and if no TclError exception is raised then you meet the requirements. +tkinter is compiled against Tk 8.5, try running the test suite: + +$ PYTHONPATH=ttk-gsoc/src/2.x python ttk-gsoc/src/2.x/test/runtests.py + +Be sure to adapt the above line according to your system. + [1] I've shortly used it with Tcl/Tk 8.6a1 too. [2] I've tested it with Tile 0.8.2 and it works, but I would recommend From python-checkins at python.org Tue Sep 2 23:17:05 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Tue, 2 Sep 2008 23:17:05 +0200 (CEST) Subject: [Python-checkins] r66166 - in python/trunk: PC/VS8.0/_bsddb.vcproj PC/VS8.0/_ctypes.vcproj PC/VS8.0/_multiprocessing.vcproj PC/VS8.0/_sqlite3.vcproj PC/VS8.0/pcbuild.sln PC/VS8.0/pyproject.vsprops PC/VS8.0/sqlite3.vcproj PCbuild/vs9to8.py Message-ID: <20080902211705.DA1811E4006@bag.python.org> Author: amaury.forgeotdarc Date: Tue Sep 2 23:17:05 2008 New Revision: 66166 Log: Use vs9to8.py to refresh the Visual Studio 2005 build files. Modified: python/trunk/PC/VS8.0/_bsddb.vcproj python/trunk/PC/VS8.0/_ctypes.vcproj python/trunk/PC/VS8.0/_multiprocessing.vcproj python/trunk/PC/VS8.0/_sqlite3.vcproj python/trunk/PC/VS8.0/pcbuild.sln python/trunk/PC/VS8.0/pyproject.vsprops python/trunk/PC/VS8.0/sqlite3.vcproj python/trunk/PCbuild/vs9to8.py Modified: python/trunk/PC/VS8.0/_bsddb.vcproj ============================================================================== --- python/trunk/PC/VS8.0/_bsddb.vcproj (original) +++ python/trunk/PC/VS8.0/_bsddb.vcproj Tue Sep 2 23:17:05 2008 @@ -42,7 +42,8 @@ /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Modified: python/trunk/PC/VS8.0/_ctypes.vcproj ============================================================================== --- python/trunk/PC/VS8.0/_ctypes.vcproj (original) +++ python/trunk/PC/VS8.0/_ctypes.vcproj Tue Sep 2 23:17:05 2008 @@ -642,7 +642,7 @@ > Modified: python/trunk/PC/VS8.0/_multiprocessing.vcproj ============================================================================== --- python/trunk/PC/VS8.0/_multiprocessing.vcproj (original) +++ python/trunk/PC/VS8.0/_multiprocessing.vcproj Tue Sep 2 23:17:05 2008 @@ -3,9 +3,10 @@ ProjectType="Visual C++" Version="8.00" Name="_multiprocessing" - ProjectGUID="{9E48B300-37D1-11DD-8C41-005056C00008}" + ProjectGUID="{9e48b300-37d1-11dd-8c41-005056c00008}" RootNamespace="_multiprocessing" Keyword="Win32Proj" + TargetFrameworkVersion="196613" > - - @@ -203,16 +198,13 @@ Name="VCAppVerifierTool" /> - @@ -230,6 +222,7 @@ /> - @@ -373,6 +363,7 @@ Name="VCLinkerTool" AdditionalDependencies="ws2_32.lib" BaseAddress="0x1e1D0000" + TargetMachine="17" /> @@ -417,7 +408,6 @@ /> Modified: python/trunk/PC/VS8.0/_sqlite3.vcproj ============================================================================== --- python/trunk/PC/VS8.0/_sqlite3.vcproj (original) +++ python/trunk/PC/VS8.0/_sqlite3.vcproj Tue Sep 2 23:17:05 2008 @@ -42,7 +42,7 @@ /> - - - - - - - - - - - - - - - - - - - - @@ -573,167 +535,7 @@ Name="Source Files" > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Modified: python/trunk/PCbuild/vs9to8.py ============================================================================== --- python/trunk/PCbuild/vs9to8.py (original) +++ python/trunk/PCbuild/vs9to8.py Tue Sep 2 23:17:05 2008 @@ -24,9 +24,9 @@ # Bah. VS8.0 does not expand macros in file names. # Replace them here. - lines = lines.replace('$(sqlite3Dir)', '..\\..\\..\\sqlite-source-3.3.4') - lines = lines.replace('$(bsddbDir)\\..\\..', '..\\..\\..\\db-4.4.20\\build_win32\\..') - lines = lines.replace('$(bsddbDir)', '..\\..\\..\\db-4.4.20\\build_win32') + lines = lines.replace('$(sqlite3Dir)', '..\\..\\..\\sqlite-3.5.9') + lines = lines.replace('$(bsddbDir)\\..\\..', '..\\..\\..\\db-4.7.25.0\\build_windows\\..') + lines = lines.replace('$(bsddbDir)', '..\\..\\..\\db-4.7.25.0\\build_windows') with open(destname, 'wb') as fout: lines = lines.replace("\n", "\r\n") From buildbot at python.org Tue Sep 2 23:21:28 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 21:21:28 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080902212128.6DCFE1E4006@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/1934 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: andrew.kuchling,hirokazu.yamamoto,marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 522, in __bootstrap_inner self.run() File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 477, in run self.__target(*self.__args, **self.__kwargs) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/test/test_thread.py", line 306, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30994, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 2 tests failed: test_bsddb3 test_pickletools Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 522, in __bootstrap_inner self.run() File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 477, in run self.__target(*self.__args, **self.__kwargs) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/test/test_thread.py", line 306, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30994, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Tue Sep 2 23:50:48 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Tue, 2 Sep 2008 23:50:48 +0200 (CEST) Subject: [Python-checkins] r66167 - in python/trunk/PC/VS7.1: pythoncore.vcproj readme.txt Message-ID: <20080902215048.2BF8F1E4006@bag.python.org> Author: amaury.forgeotdarc Date: Tue Sep 2 23:50:47 2008 New Revision: 66167 Log: Attempt to correct the build files for the Microsoft VS7.1 compiler. I don't have a working VS7.1, but VS2005 can automatically convert the project and build a working python interpreter. Modified: python/trunk/PC/VS7.1/pythoncore.vcproj python/trunk/PC/VS7.1/readme.txt Modified: python/trunk/PC/VS7.1/pythoncore.vcproj ============================================================================== --- python/trunk/PC/VS7.1/pythoncore.vcproj (original) +++ python/trunk/PC/VS7.1/pythoncore.vcproj Tue Sep 2 23:50:47 2008 @@ -362,6 +362,9 @@ RelativePath="..\..\Modules\cjkcodecs\_codecs_tw.c"> + + + RelativePath="..\..\Modules\_json.c"> Modified: python/trunk/PC/VS7.1/readme.txt ============================================================================== --- python/trunk/PC/VS7.1/readme.txt (original) +++ python/trunk/PC/VS7.1/readme.txt Tue Sep 2 23:50:47 2008 @@ -58,8 +58,8 @@ 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\src\PCbuild\, +packages first and unpack them into siblings of PC's parent +directory; for example, if this directory is ....\dist\trunk\PC\VS7.1, unpack into new subdirectories of dist\. _tkinter @@ -126,7 +126,7 @@ 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\. + linked in VS7.1\. However, the bz2 project is not smart enough to remove anything under bzip2-1.0.3\ when you do a clean, so if you want to rebuild bzip2.lib you need to clean up bzip2-1.0.3\ by hand. @@ -222,7 +222,7 @@ 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 VS7.1 folder. _ssl Python wrapper for the secure sockets library. @@ -239,7 +239,7 @@ http://www.activestate.com/Products/ActivePerl/ as this is used by the OpenSSL build process. Complain to them . - The MSVC project simply invokes PCBuild/build_ssl.py to perform + The MSVC project simply invokes build_ssl.py to perform the build. This Python script locates and builds your OpenSSL installation, then invokes a simple makefile to build the final .pyd. @@ -283,11 +283,11 @@ Note that Microsoft have withdrawn the free MS Toolkit Compiler, so this can no longer be considered a supported option. The instructions are still correct, but you need to already have a copy of the compiler in order to use -them. Microsoft now supply Visual C++ 2005 Express Edition for free, but this +them. Microsoft now supply Visual C++ 2008 Express Edition for free, but this is NOT compatible with Visual C++ 7.1 (it uses a different C runtime), and so cannot be used to build a version of Python compatible with the standard -python.org build. If you are interested in using Visual C++ 2005 Express -Edition, however, you should look at the PCBuild8 directory. +python.org build. If you are interested in using Visual C++ 2008 Express +Edition, however, you should look at the PCBuild directory. Requirements @@ -358,7 +358,7 @@ nant -buildfile:python.build all - from within the PCBuild directory. + from within the VS7.1 directory. Extension modules From python-checkins at python.org Wed Sep 3 00:01:39 2008 From: python-checkins at python.org (guilherme.polo) Date: Wed, 3 Sep 2008 00:01:39 +0200 (CEST) Subject: [Python-checkins] r66168 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/test_other_widgets.py 2.x/test/test_style.py 2.x/test/test_treeview.py 3.x/test/test_other_widgets.py 3.x/test/test_style.py 3.x/test/test_treeview.py Message-ID: <20080902220139.9ACA81E400B@bag.python.org> Author: guilherme.polo Date: Wed Sep 3 00:01:39 2008 New Revision: 66168 Log: Some fixes in order to work under Windows and possibly somewhere else. Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_other_widgets.py Wed Sep 3 00:01:39 2008 @@ -126,7 +126,9 @@ height = self.combo.winfo_height() self._show_drop_down_listbox() + self.combo.update() self.combo.event_generate('') + self.combo.update() self.failUnless(success) Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_style.py Wed Sep 3 00:01:39 2008 @@ -7,7 +7,8 @@ class StyleTest(unittest.TestCase): def setUp(self): - self.style = ttk.Style() + root = Tkinter.Tk() + self.style = ttk.Style(root) def tearDown(self): self.style.master.destroy() Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_treeview.py Wed Sep 3 00:01:39 2008 @@ -214,7 +214,7 @@ success = [] commands = self.tv.master._tclCommands - self.tv.heading('#0', command=self.tv.heading('#0', command=None)) + self.tv.heading('#0', command=str(self.tv.heading('#0', command=None))) self.failUnlessEqual(commands, self.tv.master._tclCommands) simulate_heading_click(5, 5) if not success: Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_other_widgets.py Wed Sep 3 00:01:39 2008 @@ -126,7 +126,9 @@ height = self.combo.winfo_height() self._show_drop_down_listbox() + self.combo.update() self.combo.event_generate('') + self.combo.update() self.failUnless(success) Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_style.py Wed Sep 3 00:01:39 2008 @@ -7,7 +7,8 @@ class StyleTest(unittest.TestCase): def setUp(self): - self.style = ttk.Style() + root = tkinter.Tk() + self.style = ttk.Style(root) def tearDown(self): self.style.master.destroy() Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_treeview.py Wed Sep 3 00:01:39 2008 @@ -214,7 +214,7 @@ success = [] commands = self.tv.master._tclCommands - self.tv.heading('#0', command=self.tv.heading('#0', command=None)) + self.tv.heading('#0', command=str(self.tv.heading('#0', command=None))) self.failUnlessEqual(commands, self.tv.master._tclCommands) simulate_heading_click(5, 5) if not success: From python-checkins at python.org Wed Sep 3 01:19:56 2008 From: python-checkins at python.org (amaury.forgeotdarc) Date: Wed, 3 Sep 2008 01:19:56 +0200 (CEST) Subject: [Python-checkins] r66171 - in python/trunk: Lib/distutils/msvc9compiler.py Misc/NEWS Message-ID: <20080902231956.627331E4006@bag.python.org> Author: amaury.forgeotdarc Date: Wed Sep 3 01:19:56 2008 New Revision: 66171 Log: Issue 2975: when compiling multiple extension modules with visual studio 2008 from the same python instance, some environment variables (LIB, INCLUDE) would grow without limit. Tested with these statements: distutils.ccompiler.new_compiler().initialize() print os.environ['LIB'] But I don't know how to turn them into reliable unit tests. Modified: python/trunk/Lib/distutils/msvc9compiler.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/distutils/msvc9compiler.py ============================================================================== --- python/trunk/Lib/distutils/msvc9compiler.py (original) +++ python/trunk/Lib/distutils/msvc9compiler.py Wed Sep 3 01:19:56 2008 @@ -193,6 +193,17 @@ reduced_paths.append(np) return reduced_paths +def removeDuplicates(variable): + """Remove duplicate values of an environment variable. + """ + oldList = variable.split(os.pathsep) + newList = [] + for i in oldList: + if i not in newList: + newList.append(i) + newVariable = os.pathsep.join(newList) + return newVariable + def find_vcvarsall(version): """Find the vcvarsall.bat file @@ -252,12 +263,12 @@ if '=' not in line: continue line = line.strip() - key, value = line.split('=') + key, value = line.split('=', 1) key = key.lower() if key in interesting: if value.endswith(os.pathsep): value = value[:-1] - result[key] = value + result[key] = removeDuplicates(value) if len(result) != len(interesting): raise ValueError(str(list(result.keys()))) Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Sep 3 01:19:56 2008 @@ -81,6 +81,10 @@ Extension Modules ----------------- +- Issue #2975: When compiling several extension modules with Visual Studio 2008 + from the same python interpreter, some environment variables would grow + without limit. + - Issue #3643: Added a few more checks to _testcapi to prevent segfaults by exploitation of poor argument checking. From buildbot at python.org Wed Sep 3 01:45:58 2008 From: buildbot at python.org (buildbot at python.org) Date: Tue, 02 Sep 2008 23:45:58 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080902234558.466481E400B@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/487 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: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Wed Sep 3 01:57:48 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 01:57:48 +0200 (CEST) Subject: [Python-checkins] r66173 - in sandbox/trunk/2to3: 2to3 lib2to3/fixer_base.py lib2to3/main.py lib2to3/refactor.py lib2to3/tests/support.py lib2to3/tests/test_all_fixers.py lib2to3/tests/test_fixers.py Message-ID: <20080902235748.BEB671E4017@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 01:57:48 2008 New Revision: 66173 Log: A little 2to3 refactoring #3637 This moves command line logic from refactor.py to a new file called main.py. RefactoringTool now merely deals with the actual fixers and refactoring; options processing for example is abstracted out. Added: sandbox/trunk/2to3/lib2to3/main.py (contents, props changed) Modified: sandbox/trunk/2to3/2to3 sandbox/trunk/2to3/lib2to3/fixer_base.py sandbox/trunk/2to3/lib2to3/refactor.py sandbox/trunk/2to3/lib2to3/tests/support.py sandbox/trunk/2to3/lib2to3/tests/test_all_fixers.py sandbox/trunk/2to3/lib2to3/tests/test_fixers.py Modified: sandbox/trunk/2to3/2to3 ============================================================================== --- sandbox/trunk/2to3/2to3 (original) +++ sandbox/trunk/2to3/2to3 Wed Sep 3 01:57:48 2008 @@ -1,7 +1,6 @@ #!/usr/bin/env python -from lib2to3 import refactor +from lib2to3.main import main import sys import os -fixers = os.path.join(os.path.dirname(refactor.__file__), "fixes") -sys.exit(refactor.main(fixers)) +sys.exit(main("lib2to3.fixes")) Modified: sandbox/trunk/2to3/lib2to3/fixer_base.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/fixer_base.py (original) +++ sandbox/trunk/2to3/lib2to3/fixer_base.py Wed Sep 3 01:57:48 2008 @@ -47,8 +47,8 @@ """Initializer. Subclass may override. Args: - options: an optparse.Values instance which can be used - to inspect the command line options. + options: an dict containing the options passed to RefactoringTool + that could be used to customize the fixer through the command line. log: a list to append warnings and other messages to. """ self.options = options Added: sandbox/trunk/2to3/lib2to3/main.py ============================================================================== --- (empty file) +++ sandbox/trunk/2to3/lib2to3/main.py Wed Sep 3 01:57:48 2008 @@ -0,0 +1,86 @@ +""" +Main program for 2to3. +""" + +import sys +import os +import logging +import optparse + +from . import refactor + + +def main(fixer_pkg, args=None): + """Main program. + + Args: + fixer_pkg: the name of a package where the fixers are located. + args: optional; a list of command line arguments. If omitted, + sys.argv[1:] is used. + + Returns a suggested exit status (0, 1, 2). + """ + # Set up option parser + parser = optparse.OptionParser(usage="refactor.py [options] file|dir ...") + parser.add_option("-d", "--doctests_only", action="store_true", + help="Fix up doctests only") + parser.add_option("-f", "--fix", action="append", default=[], + help="Each FIX specifies a transformation; default all") + parser.add_option("-l", "--list-fixes", action="store_true", + help="List available transformations (fixes/fix_*.py)") + parser.add_option("-p", "--print-function", action="store_true", + help="Modify the grammar so that print() is a function") + parser.add_option("-v", "--verbose", action="store_true", + help="More verbose logging") + parser.add_option("-w", "--write", action="store_true", + help="Write back modified files") + + # Parse command line arguments + refactor_stdin = False + options, args = parser.parse_args(args) + if options.list_fixes: + print "Available transformations for the -f/--fix option:" + for fixname in refactor.get_all_fix_names(fixer_pkg): + print fixname + if not args: + return 0 + if not args: + print >>sys.stderr, "At least one file or directory argument required." + print >>sys.stderr, "Use --help to show usage." + return 2 + if "-" in args: + refactor_stdin = True + if options.write: + print >>sys.stderr, "Can't write to stdin." + return 2 + + # Set up logging handler + level = logging.DEBUG if options.verbose else logging.INFO + logging.basicConfig(format='%(name)s: %(message)s', level=level) + + # Initialize the refactoring tool + rt_opts = {"print_function" : options.print_function} + avail_names = refactor.get_fixers_from_package(fixer_pkg) + explicit = [] + if options.fix: + explicit = [fixer_pkg + ".fix_" + fix + for fix in options.fix if fix != "all"] + fixer_names = avail_names if "all" in options.fix else explicit + else: + fixer_names = avail_names + rt = refactor.RefactoringTool(fixer_names, rt_opts, explicit=explicit) + + # Refactor all files and directories passed as arguments + if not rt.errors: + if refactor_stdin: + rt.refactor_stdin() + else: + rt.refactor(args, options.write, options.doctests_only) + rt.summarize() + + # Return error status (0 if rt.errors is zero) + return int(bool(rt.errors)) + + +if __name__ == "__main__": + sys.exit(main()) Modified: sandbox/trunk/2to3/lib2to3/refactor.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/refactor.py (original) +++ sandbox/trunk/2to3/lib2to3/refactor.py Wed Sep 3 01:57:48 2008 @@ -16,8 +16,8 @@ import os import sys import difflib -import optparse import logging +import operator from collections import defaultdict from itertools import chain @@ -30,68 +30,19 @@ from . import fixes from . import pygram -def main(fixer_dir, args=None): - """Main program. - Args: - fixer_dir: directory where fixer modules are located. - args: optional; a list of command line arguments. If omitted, - sys.argv[1:] is used. - - Returns a suggested exit status (0, 1, 2). - """ - # Set up option parser - parser = optparse.OptionParser(usage="refactor.py [options] file|dir ...") - parser.add_option("-d", "--doctests_only", action="store_true", - help="Fix up doctests only") - parser.add_option("-f", "--fix", action="append", default=[], - help="Each FIX specifies a transformation; default all") - parser.add_option("-l", "--list-fixes", action="store_true", - help="List available transformations (fixes/fix_*.py)") - parser.add_option("-p", "--print-function", action="store_true", - help="Modify the grammar so that print() is a function") - parser.add_option("-v", "--verbose", action="store_true", - help="More verbose logging") - parser.add_option("-w", "--write", action="store_true", - help="Write back modified files") - - # Parse command line arguments - options, args = parser.parse_args(args) - if options.list_fixes: - print "Available transformations for the -f/--fix option:" - for fixname in get_all_fix_names(fixer_dir): - print fixname - if not args: - return 0 - if not args: - print >>sys.stderr, "At least one file or directory argument required." - print >>sys.stderr, "Use --help to show usage." - return 2 - - # Set up logging handler - logging.basicConfig(format='%(name)s: %(message)s', level=logging.INFO) - - # Initialize the refactoring tool - rt = RefactoringTool(fixer_dir, options) - - # Refactor all files and directories passed as arguments - if not rt.errors: - rt.refactor_args(args) - rt.summarize() - - # Return error status (0 if rt.errors is zero) - return int(bool(rt.errors)) - - -def get_all_fix_names(fixer_dir): - """Return a sorted list of all available fix names.""" +def get_all_fix_names(fixer_pkg, remove_prefix=True): + """Return a sorted list of all available fix names in the given package.""" + pkg = __import__(fixer_pkg, [], [], ["*"]) + fixer_dir = os.path.dirname(pkg.__file__) fix_names = [] names = os.listdir(fixer_dir) names.sort() for name in names: if name.startswith("fix_") and name.endswith(".py"): - fix_names.append(name[4:-3]) - fix_names.sort() + if remove_prefix: + name = name[4:] + fix_names.append(name[:-3]) return fix_names def get_head_types(pat): @@ -131,22 +82,36 @@ head_nodes[t].append(fixer) return head_nodes +def get_fixers_from_package(pkg_name): + """ + Return the fully qualified names for fixers in the package pkg_name. + """ + return [pkg_name + "." + fix_name + for fix_name in get_all_fix_names(pkg_name, False)] + class RefactoringTool(object): - def __init__(self, fixer_dir, options): + _default_options = {"print_function": False} + + def __init__(self, fixer_names, options=None, explicit=[]): """Initializer. Args: - fixer_dir: directory in which to find fixer modules. - options: an optparse.Values instance. - """ - self.fixer_dir = fixer_dir - self.options = options + fixer_names: a list of fixers to import + options: an dict with configuration. + explicit: a list of fixers to run even if they are explicit. + """ + self.fixers = fixer_names + self.explicit = explicit + self.options = self._default_options.copy() + if options is not None: + self.options.update(options) self.errors = [] self.logger = logging.getLogger("RefactoringTool") self.fixer_log = [] - if self.options.print_function: + self.wrote = False + if self.options["print_function"]: del pygram.python_grammar.keywords["print"] self.driver = driver.Driver(pygram.python_grammar, convert=pytree.convert, @@ -166,30 +131,24 @@ want a pre-order AST traversal, and post_order is the list that want post-order traversal. """ - if os.path.isabs(self.fixer_dir): - fixer_pkg = os.path.relpath(self.fixer_dir, os.path.join(os.path.dirname(__file__), '..')) - else: - fixer_pkg = self.fixer_dir - fixer_pkg = fixer_pkg.replace(os.path.sep, ".") - if os.path.altsep: - fixer_pkg = self.fixer_dir.replace(os.path.altsep, ".") pre_order_fixers = [] post_order_fixers = [] - fix_names = self.options.fix - if not fix_names or "all" in fix_names: - fix_names = get_all_fix_names(self.fixer_dir) - for fix_name in fix_names: + for fix_mod_path in self.fixers: try: - mod = __import__(fixer_pkg + ".fix_" + fix_name, {}, {}, ["*"]) + mod = __import__(fix_mod_path, {}, {}, ["*"]) except ImportError: - self.log_error("Can't find transformation %s", fix_name) + self.log_error("Can't load transformation module %s", + fix_mod_path) continue + fix_name = fix_mod_path.rsplit(".", 1)[-1] + if fix_name.startswith("fix_"): + fix_name = fix_name[4:] parts = fix_name.split("_") class_name = "Fix" + "".join([p.title() for p in parts]) try: fix_class = getattr(mod, class_name) except AttributeError: - self.log_error("Can't find fixes.fix_%s.%s", + self.log_error("Can't find %s.%s", fix_name, class_name) continue try: @@ -198,12 +157,12 @@ self.log_error("Can't instantiate fixes.fix_%s.%s()", fix_name, class_name, exc_info=True) continue - if fixer.explicit and fix_name not in self.options.fix: + if fixer.explicit and self.explicit is not True and \ + fix_mod_path not in self.explicit: self.log_message("Skipping implicit fixer: %s", fix_name) continue - if self.options.verbose: - self.log_message("Adding transformation: %s", fix_name) + self.log_debug("Adding transformation: %s", fix_name) if fixer.order == "pre": pre_order_fixers.append(fixer) elif fixer.order == "post": @@ -211,8 +170,9 @@ else: raise ValueError("Illegal fixer order: %r" % fixer.order) - pre_order_fixers.sort(key=lambda x: x.run_order) - post_order_fixers.sort(key=lambda x: x.run_order) + key_func = operator.attrgetter("run_order") + pre_order_fixers.sort(key=key_func) + post_order_fixers.sort(key=key_func) return (pre_order_fixers, post_order_fixers) def log_error(self, msg, *args, **kwds): @@ -226,36 +186,38 @@ msg = msg % args self.logger.info(msg) - def refactor_args(self, args): - """Refactors files and directories from an argument list.""" - for arg in args: - if arg == "-": - self.refactor_stdin() - elif os.path.isdir(arg): - self.refactor_dir(arg) + def log_debug(self, msg, *args): + if args: + msg = msg % args + self.logger.debug(msg) + + def refactor(self, items, write=False, doctests_only=False): + """Refactor a list of files and directories.""" + for dir_or_file in items: + if os.path.isdir(dir_or_file): + self.refactor_dir(dir_or_file, write) else: - self.refactor_file(arg) + self.refactor_file(dir_or_file, write) - def refactor_dir(self, arg): + def refactor_dir(self, dir_name, write=False, doctests_only=False): """Descends down a directory and refactor every Python file found. Python files are assumed to have a .py extension. Files and subdirectories starting with '.' are skipped. """ - for dirpath, dirnames, filenames in os.walk(arg): - if self.options.verbose: - self.log_message("Descending into %s", dirpath) + for dirpath, dirnames, filenames in os.walk(dir_name): + self.log_debug("Descending into %s", dirpath) dirnames.sort() filenames.sort() for name in filenames: if not name.startswith(".") and name.endswith("py"): fullname = os.path.join(dirpath, name) - self.refactor_file(fullname) + self.refactor_file(fullname, write, doctests_only) # Modify dirnames in-place to remove subdirs with leading dots dirnames[:] = [dn for dn in dirnames if not dn.startswith(".")] - def refactor_file(self, filename): + def refactor_file(self, filename, write=False, doctests_only=False): """Refactors a file.""" try: f = open(filename) @@ -266,21 +228,20 @@ input = f.read() + "\n" # Silence certain parse errors finally: f.close() - if self.options.doctests_only: - if self.options.verbose: - self.log_message("Refactoring doctests in %s", filename) + if doctests_only: + self.log_debug("Refactoring doctests in %s", filename) output = self.refactor_docstring(input, filename) if output != input: - self.write_file(output, filename, input) - elif self.options.verbose: - self.log_message("No doctest changes in %s", filename) + self.processed_file(output, filename, input, write=write) + else: + self.log_debug("No doctest changes in %s", filename) else: tree = self.refactor_string(input, filename) if tree and tree.was_changed: # The [:-1] is to take off the \n we added earlier - self.write_file(str(tree)[:-1], filename) - elif self.options.verbose: - self.log_message("No changes in %s", filename) + self.processed_file(str(tree)[:-1], filename, write=write) + else: + self.log_debug("No changes in %s", filename) def refactor_string(self, data, name): """Refactor a given input string. @@ -299,30 +260,25 @@ self.log_error("Can't parse %s: %s: %s", name, err.__class__.__name__, err) return - if self.options.verbose: - self.log_message("Refactoring %s", name) + self.log_debug("Refactoring %s", name) self.refactor_tree(tree, name) return tree - def refactor_stdin(self): - if self.options.write: - self.log_error("Can't write changes back to stdin") - return + def refactor_stdin(self, doctests_only=False): input = sys.stdin.read() - if self.options.doctests_only: - if self.options.verbose: - self.log_message("Refactoring doctests in stdin") + if doctests_only: + self.log_debug("Refactoring doctests in stdin") output = self.refactor_docstring(input, "") if output != input: - self.write_file(output, "", input) - elif self.options.verbose: - self.log_message("No doctest changes in stdin") + self.processed_file(output, "", input) + else: + self.log_debug("No doctest changes in stdin") else: tree = self.refactor_string(input, "") if tree and tree.was_changed: - self.write_file(str(tree), "", input) - elif self.options.verbose: - self.log_message("No changes in stdin") + self.processed_file(str(tree), "", input) + else: + self.log_debug("No changes in stdin") def refactor_tree(self, tree, name): """Refactors a parse tree (modifying the tree in place). @@ -374,14 +330,9 @@ node.replace(new) node = new - def write_file(self, new_text, filename, old_text=None): - """Writes a string to a file. - - If there are no changes, this is a no-op. - - Otherwise, it first shows a unified diff between the old text - and the new text, and then rewrites the file; the latter is - only done if the write option is set. + def processed_file(self, new_text, filename, old_text=None, write=False): + """ + Called when a file has been refactored, and there are changes. """ self.files.append(filename) if old_text is None: @@ -395,14 +346,22 @@ finally: f.close() if old_text == new_text: - if self.options.verbose: - self.log_message("No changes to %s", filename) + self.log_debug("No changes to %s", filename) return diff_texts(old_text, new_text, filename) - if not self.options.write: - if self.options.verbose: - self.log_message("Not writing changes to %s", filename) + if not write: + self.log_debug("Not writing changes to %s", filename) return + if write: + self.write_file(next_text, filename, old_text) + + def write_file(self, new_text, filename, old_text=None): + """Writes a string to a file. + + It first shows a unified diff between the old text and the new text, and + then rewrites the file; the latter is only done if the write option is + set. + """ backup = filename + ".bak" if os.path.lexists(backup): try: @@ -425,8 +384,8 @@ self.log_error("Can't write %s: %s", filename, err) finally: f.close() - if self.options.verbose: - self.log_message("Wrote changes to %s", filename) + self.log_debug("Wrote changes to %s", filename) + self.wrote = True PS1 = ">>> " PS2 = "... " @@ -485,9 +444,9 @@ try: tree = self.parse_block(block, lineno, indent) except Exception, err: - if self.options.verbose: + if self.log.isEnabledFor(logging.DEBUG): for line in block: - self.log_message("Source: %s", line.rstrip("\n")) + self.log_debug("Source: %s", line.rstrip("\n")) self.log_error("Can't parse docstring in %s line %s: %s: %s", filename, lineno, err.__class__.__name__, err) return block @@ -504,7 +463,7 @@ return block def summarize(self): - if self.options.write: + if self.wrote: were = "were" else: were = "need to be" @@ -576,7 +535,3 @@ "(original)", "(refactored)", lineterm=""): print line - - -if __name__ == "__main__": - sys.exit(main()) Modified: sandbox/trunk/2to3/lib2to3/tests/support.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/support.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/support.py Wed Sep 3 01:57:48 2008 @@ -13,6 +13,7 @@ # Local imports from .. import pytree +from .. import refactor from ..pgen2 import driver test_dir = os.path.dirname(__file__) @@ -38,6 +39,21 @@ def reformat(string): return dedent(string) + "\n\n" +def get_refactorer(fixers=None, options=None): + """ + A convenience function for creating a RefactoringTool for tests. + + fixers is a list of fixers for the RefactoringTool to use. By default + "lib2to3.fixes.*" is used. options is an optional dictionary of options to + be passed to the RefactoringTool. + """ + if fixers is not None: + fixers = ["lib2to3.fixes.fix_" + fix for fix in fixers] + else: + fixers = refactor.get_fixers_from_package("lib2to3.fixes") + options = options or {} + return refactor.RefactoringTool(fixers, options, explicit=True) + def all_project_files(): for dirpath, dirnames, filenames in os.walk(proj_dir): for filename in filenames: Modified: sandbox/trunk/2to3/lib2to3/tests/test_all_fixers.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/test_all_fixers.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/test_all_fixers.py Wed Sep 3 01:57:48 2008 @@ -19,17 +19,10 @@ from .. import pytree from .. import refactor -class Options: - def __init__(self, **kwargs): - for k, v in kwargs.items(): - setattr(self, k, v) - self.verbose = False - class Test_all(support.TestCase): def setUp(self): - options = Options(fix=["all", "idioms", "ws_comma", "buffer"], - print_function=False) - self.refactor = refactor.RefactoringTool("lib2to3/fixes", options) + options = {"print_function" : False} + self.refactor = support.get_refactorer(options=options) def test_all_project_files(self): for filepath in support.all_project_files(): 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 Sep 3 01:57:48 2008 @@ -21,19 +21,12 @@ from .. import fixer_util -class Options: - def __init__(self, **kwargs): - for k, v in kwargs.items(): - setattr(self, k, v) - - self.verbose = False - class FixerTestCase(support.TestCase): def setUp(self, fix_list=None): - if not fix_list: + if fix_list is None: fix_list = [self.fixer] - options = Options(fix=fix_list, print_function=False) - self.refactor = refactor.RefactoringTool("lib2to3/fixes", options) + options = {"print_function" : False} + self.refactor = support.get_refactorer(fix_list, options) self.fixer_log = [] self.filename = "" @@ -70,10 +63,10 @@ self.failUnlessEqual(self.fixer_log, []) def assert_runs_after(self, *names): - fix = [self.fixer] - fix.extend(names) - options = Options(fix=fix, print_function=False) - r = refactor.RefactoringTool("lib2to3/fixes", options) + fixes = [self.fixer] + fixes.extend(names) + options = {"print_function" : False} + r = support.get_refactorer(fixes, options) (pre, post) = r.get_fixers() n = "fix_" + self.fixer if post and post[-1].__class__.__module__.endswith(n): From python-checkins at python.org Wed Sep 3 01:58:46 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 01:58:46 +0200 (CEST) Subject: [Python-checkins] r66173 - svn:log Message-ID: <20080902235846.DC9531E401C@bag.python.org> Author: benjamin.peterson Revision: 66173 Property Name: svn:log Action: modified Property diff: --- old property value +++ new property value @@ -3,3 +3,5 @@ This moves command line logic from refactor.py to a new file called main.py. RefactoringTool now merely deals with the actual fixers and refactoring; options processing for example is abstracted out. + +This patch was reviewed by Gregory P. Smith. From python-checkins at python.org Wed Sep 3 02:21:33 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 02:21:33 +0200 (CEST) Subject: [Python-checkins] r66174 - in python/trunk: Doc/library/2to3.rst Lib/lib2to3 Lib/lib2to3/fixer_base.py Lib/lib2to3/main.py Lib/lib2to3/refactor.py Lib/lib2to3/tests/support.py Lib/lib2to3/tests/test_all_fixers.py Lib/lib2to3/tests/test_fixers.py Message-ID: <20080903002133.56EF61E4006@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 02:21:32 2008 New Revision: 66174 Log: Merged revisions 66173 via svnmerge from svn+ssh://pythondev at svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r66173 | benjamin.peterson | 2008-09-02 18:57:48 -0500 (Tue, 02 Sep 2008) | 8 lines A little 2to3 refactoring #3637 This moves command line logic from refactor.py to a new file called main.py. RefactoringTool now merely deals with the actual fixers and refactoring; options processing for example is abstracted out. This patch was reviewed by Gregory P. Smith. ........ Added: python/trunk/Lib/lib2to3/main.py - copied unchanged from r66173, /sandbox/trunk/2to3/lib2to3/main.py Modified: python/trunk/Doc/library/2to3.rst python/trunk/Lib/lib2to3/ (props changed) python/trunk/Lib/lib2to3/fixer_base.py python/trunk/Lib/lib2to3/refactor.py python/trunk/Lib/lib2to3/tests/support.py python/trunk/Lib/lib2to3/tests/test_all_fixers.py python/trunk/Lib/lib2to3/tests/test_fixers.py Modified: python/trunk/Doc/library/2to3.rst ============================================================================== --- python/trunk/Doc/library/2to3.rst (original) +++ python/trunk/Doc/library/2to3.rst Wed Sep 3 02:21:32 2008 @@ -5,8 +5,10 @@ .. sectionauthor:: Benjamin Peterson -2to3 is a Python program that reads your Python 2.x source code and applies a -series of *fixers* to transform it into valid Python 3.x code. +2to3 is a Python program that reads Python 2.x source code and applies a series +of *fixers* to transform it into valid Python 3.x code. The standard library +contains a rich set of fixers that will handle almost all code. It is, however, +possible to write your own fixers. Using 2to3 Modified: python/trunk/Lib/lib2to3/fixer_base.py ============================================================================== --- python/trunk/Lib/lib2to3/fixer_base.py (original) +++ python/trunk/Lib/lib2to3/fixer_base.py Wed Sep 3 02:21:32 2008 @@ -47,8 +47,8 @@ """Initializer. Subclass may override. Args: - options: an optparse.Values instance which can be used - to inspect the command line options. + options: an dict containing the options passed to RefactoringTool + that could be used to customize the fixer through the command line. log: a list to append warnings and other messages to. """ self.options = options Modified: python/trunk/Lib/lib2to3/refactor.py ============================================================================== --- python/trunk/Lib/lib2to3/refactor.py (original) +++ python/trunk/Lib/lib2to3/refactor.py Wed Sep 3 02:21:32 2008 @@ -16,8 +16,8 @@ import os import sys import difflib -import optparse import logging +import operator from collections import defaultdict from itertools import chain @@ -30,68 +30,19 @@ from . import fixes from . import pygram -def main(fixer_dir, args=None): - """Main program. - Args: - fixer_dir: directory where fixer modules are located. - args: optional; a list of command line arguments. If omitted, - sys.argv[1:] is used. - - Returns a suggested exit status (0, 1, 2). - """ - # Set up option parser - parser = optparse.OptionParser(usage="refactor.py [options] file|dir ...") - parser.add_option("-d", "--doctests_only", action="store_true", - help="Fix up doctests only") - parser.add_option("-f", "--fix", action="append", default=[], - help="Each FIX specifies a transformation; default all") - parser.add_option("-l", "--list-fixes", action="store_true", - help="List available transformations (fixes/fix_*.py)") - parser.add_option("-p", "--print-function", action="store_true", - help="Modify the grammar so that print() is a function") - parser.add_option("-v", "--verbose", action="store_true", - help="More verbose logging") - parser.add_option("-w", "--write", action="store_true", - help="Write back modified files") - - # Parse command line arguments - options, args = parser.parse_args(args) - if options.list_fixes: - print "Available transformations for the -f/--fix option:" - for fixname in get_all_fix_names(fixer_dir): - print fixname - if not args: - return 0 - if not args: - print >>sys.stderr, "At least one file or directory argument required." - print >>sys.stderr, "Use --help to show usage." - return 2 - - # Set up logging handler - logging.basicConfig(format='%(name)s: %(message)s', level=logging.INFO) - - # Initialize the refactoring tool - rt = RefactoringTool(fixer_dir, options) - - # Refactor all files and directories passed as arguments - if not rt.errors: - rt.refactor_args(args) - rt.summarize() - - # Return error status (0 if rt.errors is zero) - return int(bool(rt.errors)) - - -def get_all_fix_names(fixer_dir): - """Return a sorted list of all available fix names.""" +def get_all_fix_names(fixer_pkg, remove_prefix=True): + """Return a sorted list of all available fix names in the given package.""" + pkg = __import__(fixer_pkg, [], [], ["*"]) + fixer_dir = os.path.dirname(pkg.__file__) fix_names = [] names = os.listdir(fixer_dir) names.sort() for name in names: if name.startswith("fix_") and name.endswith(".py"): - fix_names.append(name[4:-3]) - fix_names.sort() + if remove_prefix: + name = name[4:] + fix_names.append(name[:-3]) return fix_names def get_head_types(pat): @@ -131,22 +82,36 @@ head_nodes[t].append(fixer) return head_nodes +def get_fixers_from_package(pkg_name): + """ + Return the fully qualified names for fixers in the package pkg_name. + """ + return [pkg_name + "." + fix_name + for fix_name in get_all_fix_names(pkg_name, False)] + class RefactoringTool(object): - def __init__(self, fixer_dir, options): + _default_options = {"print_function": False} + + def __init__(self, fixer_names, options=None, explicit=[]): """Initializer. Args: - fixer_dir: directory in which to find fixer modules. - options: an optparse.Values instance. - """ - self.fixer_dir = fixer_dir - self.options = options + fixer_names: a list of fixers to import + options: an dict with configuration. + explicit: a list of fixers to run even if they are explicit. + """ + self.fixers = fixer_names + self.explicit = explicit + self.options = self._default_options.copy() + if options is not None: + self.options.update(options) self.errors = [] self.logger = logging.getLogger("RefactoringTool") self.fixer_log = [] - if self.options.print_function: + self.wrote = False + if self.options["print_function"]: del pygram.python_grammar.keywords["print"] self.driver = driver.Driver(pygram.python_grammar, convert=pytree.convert, @@ -166,30 +131,24 @@ want a pre-order AST traversal, and post_order is the list that want post-order traversal. """ - if os.path.isabs(self.fixer_dir): - fixer_pkg = os.path.relpath(self.fixer_dir, os.path.join(os.path.dirname(__file__), '..')) - else: - fixer_pkg = self.fixer_dir - fixer_pkg = fixer_pkg.replace(os.path.sep, ".") - if os.path.altsep: - fixer_pkg = self.fixer_dir.replace(os.path.altsep, ".") pre_order_fixers = [] post_order_fixers = [] - fix_names = self.options.fix - if not fix_names or "all" in fix_names: - fix_names = get_all_fix_names(self.fixer_dir) - for fix_name in fix_names: + for fix_mod_path in self.fixers: try: - mod = __import__(fixer_pkg + ".fix_" + fix_name, {}, {}, ["*"]) + mod = __import__(fix_mod_path, {}, {}, ["*"]) except ImportError: - self.log_error("Can't find transformation %s", fix_name) + self.log_error("Can't load transformation module %s", + fix_mod_path) continue + fix_name = fix_mod_path.rsplit(".", 1)[-1] + if fix_name.startswith("fix_"): + fix_name = fix_name[4:] parts = fix_name.split("_") class_name = "Fix" + "".join([p.title() for p in parts]) try: fix_class = getattr(mod, class_name) except AttributeError: - self.log_error("Can't find fixes.fix_%s.%s", + self.log_error("Can't find %s.%s", fix_name, class_name) continue try: @@ -198,12 +157,12 @@ self.log_error("Can't instantiate fixes.fix_%s.%s()", fix_name, class_name, exc_info=True) continue - if fixer.explicit and fix_name not in self.options.fix: + if fixer.explicit and self.explicit is not True and \ + fix_mod_path not in self.explicit: self.log_message("Skipping implicit fixer: %s", fix_name) continue - if self.options.verbose: - self.log_message("Adding transformation: %s", fix_name) + self.log_debug("Adding transformation: %s", fix_name) if fixer.order == "pre": pre_order_fixers.append(fixer) elif fixer.order == "post": @@ -211,8 +170,9 @@ else: raise ValueError("Illegal fixer order: %r" % fixer.order) - pre_order_fixers.sort(key=lambda x: x.run_order) - post_order_fixers.sort(key=lambda x: x.run_order) + key_func = operator.attrgetter("run_order") + pre_order_fixers.sort(key=key_func) + post_order_fixers.sort(key=key_func) return (pre_order_fixers, post_order_fixers) def log_error(self, msg, *args, **kwds): @@ -226,36 +186,38 @@ msg = msg % args self.logger.info(msg) - def refactor_args(self, args): - """Refactors files and directories from an argument list.""" - for arg in args: - if arg == "-": - self.refactor_stdin() - elif os.path.isdir(arg): - self.refactor_dir(arg) + def log_debug(self, msg, *args): + if args: + msg = msg % args + self.logger.debug(msg) + + def refactor(self, items, write=False, doctests_only=False): + """Refactor a list of files and directories.""" + for dir_or_file in items: + if os.path.isdir(dir_or_file): + self.refactor_dir(dir_or_file, write) else: - self.refactor_file(arg) + self.refactor_file(dir_or_file, write) - def refactor_dir(self, arg): + def refactor_dir(self, dir_name, write=False, doctests_only=False): """Descends down a directory and refactor every Python file found. Python files are assumed to have a .py extension. Files and subdirectories starting with '.' are skipped. """ - for dirpath, dirnames, filenames in os.walk(arg): - if self.options.verbose: - self.log_message("Descending into %s", dirpath) + for dirpath, dirnames, filenames in os.walk(dir_name): + self.log_debug("Descending into %s", dirpath) dirnames.sort() filenames.sort() for name in filenames: if not name.startswith(".") and name.endswith("py"): fullname = os.path.join(dirpath, name) - self.refactor_file(fullname) + self.refactor_file(fullname, write, doctests_only) # Modify dirnames in-place to remove subdirs with leading dots dirnames[:] = [dn for dn in dirnames if not dn.startswith(".")] - def refactor_file(self, filename): + def refactor_file(self, filename, write=False, doctests_only=False): """Refactors a file.""" try: f = open(filename) @@ -266,21 +228,20 @@ input = f.read() + "\n" # Silence certain parse errors finally: f.close() - if self.options.doctests_only: - if self.options.verbose: - self.log_message("Refactoring doctests in %s", filename) + if doctests_only: + self.log_debug("Refactoring doctests in %s", filename) output = self.refactor_docstring(input, filename) if output != input: - self.write_file(output, filename, input) - elif self.options.verbose: - self.log_message("No doctest changes in %s", filename) + self.processed_file(output, filename, input, write=write) + else: + self.log_debug("No doctest changes in %s", filename) else: tree = self.refactor_string(input, filename) if tree and tree.was_changed: # The [:-1] is to take off the \n we added earlier - self.write_file(str(tree)[:-1], filename) - elif self.options.verbose: - self.log_message("No changes in %s", filename) + self.processed_file(str(tree)[:-1], filename, write=write) + else: + self.log_debug("No changes in %s", filename) def refactor_string(self, data, name): """Refactor a given input string. @@ -299,30 +260,25 @@ self.log_error("Can't parse %s: %s: %s", name, err.__class__.__name__, err) return - if self.options.verbose: - self.log_message("Refactoring %s", name) + self.log_debug("Refactoring %s", name) self.refactor_tree(tree, name) return tree - def refactor_stdin(self): - if self.options.write: - self.log_error("Can't write changes back to stdin") - return + def refactor_stdin(self, doctests_only=False): input = sys.stdin.read() - if self.options.doctests_only: - if self.options.verbose: - self.log_message("Refactoring doctests in stdin") + if doctests_only: + self.log_debug("Refactoring doctests in stdin") output = self.refactor_docstring(input, "") if output != input: - self.write_file(output, "", input) - elif self.options.verbose: - self.log_message("No doctest changes in stdin") + self.processed_file(output, "", input) + else: + self.log_debug("No doctest changes in stdin") else: tree = self.refactor_string(input, "") if tree and tree.was_changed: - self.write_file(str(tree), "", input) - elif self.options.verbose: - self.log_message("No changes in stdin") + self.processed_file(str(tree), "", input) + else: + self.log_debug("No changes in stdin") def refactor_tree(self, tree, name): """Refactors a parse tree (modifying the tree in place). @@ -374,14 +330,9 @@ node.replace(new) node = new - def write_file(self, new_text, filename, old_text=None): - """Writes a string to a file. - - If there are no changes, this is a no-op. - - Otherwise, it first shows a unified diff between the old text - and the new text, and then rewrites the file; the latter is - only done if the write option is set. + def processed_file(self, new_text, filename, old_text=None, write=False): + """ + Called when a file has been refactored, and there are changes. """ self.files.append(filename) if old_text is None: @@ -395,14 +346,22 @@ finally: f.close() if old_text == new_text: - if self.options.verbose: - self.log_message("No changes to %s", filename) + self.log_debug("No changes to %s", filename) return diff_texts(old_text, new_text, filename) - if not self.options.write: - if self.options.verbose: - self.log_message("Not writing changes to %s", filename) + if not write: + self.log_debug("Not writing changes to %s", filename) return + if write: + self.write_file(next_text, filename, old_text) + + def write_file(self, new_text, filename, old_text=None): + """Writes a string to a file. + + It first shows a unified diff between the old text and the new text, and + then rewrites the file; the latter is only done if the write option is + set. + """ backup = filename + ".bak" if os.path.lexists(backup): try: @@ -425,8 +384,8 @@ self.log_error("Can't write %s: %s", filename, err) finally: f.close() - if self.options.verbose: - self.log_message("Wrote changes to %s", filename) + self.log_debug("Wrote changes to %s", filename) + self.wrote = True PS1 = ">>> " PS2 = "... " @@ -485,9 +444,9 @@ try: tree = self.parse_block(block, lineno, indent) except Exception, err: - if self.options.verbose: + if self.log.isEnabledFor(logging.DEBUG): for line in block: - self.log_message("Source: %s", line.rstrip("\n")) + self.log_debug("Source: %s", line.rstrip("\n")) self.log_error("Can't parse docstring in %s line %s: %s: %s", filename, lineno, err.__class__.__name__, err) return block @@ -504,7 +463,7 @@ return block def summarize(self): - if self.options.write: + if self.wrote: were = "were" else: were = "need to be" @@ -576,7 +535,3 @@ "(original)", "(refactored)", lineterm=""): print line - - -if __name__ == "__main__": - sys.exit(main()) Modified: python/trunk/Lib/lib2to3/tests/support.py ============================================================================== --- python/trunk/Lib/lib2to3/tests/support.py (original) +++ python/trunk/Lib/lib2to3/tests/support.py Wed Sep 3 02:21:32 2008 @@ -13,6 +13,7 @@ # Local imports from .. import pytree +from .. import refactor from ..pgen2 import driver test_dir = os.path.dirname(__file__) @@ -38,6 +39,21 @@ def reformat(string): return dedent(string) + "\n\n" +def get_refactorer(fixers=None, options=None): + """ + A convenience function for creating a RefactoringTool for tests. + + fixers is a list of fixers for the RefactoringTool to use. By default + "lib2to3.fixes.*" is used. options is an optional dictionary of options to + be passed to the RefactoringTool. + """ + if fixers is not None: + fixers = ["lib2to3.fixes.fix_" + fix for fix in fixers] + else: + fixers = refactor.get_fixers_from_package("lib2to3.fixes") + options = options or {} + return refactor.RefactoringTool(fixers, options, explicit=True) + def all_project_files(): for dirpath, dirnames, filenames in os.walk(proj_dir): for filename in filenames: Modified: python/trunk/Lib/lib2to3/tests/test_all_fixers.py ============================================================================== --- python/trunk/Lib/lib2to3/tests/test_all_fixers.py (original) +++ python/trunk/Lib/lib2to3/tests/test_all_fixers.py Wed Sep 3 02:21:32 2008 @@ -19,17 +19,10 @@ from .. import pytree from .. import refactor -class Options: - def __init__(self, **kwargs): - for k, v in kwargs.items(): - setattr(self, k, v) - self.verbose = False - class Test_all(support.TestCase): def setUp(self): - options = Options(fix=["all", "idioms", "ws_comma", "buffer"], - print_function=False) - self.refactor = refactor.RefactoringTool("lib2to3/fixes", options) + options = {"print_function" : False} + self.refactor = support.get_refactorer(options=options) def test_all_project_files(self): for filepath in support.all_project_files(): Modified: python/trunk/Lib/lib2to3/tests/test_fixers.py ============================================================================== --- python/trunk/Lib/lib2to3/tests/test_fixers.py (original) +++ python/trunk/Lib/lib2to3/tests/test_fixers.py Wed Sep 3 02:21:32 2008 @@ -21,19 +21,12 @@ from .. import fixer_util -class Options: - def __init__(self, **kwargs): - for k, v in kwargs.items(): - setattr(self, k, v) - - self.verbose = False - class FixerTestCase(support.TestCase): def setUp(self, fix_list=None): - if not fix_list: + if fix_list is None: fix_list = [self.fixer] - options = Options(fix=fix_list, print_function=False) - self.refactor = refactor.RefactoringTool("lib2to3/fixes", options) + options = {"print_function" : False} + self.refactor = support.get_refactorer(fix_list, options) self.fixer_log = [] self.filename = "" @@ -70,10 +63,10 @@ self.failUnlessEqual(self.fixer_log, []) def assert_runs_after(self, *names): - fix = [self.fixer] - fix.extend(names) - options = Options(fix=fix, print_function=False) - r = refactor.RefactoringTool("lib2to3/fixes", options) + fixes = [self.fixer] + fixes.extend(names) + options = {"print_function" : False} + r = support.get_refactorer(fixes, options) (pre, post) = r.get_fixers() n = "fix_" + self.fixer if post and post[-1].__class__.__module__.endswith(n): From buildbot at python.org Wed Sep 3 02:30:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 00:30:14 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080903003032.9B4ED1E4006@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/258 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 compile sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 02:40:07 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 00:40:07 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080903004007.DFD3C1E400B@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/1937 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 BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_bsddb3 make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 02:51:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 00:51:09 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080903005109.26D641E4016@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/236 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 python-checkins at python.org Wed Sep 3 03:53:28 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 03:53:28 +0200 (CEST) Subject: [Python-checkins] r66175 - python/trunk/Tools/scripts/2to3 Message-ID: <20080903015328.BA4791E4016@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 03:53:28 2008 New Revision: 66175 Log: update 2to3 script from 2to3 trunk Modified: python/trunk/Tools/scripts/2to3 Modified: python/trunk/Tools/scripts/2to3 ============================================================================== --- python/trunk/Tools/scripts/2to3 (original) +++ python/trunk/Tools/scripts/2to3 Wed Sep 3 03:53:28 2008 @@ -1,7 +1,6 @@ #!/usr/bin/env python -from lib2to3 import refactor +from lib2to3.main import main import sys import os -fixers = os.path.join(os.path.dirname(refactor.__file__), "fixes") -sys.exit(refactor.main(fixers)) +sys.exit(main("lib2to3.fixes")) From python-checkins at python.org Wed Sep 3 04:04:06 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 04:04:06 +0200 (CEST) Subject: [Python-checkins] r66176 - sandbox/trunk/2to3/lib2to3/refactor.py Message-ID: <20080903020406.91FD31E4006@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 04:04:06 2008 New Revision: 66176 Log: fix typo Modified: sandbox/trunk/2to3/lib2to3/refactor.py Modified: sandbox/trunk/2to3/lib2to3/refactor.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/refactor.py (original) +++ sandbox/trunk/2to3/lib2to3/refactor.py Wed Sep 3 04:04:06 2008 @@ -353,7 +353,7 @@ self.log_debug("Not writing changes to %s", filename) return if write: - self.write_file(next_text, filename, old_text) + self.write_file(new_text, filename, old_text) def write_file(self, new_text, filename, old_text=None): """Writes a string to a file. From python-checkins at python.org Wed Sep 3 04:14:03 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 04:14:03 +0200 (CEST) Subject: [Python-checkins] r66177 - in python/trunk/Lib/lib2to3: refactor.py Message-ID: <20080903021403.595E61E4006@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 04:14:03 2008 New Revision: 66177 Log: Merged revisions 66176 via svnmerge from svn+ssh://pythondev at svn.python.org/sandbox/trunk/2to3/lib2to3 ........ r66176 | benjamin.peterson | 2008-09-02 21:04:06 -0500 (Tue, 02 Sep 2008) | 1 line fix typo ........ Modified: python/trunk/Lib/lib2to3/ (props changed) python/trunk/Lib/lib2to3/refactor.py Modified: python/trunk/Lib/lib2to3/refactor.py ============================================================================== --- python/trunk/Lib/lib2to3/refactor.py (original) +++ python/trunk/Lib/lib2to3/refactor.py Wed Sep 3 04:14:03 2008 @@ -353,7 +353,7 @@ self.log_debug("Not writing changes to %s", filename) return if write: - self.write_file(next_text, filename, old_text) + self.write_file(new_text, filename, old_text) def write_file(self, new_text, filename, old_text=None): """Writes a string to a file. From buildbot at python.org Wed Sep 3 04:39:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 02:39:01 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080903023901.429E01E4017@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/239 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 BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 05:22:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 03:22:26 +0000 Subject: [Python-checkins] buildbot failure in AMD64 W2k8 3.0 Message-ID: <20080903032226.979931E4006@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/696 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 BUILD FAILED: failed test Excerpt from the test logfile: 6 tests failed: test_bsddb test_dbm test_deque test_sys test_tarfile test_timeout ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 199, in test_close_and_reopen self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 199, in test_close_and_reopen self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_anydbm_creation (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 65, in test_anydbm_creation self.read_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 96, in read_helper keys = self.keys_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys_helper keys = sorted(k.decode("ascii") for k in f.keys()) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys = sorted(k.decode("ascii") for k in f.keys()) AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_anydbm_keys (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 84, in test_anydbm_keys keys = self.keys_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys_helper keys = sorted(k.decode("ascii") for k in f.keys()) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys = sorted(k.decode("ascii") for k in f.keys()) AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_anydbm_modification (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 72, in test_anydbm_modification self.read_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 96, in read_helper keys = self.keys_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys_helper keys = sorted(k.decode("ascii") for k in f.keys()) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys = sorted(k.decode("ascii") for k in f.keys()) AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_anydbm_read (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 78, in test_anydbm_read self.read_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 96, in read_helper keys = self.keys_helper(f) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys_helper keys = sorted(k.decode("ascii") for k in f.keys()) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 52, in keys = sorted(k.decode("ascii") for k in f.keys()) AttributeError: 'str' object has no attribute 'decode' ====================================================================== FAIL: test_whichdb (test.test_dbm.WhichDBTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 131, in test_whichdb self.assertTrue(f[b"1"] == b"1") AssertionError: None ====================================================================== FAIL: test_anydbm_access (test.test_dbm.TestCase-dbm.bsd) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_dbm.py", line 92, in test_anydbm_access assert(f[key] == b"Python:") AssertionError ====================================================================== FAIL: test_maxlen (test.test_deque.TestBasic) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_deque.py", line 54, in test_maxlen self.assertEqual(repr(d), 'deque([7, 8, 9], maxlen=3)') AssertionError: 'deque([7, 8, 9], maxlen=%Id)' != 'deque([7, 8, 9], maxlen=3)' ====================================================================== FAIL: test_objecttypes (test.test_sys.SizeofTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_sys.py", line 583, in test_objecttypes check(range(66000), size(h + '3l')) File "S:\buildbots\python.x64\3.0.nelson-win64\build\lib\test\test_sys.py", line 399, in check_sizeof self.assertEqual(result, size, msg) AssertionError: wrong size for : got 56, expected 48 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 05:37:56 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 03:37:56 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080903033756.2A31D1E4006@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/489 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: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 06:09:00 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 04:09:00 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu trunk Message-ID: <20080903040900.60A371E4006@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%20trunk/builds/513 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_pickletools make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 06:42:38 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 04:42:38 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080903044238.E3FA91E4006@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/3886 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Wed Sep 3 07:57:49 2008 From: python-checkins at python.org (gregory.p.smith) Date: Wed, 3 Sep 2008 07:57:49 +0200 (CEST) Subject: [Python-checkins] r66179 - in python/trunk: configure configure.in Message-ID: <20080903055749.9C57D1E4006@bag.python.org> Author: gregory.p.smith Date: Wed Sep 3 07:57:48 2008 New Revision: 66179 Log: Fix issue 3645: OpenBSD required -lcurses when linking with readline to get the correct completion_matches function to avoid crashes on x86_64 (amd64). I don't have OpenBSD to test myself. I tested that it does not break anything on linux. It is simple. Modified: python/trunk/configure python/trunk/configure.in Modified: python/trunk/configure ============================================================================== --- python/trunk/configure (original) +++ python/trunk/configure Wed Sep 3 07:57:48 2008 @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 65183 . +# From configure.in Revision: 65652 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for python 2.6. # @@ -2076,7 +2076,7 @@ # On OpenBSD, select(2) is not available if _XOPEN_SOURCE is defined, # even though select is a POSIX function. Reported by J. Ribbens. # Reconfirmed for OpenBSD 3.3 by Zachary Hamm, for 3.4 by Jason Ish. - OpenBSD/2.* | OpenBSD/3.[0123456789] | OpenBSD/4.[0123]) + OpenBSD*) define_xopen_source=no # OpenBSD undoes our definition of __BSD_VISIBLE if _XOPEN_SOURCE is # also defined. This can be overridden by defining _BSD_SOURCE @@ -2086,6 +2086,8 @@ #define _BSD_SOURCE 1 _ACEOF + # OpenBSD's readline library needs the libcurses + READLINE_LIBS="-lcurses" ;; # Defining _XOPEN_SOURCE on NetBSD version prior to the introduction of # _NETBSD_SOURCE disables certain features (eg. setgroups). Reported by @@ -22965,7 +22967,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lreadline $LIBS" +LIBS="-lreadline $READLINE_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -23111,7 +23113,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lreadline $LIBS" +LIBS="-lreadline $READLINE_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -23239,7 +23241,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lreadline $LIBS" +LIBS="-lreadline $READLINE_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -23310,7 +23312,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lreadline $LIBS" +LIBS="-lreadline $READLINE_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -23381,7 +23383,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lreadline $LIBS" +LIBS="-lreadline $READLINE_LIBS $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF Modified: python/trunk/configure.in ============================================================================== --- python/trunk/configure.in (original) +++ python/trunk/configure.in Wed Sep 3 07:57:48 2008 @@ -251,12 +251,14 @@ # On OpenBSD, select(2) is not available if _XOPEN_SOURCE is defined, # even though select is a POSIX function. Reported by J. Ribbens. # Reconfirmed for OpenBSD 3.3 by Zachary Hamm, for 3.4 by Jason Ish. - OpenBSD/2.* | OpenBSD/3.@<:@0123456789@:>@ | OpenBSD/4.@<:@0123@:>@) + OpenBSD*) define_xopen_source=no # OpenBSD undoes our definition of __BSD_VISIBLE if _XOPEN_SOURCE is # also defined. This can be overridden by defining _BSD_SOURCE # As this has a different meaning on Linux, only define it on OpenBSD AC_DEFINE(_BSD_SOURCE, 1, [Define on OpenBSD to activate all library features]) + # OpenBSD's readline library needs the libcurses + READLINE_LIBS="-lcurses" ;; # Defining _XOPEN_SOURCE on NetBSD version prior to the introduction of # _NETBSD_SOURCE disables certain features (eg. setgroups). Reported by @@ -3324,7 +3326,7 @@ # check where readline lives # save the value of LIBS so we don't actually link Python with readline LIBS_no_readline=$LIBS -AC_CHECK_LIB(readline, readline) +AC_CHECK_LIB(readline, readline, , ,$READLINE_LIBS) if test "$ac_cv_have_readline_readline" = no then AC_CHECK_LIB(termcap, readline) @@ -3333,7 +3335,7 @@ # check for readline 2.1 AC_CHECK_LIB(readline, rl_callback_handler_install, AC_DEFINE(HAVE_RL_CALLBACK, 1, - [Define if you have readline 2.1]), , ) + [Define if you have readline 2.1]), ,$READLINE_LIBS) # check for readline 2.2 AC_TRY_CPP([#include ], @@ -3349,17 +3351,17 @@ # check for readline 4.0 AC_CHECK_LIB(readline, rl_pre_input_hook, AC_DEFINE(HAVE_RL_PRE_INPUT_HOOK, 1, - [Define if you have readline 4.0]), , ) + [Define if you have readline 4.0]), ,$READLINE_LIBS) # also in 4.0 AC_CHECK_LIB(readline, rl_completion_display_matches_hook, AC_DEFINE(HAVE_RL_COMPLETION_DISPLAY_MATCHES_HOOK, 1, - [Define if you have readline 4.0]), , ) + [Define if you have readline 4.0]), ,$READLINE_LIBS) # check for readline 4.2 AC_CHECK_LIB(readline, rl_completion_matches, AC_DEFINE(HAVE_RL_COMPLETION_MATCHES, 1, - [Define if you have readline 4.2]), , ) + [Define if you have readline 4.2]), ,$READLINE_LIBS) # also in readline 4.2 AC_TRY_CPP([#include ], From python-checkins at python.org Wed Sep 3 11:20:05 2008 From: python-checkins at python.org (vinay.sajip) Date: Wed, 3 Sep 2008 11:20:05 +0200 (CEST) Subject: [Python-checkins] r66180 - in python/trunk: Lib/logging/config.py Lib/test/test_logging.py Misc/NEWS Message-ID: <20080903092005.B52AD1E400E@bag.python.org> Author: vinay.sajip Date: Wed Sep 3 11:20:05 2008 New Revision: 66180 Log: Issue #3726: Allowed spaces in separators in logging configuration files. Modified: python/trunk/Lib/logging/config.py python/trunk/Lib/test/test_logging.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/logging/config.py ============================================================================== --- python/trunk/Lib/logging/config.py (original) +++ python/trunk/Lib/logging/config.py Wed Sep 3 11:20:05 2008 @@ -22,7 +22,7 @@ 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! """ @@ -101,6 +101,8 @@ found = getattr(found, n) return found +def _strip_spaces(alist): + return map(lambda x: string.strip(x), alist) def _create_formatters(cp): """Create and return formatters""" @@ -108,9 +110,10 @@ if not len(flist): return {} flist = string.split(flist, ",") + flist = _strip_spaces(flist) formatters = {} for form in flist: - sectname = "formatter_%s" % string.strip(form) + sectname = "formatter_%s" % form opts = cp.options(sectname) if "format" in opts: fs = cp.get(sectname, "format", 1) @@ -136,10 +139,11 @@ if not len(hlist): return {} hlist = string.split(hlist, ",") + hlist = _strip_spaces(hlist) handlers = {} fixups = [] #for inter-handler references for hand in hlist: - sectname = "handler_%s" % string.strip(hand) + sectname = "handler_%s" % hand klass = cp.get(sectname, "class") opts = cp.options(sectname) if "formatter" in opts: @@ -192,8 +196,9 @@ hlist = cp.get(sectname, "handlers") if len(hlist): hlist = string.split(hlist, ",") + hlist = _strip_spaces(hlist) for hand in hlist: - log.addHandler(handlers[string.strip(hand)]) + log.addHandler(handlers[hand]) #and now the others... #we don't want to lose the existing loggers, @@ -243,8 +248,9 @@ hlist = cp.get(sectname, "handlers") if len(hlist): hlist = string.split(hlist, ",") + hlist = _strip_spaces(hlist) for hand in hlist: - logger.addHandler(handlers[string.strip(hand)]) + logger.addHandler(handlers[hand]) #Disable any old loggers. There's no point deleting #them as other threads may continue to hold references Modified: python/trunk/Lib/test/test_logging.py ============================================================================== --- python/trunk/Lib/test/test_logging.py (original) +++ python/trunk/Lib/test/test_logging.py Wed Sep 3 11:20:05 2008 @@ -587,6 +587,48 @@ # config5 specifies a custom handler class to be loaded config5 = config1.replace('class=StreamHandler', 'class=logging.StreamHandler') + # config6 uses ', ' delimiters in the handlers and formatters sections + config6 = """ + [loggers] + keys=root,parser + + [handlers] + keys=hand1, hand2 + + [formatters] + keys=form1, form2 + + [logger_root] + level=WARNING + handlers= + + [logger_parser] + level=DEBUG + handlers=hand1 + propagate=1 + qualname=compiler.parser + + [handler_hand1] + class=StreamHandler + level=NOTSET + formatter=form1 + args=(sys.stdout,) + + [handler_hand2] + class=FileHandler + level=NOTSET + formatter=form1 + args=('test.blah', 'a') + + [formatter_form1] + format=%(levelname)s ++ %(message)s + datefmt= + + [formatter_form2] + format=%(message)s + datefmt= + """ + def apply_config(self, conf): try: fn = tempfile.mktemp(".ini") @@ -653,6 +695,9 @@ def test_config5_ok(self): self.test_config1_ok(config=self.config5) + def test_config6_ok(self): + self.test_config1_ok(config=self.config6) + class LogRecordStreamHandler(StreamRequestHandler): """Handler for a streaming logging request. It saves the log message in the Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Sep 3 11:20:05 2008 @@ -56,6 +56,8 @@ Library ------- +- Issue #3726: Allowed spaces in separators in logging configuration files. + - Issue #3719: platform.architecture() fails if there are spaces in the path to the Python binary. From buildbot at python.org Wed Sep 3 11:31:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 09:31:53 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080903093153.C24FB1E4023@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/241 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: vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: sincerely, -The Buildbot From ncoghlan at gmail.com Wed Sep 3 12:28:20 2008 From: ncoghlan at gmail.com (Nick Coghlan) Date: Wed, 03 Sep 2008 20:28:20 +1000 Subject: [Python-checkins] r66171 - in python/trunk: Lib/distutils/msvc9compiler.py Misc/NEWS In-Reply-To: <20080902231956.627331E4006@bag.python.org> References: <20080902231956.627331E4006@bag.python.org> Message-ID: <48BE66C4.9070209@gmail.com> amaury.forgeotdarc wrote: > Author: amaury.forgeotdarc > Date: Wed Sep 3 01:19:56 2008 > New Revision: 66171 > > Log: > Issue 2975: when compiling multiple extension modules with visual studio 2008 > from the same python instance, some environment variables (LIB, INCLUDE) > would grow without limit. > > Tested with these statements: > distutils.ccompiler.new_compiler().initialize() > print os.environ['LIB'] > But I don't know how to turn them into reliable unit tests. test_cmd_line and test_cmd_line_script give some examples of spawning new Python processes in order to test things that you don't want to run in the current process. Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia --------------------------------------------------------------- http://www.boredomandlaziness.org From python-checkins at python.org Wed Sep 3 13:13:57 2008 From: python-checkins at python.org (marc-andre.lemburg) Date: Wed, 3 Sep 2008 13:13:57 +0200 (CEST) Subject: [Python-checkins] r66181 - in python/trunk: Lib/distutils/dist.py Lib/distutils/tests/test_dist.py Misc/NEWS Message-ID: <20080903111357.3DF511E4008@bag.python.org> Author: marc-andre.lemburg Date: Wed Sep 3 13:13:56 2008 New Revision: 66181 Log: Issue #2562: Fix distutils PKG-INFO writing logic to allow having non-ascii characters and Unicode in setup.py meta-data. Modified: python/trunk/Lib/distutils/dist.py python/trunk/Lib/distutils/tests/test_dist.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/distutils/dist.py ============================================================================== --- python/trunk/Lib/distutils/dist.py (original) +++ python/trunk/Lib/distutils/dist.py Wed Sep 3 13:13:56 2008 @@ -23,6 +23,9 @@ from distutils import log from distutils.debug import DEBUG +# Encoding used for the PKG-INFO files +PKG_INFO_ENCODING = 'utf-8' + # Regex to define acceptable Distutils command names. This is not *quite* # the same as a Python NAME -- I don't allow leading underscores. The fact # that they're very similar is no coincidence; the default naming scheme is @@ -1084,23 +1087,23 @@ if self.provides or self.requires or self.obsoletes: version = '1.1' - file.write('Metadata-Version: %s\n' % version) - file.write('Name: %s\n' % self.get_name() ) - file.write('Version: %s\n' % self.get_version() ) - file.write('Summary: %s\n' % self.get_description() ) - file.write('Home-page: %s\n' % self.get_url() ) - file.write('Author: %s\n' % self.get_contact() ) - file.write('Author-email: %s\n' % self.get_contact_email() ) - file.write('License: %s\n' % self.get_license() ) + self._write_field(file, 'Metadata-Version', version) + self._write_field(file, 'Name', self.get_name()) + self._write_field(file, 'Version', self.get_version()) + self._write_field(file, 'Summary', self.get_description()) + self._write_field(file, 'Home-page', self.get_url()) + self._write_field(file, 'Author', self.get_contact()) + self._write_field(file, 'Author-email', self.get_contact_email()) + self._write_field(file, 'License', self.get_license()) if self.download_url: - file.write('Download-URL: %s\n' % self.download_url) + self._write_field(file, 'Download-URL', self.download_url) - long_desc = rfc822_escape( self.get_long_description() ) - file.write('Description: %s\n' % long_desc) + long_desc = rfc822_escape( self.get_long_description()) + self._write_field(file, 'Description', long_desc) keywords = string.join( self.get_keywords(), ',') if keywords: - file.write('Keywords: %s\n' % keywords ) + self._write_field(file, 'Keywords', keywords) self._write_list(file, 'Platform', self.get_platforms()) self._write_list(file, 'Classifier', self.get_classifiers()) @@ -1110,9 +1113,18 @@ self._write_list(file, 'Provides', self.get_provides()) self._write_list(file, 'Obsoletes', self.get_obsoletes()) + def _write_field(self, file, name, value): + + if isinstance(value, unicode): + value = value.encode(PKG_INFO_ENCODING) + else: + value = str(value) + file.write('%s: %s\n' % (name, value)) + def _write_list (self, file, name, values): + for value in values: - file.write('%s: %s\n' % (name, value)) + self._write_field(file, name, value) # -- Metadata query methods ---------------------------------------- Modified: python/trunk/Lib/distutils/tests/test_dist.py ============================================================================== --- python/trunk/Lib/distutils/tests/test_dist.py (original) +++ python/trunk/Lib/distutils/tests/test_dist.py Wed Sep 3 13:13:56 2008 @@ -1,3 +1,5 @@ +# -*- coding: latin-1 -*- + """Tests for distutils.dist.""" import distutils.cmd @@ -95,6 +97,39 @@ finally: os.unlink(TESTFN) + def test_write_pkg_file(self): + # Check DistributionMetadata handling of Unicode fields + my_file = os.path.join(os.path.dirname(__file__), 'f') + klass = distutils.dist.Distribution + + dist = klass(attrs={'author': u'Mister Caf?', + 'name': 'my.package', + 'maintainer': u'Caf? Junior', + 'description': u'Caf? torr?fi?', + 'long_description': u'H?h?h?'}) + + + # let's make sure the file can be written + # with Unicode fields. they are encoded with + # PKG_INFO_ENCODING + try: + dist.metadata.write_pkg_file(open(my_file, 'w')) + finally: + if os.path.exists(my_file): + os.remove(my_file) + + # regular ascii is of course always usable + dist = klass(attrs={'author': 'Mister Cafe', + 'name': 'my.package', + 'maintainer': 'Cafe Junior', + 'description': 'Cafe torrefie', + 'long_description': 'Hehehe'}) + + try: + dist.metadata.write_pkg_file(open(my_file, 'w')) + finally: + if os.path.exists(my_file): + os.remove(my_file) class MetadataTestCase(unittest.TestCase): Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Sep 3 13:13:56 2008 @@ -56,7 +56,10 @@ Library ------- -- Issue #3726: Allowed spaces in separators in logging configuration files. +- Issue #2562: Fix distutils PKG-INFO writing logic to allow having + non-ascii characters and Unicode in setup.py meta-data. + +- Issue #3726: Allow spaces in separators in logging configuration files. - Issue #3719: platform.architecture() fails if there are spaces in the path to the Python binary. From mal at egenix.com Wed Sep 3 12:43:39 2008 From: mal at egenix.com (M.-A. Lemburg) Date: Wed, 03 Sep 2008 12:43:39 +0200 Subject: [Python-checkins] r66171 - in python/trunk: Lib/distutils/msvc9compiler.py Misc/NEWS In-Reply-To: <48BE66C4.9070209@gmail.com> References: <20080902231956.627331E4006@bag.python.org> <48BE66C4.9070209@gmail.com> Message-ID: <48BE6A5B.5060206@egenix.com> On 2008-09-03 12:28, Nick Coghlan wrote: > amaury.forgeotdarc wrote: >> Author: amaury.forgeotdarc >> Date: Wed Sep 3 01:19:56 2008 >> New Revision: 66171 >> >> Log: >> Issue 2975: when compiling multiple extension modules with visual studio 2008 >> from the same python instance, some environment variables (LIB, INCLUDE) >> would grow without limit. >> >> Tested with these statements: >> distutils.ccompiler.new_compiler().initialize() >> print os.environ['LIB'] >> But I don't know how to turn them into reliable unit tests. > > test_cmd_line and test_cmd_line_script give some examples of spawning > new Python processes in order to test things that you don't want to run > in the current process. You'd have to make those tests optional, since they would only work with a proper VS2008 installation. Note that the helper function should really be called remove_duplicates(variable) to stay in line with distutils and PEP8 conventions. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Sep 03 2008) >>> Python/Zope Consulting and Support ... http://www.egenix.com/ >>> mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ >>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ ________________________________________________________________________ :::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! :::: eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 From buildbot at python.org Wed Sep 3 13:42:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 11:42:12 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080903114212.40F041E4008@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/192 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: marc-andre.lemburg BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Wed Sep 3 19:50:33 2008 From: python-checkins at python.org (jesus.cea) Date: Wed, 3 Sep 2008 19:50:33 +0200 (CEST) Subject: [Python-checkins] r66182 - in python/trunk/Modules: _bsddb.c bsddb.h Message-ID: <20080903175033.500771E4008@bag.python.org> Author: jesus.cea Date: Wed Sep 3 19:50:32 2008 New Revision: 66182 Log: Fix some leaks - Neal Norwitz Modified: python/trunk/Modules/_bsddb.c python/trunk/Modules/bsddb.h Modified: python/trunk/Modules/_bsddb.c ============================================================================== --- python/trunk/Modules/_bsddb.c (original) +++ python/trunk/Modules/_bsddb.c Wed Sep 3 19:50:32 2008 @@ -1106,7 +1106,7 @@ { PyObject *dummy; - if (self->db_env && !self->closed) { + if (self->db_env) { dummy=DBEnv_close_internal(self,0); Py_XDECREF(dummy); } @@ -3981,13 +3981,15 @@ dummy=DB_close_internal(self->children_dbs,0); Py_XDECREF(dummy); } + } + self->closed = 1; + if (self->db_env) { MYDB_BEGIN_ALLOW_THREADS; err = self->db_env->close(self->db_env, flags); MYDB_END_ALLOW_THREADS; /* after calling DBEnv->close, regardless of error, this DBEnv * may not be accessed again (Berkeley DB docs). */ - self->closed = 1; self->db_env = NULL; RETURN_IF_ERR(); } @@ -6148,7 +6150,7 @@ err = self->sequence->open(self->sequence, txn, &key, flags); MYDB_END_ALLOW_THREADS - CLEAR_DBT(key); + FREE_DBT(key); RETURN_IF_ERR(); if (txn) { Modified: python/trunk/Modules/bsddb.h ============================================================================== --- python/trunk/Modules/bsddb.h (original) +++ python/trunk/Modules/bsddb.h Wed Sep 3 19:50:32 2008 @@ -105,7 +105,7 @@ #error "eek! DBVER can't handle minor versions > 9" #endif -#define PY_BSDDB_VERSION "4.7.3pre3" +#define PY_BSDDB_VERSION "4.7.3pre4" /* Python object definitions */ From buildbot at python.org Wed Sep 3 20:09:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 18:09:12 +0000 Subject: [Python-checkins] buildbot failure in i386 Ubuntu trunk Message-ID: <20080903180912.D03EB1E4008@bag.python.org> The Buildbot has detected a new failure of i386 Ubuntu trunk. Full details are available at: http://www.python.org/dev/buildbot/all/i386%20Ubuntu%20trunk/builds/380 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-i386 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_pickletools make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Wed Sep 3 20:10:30 2008 From: python-checkins at python.org (jesse.noller) Date: Wed, 3 Sep 2008 20:10:30 +0200 (CEST) Subject: [Python-checkins] r66184 - in python/trunk: Misc/NEWS Modules/_multiprocessing/multiprocessing.h Message-ID: <20080903181030.CBAD11E4008@bag.python.org> Author: jesse.noller Date: Wed Sep 3 20:10:30 2008 New Revision: 66184 Log: Fix issue 3110 - solaris compilation of multiprocessing fails, reviewed by pitrou Modified: python/trunk/Misc/NEWS python/trunk/Modules/_multiprocessing/multiprocessing.h Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Wed Sep 3 20:10:30 2008 @@ -83,6 +83,9 @@ - Issue #3708: os.urandom no longer goes into an infinite loop when passed a non-integer floating point number. +- Issue #3110: multiprocessing fails to compiel on solaris 10 due to missing + SEM_VALUE_MAX. + Extension Modules ----------------- Modified: python/trunk/Modules/_multiprocessing/multiprocessing.h ============================================================================== --- python/trunk/Modules/_multiprocessing/multiprocessing.h (original) +++ python/trunk/Modules/_multiprocessing/multiprocessing.h Wed Sep 3 20:10:30 2008 @@ -37,6 +37,17 @@ #endif /* + * Issue 3110 - Solaris does not define SEM_VALUE_MAX + */ +#ifndef SEM_VALUE_MAX +# ifdef _SEM_VALUE_MAX +# define SEM_VALUE_MAX _SEM_VALUE_MAX +# else +# define SEM_VALUE_MAX INT_MAX +# endif +#endif + +/* * Make sure Py_ssize_t available */ From buildbot at python.org Wed Sep 3 20:51:59 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 18:51:59 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080903185159.882301E4008@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/3890 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 21:24:27 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 19:24:27 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080903192427.67ACB1E4009@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/296 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: jesse.noller 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 brett at python.org Wed Sep 3 21:27:54 2008 From: brett at python.org (Brett Cannon) Date: Wed, 3 Sep 2008 12:27:54 -0700 Subject: [Python-checkins] r66180 - in python/trunk: Lib/logging/config.py Lib/test/test_logging.py Misc/NEWS In-Reply-To: <20080903092005.B52AD1E400E@bag.python.org> References: <20080903092005.B52AD1E400E@bag.python.org> Message-ID: Who did the code review for this? On Wed, Sep 3, 2008 at 2:20 AM, vinay.sajip wrote: > Author: vinay.sajip > Date: Wed Sep 3 11:20:05 2008 > New Revision: 66180 > > Log: > Issue #3726: Allowed spaces in separators in logging configuration files. > > Modified: > python/trunk/Lib/logging/config.py > python/trunk/Lib/test/test_logging.py > python/trunk/Misc/NEWS > > Modified: python/trunk/Lib/logging/config.py > ============================================================================== > --- python/trunk/Lib/logging/config.py (original) > +++ python/trunk/Lib/logging/config.py Wed Sep 3 11:20:05 2008 > @@ -22,7 +22,7 @@ > 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! > """ > @@ -101,6 +101,8 @@ > found = getattr(found, n) > return found > > +def _strip_spaces(alist): > + return map(lambda x: string.strip(x), alist) > > def _create_formatters(cp): > """Create and return formatters""" > @@ -108,9 +110,10 @@ > if not len(flist): > return {} > flist = string.split(flist, ",") > + flist = _strip_spaces(flist) > formatters = {} > for form in flist: > - sectname = "formatter_%s" % string.strip(form) > + sectname = "formatter_%s" % form > opts = cp.options(sectname) > if "format" in opts: > fs = cp.get(sectname, "format", 1) > @@ -136,10 +139,11 @@ > if not len(hlist): > return {} > hlist = string.split(hlist, ",") > + hlist = _strip_spaces(hlist) > handlers = {} > fixups = [] #for inter-handler references > for hand in hlist: > - sectname = "handler_%s" % string.strip(hand) > + sectname = "handler_%s" % hand > klass = cp.get(sectname, "class") > opts = cp.options(sectname) > if "formatter" in opts: > @@ -192,8 +196,9 @@ > hlist = cp.get(sectname, "handlers") > if len(hlist): > hlist = string.split(hlist, ",") > + hlist = _strip_spaces(hlist) > for hand in hlist: > - log.addHandler(handlers[string.strip(hand)]) > + log.addHandler(handlers[hand]) > > #and now the others... > #we don't want to lose the existing loggers, > @@ -243,8 +248,9 @@ > hlist = cp.get(sectname, "handlers") > if len(hlist): > hlist = string.split(hlist, ",") > + hlist = _strip_spaces(hlist) > for hand in hlist: > - logger.addHandler(handlers[string.strip(hand)]) > + logger.addHandler(handlers[hand]) > > #Disable any old loggers. There's no point deleting > #them as other threads may continue to hold references > > Modified: python/trunk/Lib/test/test_logging.py > ============================================================================== > --- python/trunk/Lib/test/test_logging.py (original) > +++ python/trunk/Lib/test/test_logging.py Wed Sep 3 11:20:05 2008 > @@ -587,6 +587,48 @@ > # config5 specifies a custom handler class to be loaded > config5 = config1.replace('class=StreamHandler', 'class=logging.StreamHandler') > > + # config6 uses ', ' delimiters in the handlers and formatters sections > + config6 = """ > + [loggers] > + keys=root,parser > + > + [handlers] > + keys=hand1, hand2 > + > + [formatters] > + keys=form1, form2 > + > + [logger_root] > + level=WARNING > + handlers= > + > + [logger_parser] > + level=DEBUG > + handlers=hand1 > + propagate=1 > + qualname=compiler.parser > + > + [handler_hand1] > + class=StreamHandler > + level=NOTSET > + formatter=form1 > + args=(sys.stdout,) > + > + [handler_hand2] > + class=FileHandler > + level=NOTSET > + formatter=form1 > + args=('test.blah', 'a') > + > + [formatter_form1] > + format=%(levelname)s ++ %(message)s > + datefmt= > + > + [formatter_form2] > + format=%(message)s > + datefmt= > + """ > + > def apply_config(self, conf): > try: > fn = tempfile.mktemp(".ini") > @@ -653,6 +695,9 @@ > def test_config5_ok(self): > self.test_config1_ok(config=self.config5) > > + def test_config6_ok(self): > + self.test_config1_ok(config=self.config6) > + > class LogRecordStreamHandler(StreamRequestHandler): > > """Handler for a streaming logging request. It saves the log message in the > > Modified: python/trunk/Misc/NEWS > ============================================================================== > --- python/trunk/Misc/NEWS (original) > +++ python/trunk/Misc/NEWS Wed Sep 3 11:20:05 2008 > @@ -56,6 +56,8 @@ > Library > ------- > > +- Issue #3726: Allowed spaces in separators in logging configuration files. > + > - Issue #3719: platform.architecture() fails if there are spaces in the > path to the Python binary. > > _______________________________________________ > Python-checkins mailing list > Python-checkins at python.org > http://mail.python.org/mailman/listinfo/python-checkins > From buildbot at python.org Wed Sep 3 21:33:57 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 19:33:57 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080903193357.65C7F1E400B@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/244 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: jesse.noller BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 21:46:24 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 19:46:24 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080903194654.198BF1E4009@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/261 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: antoine.pitrou,jesse.noller BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 21:59:23 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 19:59:23 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080903195923.DCD9A1E4025@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/491 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: antoine.pitrou,jesse.noller BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 22:16:10 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 20:16:10 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080903201610.AD3DB1E4009@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: antoine.pitrou BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_bsddb ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 199, in test_close_and_reopen self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_close_and_reopen (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 199, in test_close_and_reopen self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestHashTable_InMemory) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test__no_deadlock_first (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 314, in test__no_deadlock_first k,v = self.f.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_change (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 187, in test_change self.assertEqual(self.f['r'], 'discovered') File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_clear (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 302, in test_clear self.f.clear() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 476, in clear self.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_first_next_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 266, in test_first_next_looping items = [self.f.first()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_first_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 281, in test_first_while_deleting key = self.f.first()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_get (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 396, in test_get self.assertEqual(self.f.get('q', 'Default'), self.d['q']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 358, in get return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_getitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 180, in test_getitem self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_iter_while_modifying_values (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 233, in test_iter_while_modifying_values key = next(fi) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_keyordering (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 413, in test_keyordering self.assertEqual(self.f.first()[0], keys[0]) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 145, in first key, value = self.db.first() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 79, in first return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_last_while_deleting (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 289, in test_last_while_deleting key = self.f.last()[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_mapping_iteration_methods (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 207, in test_mapping_iteration_methods self.assertSetEquals(d, f) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 202, in assertSetEquals self.assertEqual(set(seqn1), set(seqn2)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_pop (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 387, in test_pop v = self.f.pop(k) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 455, in pop value = self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_popitem (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 379, in test_popitem k, v = self.f.popitem() File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 466, in popitem key = next(iter(self)) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 44, in __iter__ for k in self.db: File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\__init__.py", line 110, in __iter__ key = _DeadlockWrap(cur.first, 0,0,0)[0] File "S:\buildbots\python\3.0.nelson-windows\build\lib\bsddb\dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) TypeError: first() takes exactly 1 positional argument (4 given) ====================================================================== ERROR: test_previous_last_looping (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 272, in test_previous_last_looping items = [self.f.last()] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 149, in last key, value = self.db.last() File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 83, in last return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_set_location (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 294, in test_set_location self.assertEqual(self.f.set_location('e'), ('e', self.d['e'])) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 153, in set_location key, value = self.db.set_location(key) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 87, in set_location return key.decode("utf-8"), value AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_setdefault (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 400, in test_setdefault self.assertEqual(self.f.setdefault('r', 'cat'), self.d['r']) File "S:\buildbots\python\3.0.nelson-windows\build\lib\_abcoll.py", line 495, in setdefault return self[key] File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' ====================================================================== ERROR: test_update (test.test_bsddb.TestBTree_InMemory_Truncate) ---------------------------------------------------------------------- Traceback (most recent call last): File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 407, in test_update self.assertEqual(self.f[k], v) File "S:\buildbots\python\3.0.nelson-windows\build\lib\test\test_bsddb.py", line 103, in __getitem__ return self.db[key].decode("utf-8") AttributeError: 'str' object has no attribute 'decode' sincerely, -The Buildbot From buildbot at python.org Wed Sep 3 22:22:22 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 20:22:22 +0000 Subject: [Python-checkins] buildbot failure in x86 XP-4 trunk Message-ID: <20080903202222.DCF641E400B@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/1479 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: bolen-windows Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_bsddb3 ====================================================================== ERROR: test01_badpointer (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 21, in test01_badpointer dbs = dbshelve.open(self.filename) File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\dbshelve.py", line 106, in open d.open(filename, dbname, filetype, flags, mode) File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\dbshelve.py", line 171, in open self.db.open(*args, **kwargs) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== ERROR: test03_repr_closed_db (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 37, in test03_repr_closed_db db = hashopen(self.filename) File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\__init__.py", line 355, in hashopen d.open(file, db.DB_HASH, flags, mode) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== ERROR: test04_repr_db (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 43, in test04_repr_db db = hashopen(self.filename) File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\__init__.py", line 355, in hashopen d.open(file, db.DB_HASH, flags, mode) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== ERROR: test05_double_free_make_key_dbt (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 65, in test05_double_free_make_key_dbt db.DB_CREATE | db.DB_THREAD) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== ERROR: test06_key_with_null_bytes (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 77, in test06_key_with_null_bytes db1.open(self.filename, None, db.DB_HASH, db.DB_CREATE) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== ERROR: test07_DB_set_flags_persists (bsddb.test.test_misc.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_misc.py", line 101, in test07_DB_set_flags_persists db1.open(self.filename, db.DB_HASH, db.DB_CREATE) DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit (100) exceeded') ====================================================================== FAIL: test01_basic_replication (bsddb.test.test_replication.DBReplicationManager) ---------------------------------------------------------------------- Traceback (most recent call last): File "E:\cygwin\home\db3l\buildarea\trunk.bolen-windows\build\lib\bsddb\test\test_replication.py", line 122, in test01_basic_replication self.assertTrue(time.time() 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/263 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 compile sincerely, -The Buildbot From python-checkins at python.org Wed Sep 3 23:48:20 2008 From: python-checkins at python.org (benjamin.peterson) Date: Wed, 3 Sep 2008 23:48:20 +0200 (CEST) Subject: [Python-checkins] r66190 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080903214820.CBDF11E4015@bag.python.org> Author: benjamin.peterson Date: Wed Sep 3 23:48:20 2008 New Revision: 66190 Log: 3.0 still has the old threading names 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 Wed Sep 3 23:48:20 2008 @@ -2523,14 +2523,14 @@ (Contributed by Dwayne Bailey; :issue:`1581073`.) -* The :mod:`threading` module API is being changed in Python 3.0 to - use properties such as :attr:`daemon` instead of :meth:`setDaemon` - and :meth:`isDaemon` methods, and some methods have been renamed to - use underscores instead of camel-case; for example, the - :meth:`activeCount` method is renamed to :meth:`active_count`. The - 2.6 version of the module supports the same properties and renamed - methods, but doesn't remove the old methods. (Carried out by - several people, most notably Benjamin Peterson.) +* The :mod:`threading` module API is being changed to use properties such as + :attr:`daemon` instead of :meth:`setDaemon` and :meth:`isDaemon` methods, and + some methods have been renamed to use underscores instead of camel-case; for + example, the :meth:`activeCount` method is renamed to :meth:`active_count`. + The 2.6 version of the module supports the same properties and renamed + methods, but doesn't remove the old methods. 3.0 also fully supports both + APIs, and a date for the deprecation of the old APIs has not been set yet. + (Carried out by several people, most notably Benjamin Peterson.) The :mod:`threading` module's :class:`Thread` objects gained an :attr:`ident` property that returns the thread's From buildbot at python.org Wed Sep 3 23:55:08 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 21:55:08 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080903215508.E42A01E4009@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/493 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: christian.heimes,jesus.cea BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_posix ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 00:00:52 2008 From: python-checkins at python.org (benjamin.peterson) Date: Thu, 4 Sep 2008 00:00:52 +0200 (CEST) Subject: [Python-checkins] r66191 - in sandbox/trunk/2to3/lib2to3: Grammar.txt tests/data/py2_test_grammar.py tests/data/py3_test_grammar.py Message-ID: <20080903220052.C9B721E4014@bag.python.org> Author: benjamin.peterson Date: Thu Sep 4 00:00:52 2008 New Revision: 66191 Log: update the Grammar file after recent syntax changes Modified: sandbox/trunk/2to3/lib2to3/Grammar.txt sandbox/trunk/2to3/lib2to3/tests/data/py2_test_grammar.py sandbox/trunk/2to3/lib2to3/tests/data/py3_test_grammar.py Modified: sandbox/trunk/2to3/lib2to3/Grammar.txt ============================================================================== --- sandbox/trunk/2to3/lib2to3/Grammar.txt (original) +++ sandbox/trunk/2to3/lib2to3/Grammar.txt Thu Sep 4 00:00:52 2008 @@ -138,7 +138,9 @@ classdef: 'class' NAME ['(' [arglist] ')'] ':' suite -arglist: (argument ',')* (argument [',']| '*' test [',' '**' test] | '**' test) +arglist: (argument ',')* (argument [','] + |'*' test (',' argument)* [',' '**' test] + |'**' test) argument: test [comp_for] | test '=' test # Really [keyword '='] test comp_iter: comp_for | comp_if Modified: sandbox/trunk/2to3/lib2to3/tests/data/py2_test_grammar.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/data/py2_test_grammar.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/data/py2_test_grammar.py Thu Sep 4 00:00:52 2008 @@ -1,4 +1,4 @@ -# Python 2's Lib/test/test_grammar.py (r54061) +# Python 2's Lib/test/test_grammar.py (r66189) # Python test set -- part 1, grammar. # This just tests whether the parser accepts them all. @@ -32,6 +32,8 @@ self.assertEquals(0xff, 255) self.assertEquals(0377, 255) self.assertEquals(2147483647, 017777777777) + # "0x" is not a valid literal + self.assertRaises(SyntaxError, eval, "0x") from sys import maxint if maxint == 2147483647: self.assertEquals(-2147483647-1, -020000000000) @@ -282,6 +284,18 @@ def d32v((x,)): pass d32v((1,)) + # keyword arguments after *arglist + def f(*args, **kwargs): + return args, kwargs + self.assertEquals(f(1, x=2, *[3, 4], y=5), ((1, 3, 4), + {'x':2, 'y':5})) + self.assertRaises(SyntaxError, eval, "f(1, *(2,3), 4)") + self.assertRaises(SyntaxError, eval, "f(1, x=2, *(3,4), x=5)") + + # Check ast errors in *args and *kwargs + check_syntax_error(self, "f(*g(1=2))") + check_syntax_error(self, "f(**g(1=2))") + def testLambdef(self): ### lambdef: 'lambda' [varargslist] ':' test l1 = lambda : 0 @@ -295,6 +309,7 @@ self.assertEquals(l5(1, 2), 5) self.assertEquals(l5(1, 2, 3), 6) check_syntax_error(self, "lambda x: x = 2") + check_syntax_error(self, "lambda (None,): None") ### stmt: simple_stmt | compound_stmt # Tested below @@ -572,6 +587,15 @@ while 0: pass else: pass + # Issue1920: "while 0" is optimized away, + # ensure that the "else" clause is still present. + x = 0 + while 0: + x = 1 + else: + x = 2 + self.assertEquals(x, 2) + def testFor(self): # 'for' exprlist 'in' exprlist ':' suite ['else' ':' suite] for i in 1, 2, 3: pass @@ -602,7 +626,7 @@ def testTry(self): ### try_stmt: 'try' ':' suite (except_clause ':' suite)+ ['else' ':' suite] ### | 'try' ':' suite 'finally' ':' suite - ### except_clause: 'except' [expr [',' expr]] + ### except_clause: 'except' [expr [('as' | ',') expr]] try: 1/0 except ZeroDivisionError: @@ -611,7 +635,7 @@ pass try: 1/0 except EOFError: pass - except TypeError, msg: pass + except TypeError as msg: pass except RuntimeError, msg: pass except: pass else: pass @@ -770,6 +794,16 @@ def meth1(self): pass def meth2(self, arg): pass def meth3(self, a1, a2): pass + # decorator: '@' dotted_name [ '(' [arglist] ')' ] NEWLINE + # decorators: decorator+ + # decorated: decorators (classdef | funcdef) + def class_decorator(x): + x.decorated = True + return x + @class_decorator + class G: + pass + self.assertEqual(G.decorated, True) def testListcomps(self): # list comprehension tests Modified: sandbox/trunk/2to3/lib2to3/tests/data/py3_test_grammar.py ============================================================================== --- sandbox/trunk/2to3/lib2to3/tests/data/py3_test_grammar.py (original) +++ sandbox/trunk/2to3/lib2to3/tests/data/py3_test_grammar.py Thu Sep 4 00:00:52 2008 @@ -8,7 +8,7 @@ # regression test, the filterwarnings() call has been added to # regrtest.py. -from test.test_support import run_unittest, check_syntax_error +from test.support import run_unittest, check_syntax_error import unittest import sys # testing import * @@ -32,8 +32,10 @@ self.assertEquals(0o377, 255) self.assertEquals(2147483647, 0o17777777777) self.assertEquals(0b1001, 9) - from sys import maxint - if maxint == 2147483647: + # "0x" is not a valid literal + self.assertRaises(SyntaxError, eval, "0x") + from sys import maxsize + if maxsize == 2147483647: self.assertEquals(-2147483647-1, -0o20000000000) # XXX -2147483648 self.assert_(0o37777777777 > 0) @@ -45,7 +47,7 @@ x = eval(s) except OverflowError: self.fail("OverflowError on huge integer literal %r" % s) - elif maxint == 9223372036854775807: + elif maxsize == 9223372036854775807: self.assertEquals(-9223372036854775807-1, -0o1000000000000000000000) self.assert_(0o1777777777777777777777 > 0) self.assert_(0xffffffffffffffff > 0) @@ -58,7 +60,7 @@ except OverflowError: self.fail("OverflowError on huge integer literal %r" % s) else: - self.fail('Weird maxint value %r' % maxint) + self.fail('Weird maxsize value %r' % maxsize) def testLongIntegers(self): x = 0 @@ -263,6 +265,14 @@ d22v(*(1, 2, 3, 4)) d22v(1, 2, *(3, 4, 5)) d22v(1, *(2, 3), **{'d': 4}) + + # keyword argument type tests + try: + str('x', **{b'foo':1 }) + except TypeError: + pass + else: + self.fail('Bytes should not work as keyword argument names') # keyword only argument tests def pos0key1(*, key): return key pos0key1(key=100) @@ -274,6 +284,14 @@ pos2key2dict(1,2,k2=100,tokwarg1=100,tokwarg2=200) pos2key2dict(1,2,tokwarg1=100,tokwarg2=200, k2=100) + # keyword arguments after *arglist + def f(*args, **kwargs): + return args, kwargs + self.assertEquals(f(1, x=2, *[3, 4], y=5), ((1, 3, 4), + {'x':2, 'y':5})) + self.assertRaises(SyntaxError, eval, "f(1, *(2,3), 4)") + self.assertRaises(SyntaxError, eval, "f(1, x=2, *(3,4), x=5)") + # argument annotation tests def f(x) -> list: pass self.assertEquals(f.__annotations__, {'return': list}) @@ -308,6 +326,10 @@ def f(*, k=1): return closure def f() -> int: return closure + # Check ast errors in *args and *kwargs + check_syntax_error(self, "f(*g(1=2))") + check_syntax_error(self, "f(**g(1=2))") + def testLambdef(self): ### lambdef: 'lambda' [varargslist] ':' test l1 = lambda : 0 @@ -321,6 +343,7 @@ self.assertEquals(l5(1, 2), 5) self.assertEquals(l5(1, 2, 3), 6) check_syntax_error(self, "lambda x: x = 2") + check_syntax_error(self, "lambda (None,): None") l6 = lambda x, y, *, k=20: x+y+k self.assertEquals(l6(1,2), 1+2+20) self.assertEquals(l6(1,2,k=10), 1+2+10) @@ -438,7 +461,7 @@ def testRaise(self): # 'raise' test [',' test] - try: raise RuntimeError, 'just testing' + try: raise RuntimeError('just testing') except RuntimeError: pass try: raise KeyboardInterrupt except KeyboardInterrupt: pass @@ -498,6 +521,15 @@ while 0: pass else: pass + # Issue1920: "while 0" is optimized away, + # ensure that the "else" clause is still present. + x = 0 + while 0: + x = 1 + else: + x = 2 + self.assertEquals(x, 2) + def testFor(self): # 'for' exprlist 'in' exprlist ':' suite ['else' ':' suite] for i in 1, 2, 3: pass From python-checkins at python.org Thu Sep 4 00:07:12 2008 From: python-checkins at python.org (jesus.cea) Date: Thu, 4 Sep 2008 00:07:12 +0200 (CEST) Subject: [Python-checkins] r66192 - in python/trunk: Lib/bsddb/test/test_all.py Modules/bsddb.h Message-ID: <20080903220712.329201E4018@bag.python.org> Author: jesus.cea Date: Thu Sep 4 00:07:11 2008 New Revision: 66192 Log: Python3.0 bsddb testsuite compatibility improvements Modified: python/trunk/Lib/bsddb/test/test_all.py python/trunk/Modules/bsddb.h Modified: python/trunk/Lib/bsddb/test/test_all.py ============================================================================== --- python/trunk/Lib/bsddb/test/test_all.py (original) +++ python/trunk/Lib/bsddb/test/test_all.py Thu Sep 4 00:07:11 2008 @@ -67,6 +67,10 @@ v = self._dbcursor.next_dup() return self._fix(v) + def next_nodup(self) : + v = self._dbcursor.next_nodup() + return self._fix(v) + def put(self, key, value, flags=0, dlen=-1, doff=-1) : if isinstance(key, str) : key = bytes(key, charset) Modified: python/trunk/Modules/bsddb.h ============================================================================== --- python/trunk/Modules/bsddb.h (original) +++ python/trunk/Modules/bsddb.h Thu Sep 4 00:07:11 2008 @@ -105,7 +105,7 @@ #error "eek! DBVER can't handle minor versions > 9" #endif -#define PY_BSDDB_VERSION "4.7.3pre4" +#define PY_BSDDB_VERSION "4.7.3pre5" /* Python object definitions */ From python-checkins at python.org Thu Sep 4 00:35:51 2008 From: python-checkins at python.org (facundo.batista) Date: Thu, 4 Sep 2008 00:35:51 +0200 (CEST) Subject: [Python-checkins] r66196 - in python/trunk: Doc/library/cgi.rst Doc/library/urllib.rst Doc/library/urlparse.rst Lib/cgi.py Lib/test/test_cgi.py Lib/test/test_urlparse.py Lib/urlparse.py Misc/NEWS Message-ID: <20080903223551.2BCCE1E4012@bag.python.org> Author: facundo.batista Date: Thu Sep 4 00:35:50 2008 New Revision: 66196 Log: Issue 600362: Relocated parse_qs() and parse_qsl(), from the cgi module to the urlparse one. Added a PendingDeprecationWarning in the old module, it will be deprecated in the future. Docs and tests updated. Modified: python/trunk/Doc/library/cgi.rst python/trunk/Doc/library/urllib.rst python/trunk/Doc/library/urlparse.rst python/trunk/Lib/cgi.py python/trunk/Lib/test/test_cgi.py python/trunk/Lib/test/test_urlparse.py python/trunk/Lib/urlparse.py python/trunk/Misc/NEWS Modified: python/trunk/Doc/library/cgi.rst ============================================================================== --- python/trunk/Doc/library/cgi.rst (original) +++ python/trunk/Doc/library/cgi.rst Thu Sep 4 00:35:50 2008 @@ -282,49 +282,18 @@ Parse a query in the environment or from a file (the file defaults to ``sys.stdin``). The *keep_blank_values* and *strict_parsing* parameters are - passed to :func:`parse_qs` unchanged. + passed to :func:`urlparse.parse_qs` unchanged. .. function:: parse_qs(qs[, keep_blank_values[, strict_parsing]]) - Parse a query string given as a string argument (data of type - :mimetype:`application/x-www-form-urlencoded`). Data are returned as a - dictionary. The dictionary keys are the unique query variable names and the - values are lists of values for each name. - - The optional argument *keep_blank_values* is a flag indicating whether blank - values in URL encoded queries should be treated as blank strings. A true value - indicates that blanks should be retained as blank strings. The default false - value indicates that blank values are to be ignored and treated as if they were - not included. - - The optional argument *strict_parsing* is a flag indicating what to do with - parsing errors. If false (the default), errors are silently ignored. If true, - errors raise a :exc:`ValueError` exception. - - Use the :func:`urllib.urlencode` function to convert such dictionaries into - query strings. - + This function is deprecated in this module. Use :func:`urlparse.parse_qs` + instead. It is maintained here only for backward compatiblity. .. function:: parse_qsl(qs[, keep_blank_values[, strict_parsing]]) - Parse a query string given as a string argument (data of type - :mimetype:`application/x-www-form-urlencoded`). Data are returned as a list of - name, value pairs. - - The optional argument *keep_blank_values* is a flag indicating whether blank - values in URL encoded queries should be treated as blank strings. A true value - indicates that blanks should be retained as blank strings. The default false - value indicates that blank values are to be ignored and treated as if they were - not included. - - The optional argument *strict_parsing* is a flag indicating what to do with - parsing errors. If false (the default), errors are silently ignored. If true, - errors raise a :exc:`ValueError` exception. - - Use the :func:`urllib.urlencode` function to convert such lists of pairs into - query strings. - + This function is deprecated in this module. Use :func:`urlparse.parse_qsl` + instead. It is maintained here only for backward compatiblity. .. function:: parse_multipart(fp, pdict) @@ -332,7 +301,7 @@ Arguments are *fp* for the input file and *pdict* for a dictionary containing other parameters in the :mailheader:`Content-Type` header. - Returns a dictionary just like :func:`parse_qs` keys are the field names, each + Returns a dictionary just like :func:`urlparse.parse_qs` keys are the field names, each value is a list of values for that field. This is easy to use but not much good if you are expecting megabytes to be uploaded --- in that case, use the :class:`FieldStorage` class instead which is much more flexible. Modified: python/trunk/Doc/library/urllib.rst ============================================================================== --- python/trunk/Doc/library/urllib.rst (original) +++ python/trunk/Doc/library/urllib.rst Thu Sep 4 00:35:50 2008 @@ -242,7 +242,7 @@ of the sequence. When a sequence of two-element tuples is used as the *query* argument, the first element of each tuple is a key and the second is a value. The order of parameters in the encoded string will match the order of parameter - tuples in the sequence. The :mod:`cgi` module provides the functions + tuples in the sequence. The :mod:`urlparse` module provides the functions :func:`parse_qs` and :func:`parse_qsl` which are used to parse query strings into Python data structures. Modified: python/trunk/Doc/library/urlparse.rst ============================================================================== --- python/trunk/Doc/library/urlparse.rst (original) +++ python/trunk/Doc/library/urlparse.rst Thu Sep 4 00:35:50 2008 @@ -101,6 +101,45 @@ .. versionchanged:: 2.5 Added attributes to return value. +.. function:: parse_qs(qs[, keep_blank_values[, strict_parsing]]) + + Parse a query string given as a string argument (data of type + :mimetype:`application/x-www-form-urlencoded`). Data are returned as a + dictionary. The dictionary keys are the unique query variable names and the + values are lists of values for each name. + + The optional argument *keep_blank_values* is a flag indicating whether blank + values in URL encoded queries should be treated as blank strings. A true value + indicates that blanks should be retained as blank strings. The default false + value indicates that blank values are to be ignored and treated as if they were + not included. + + The optional argument *strict_parsing* is a flag indicating what to do with + parsing errors. If false (the default), errors are silently ignored. If true, + errors raise a :exc:`ValueError` exception. + + Use the :func:`urllib.urlencode` function to convert such dictionaries into + query strings. + + +.. function:: parse_qsl(qs[, keep_blank_values[, strict_parsing]]) + + Parse a query string given as a string argument (data of type + :mimetype:`application/x-www-form-urlencoded`). Data are returned as a list of + name, value pairs. + + The optional argument *keep_blank_values* is a flag indicating whether blank + values in URL encoded queries should be treated as blank strings. A true value + indicates that blanks should be retained as blank strings. The default false + value indicates that blank values are to be ignored and treated as if they were + not included. + + The optional argument *strict_parsing* is a flag indicating what to do with + parsing errors. If false (the default), errors are silently ignored. If true, + errors raise a :exc:`ValueError` exception. + + Use the :func:`urllib.urlencode` function to convert such lists of pairs into + query strings. .. function:: urlunparse(parts) Modified: python/trunk/Lib/cgi.py ============================================================================== --- python/trunk/Lib/cgi.py (original) +++ python/trunk/Lib/cgi.py Thu Sep 4 00:35:50 2008 @@ -39,7 +39,9 @@ import os import urllib import UserDict -from warnings import filterwarnings, catch_warnings +import urlparse + +from warnings import filterwarnings, catch_warnings, warn with catch_warnings(): if sys.py3kwarning: filterwarnings("ignore", ".*mimetools has been removed", @@ -173,72 +175,21 @@ return parse_qs(qs, keep_blank_values, strict_parsing) -def parse_qs(qs, keep_blank_values=0, strict_parsing=0): - """Parse a query given as a string argument. +# parse query string function called from urlparse, +# this is done in order to maintain backward compatiblity. - Arguments: +def parse_qs(qs, keep_blank_values=0, strict_parsing=0): + """Parse a query given as a string argument.""" + warn("cgi.parse_qs is deprecated, use urlparse.parse_qs \ + instead",PendingDeprecationWarning) + return urlparse.parse_qs(qs, keep_blank_values, strict_parsing) - qs: URL-encoded query string to be parsed - - keep_blank_values: flag indicating whether blank values in - URL encoded queries should be treated as blank strings. - A true value indicates that blanks should be retained as - blank strings. The default false value indicates that - blank values are to be ignored and treated as if they were - not included. - - strict_parsing: flag indicating what to do with parsing errors. - If false (the default), errors are silently ignored. - If true, errors raise a ValueError exception. - """ - dict = {} - for name, value in parse_qsl(qs, keep_blank_values, strict_parsing): - if name in dict: - dict[name].append(value) - else: - dict[name] = [value] - return dict def parse_qsl(qs, keep_blank_values=0, strict_parsing=0): - """Parse a query given as a string argument. - - Arguments: - - qs: URL-encoded query string to be parsed - - keep_blank_values: flag indicating whether blank values in - URL encoded queries should be treated as blank strings. A - true value indicates that blanks should be retained as blank - strings. The default false value indicates that blank values - are to be ignored and treated as if they were not included. - - strict_parsing: flag indicating what to do with parsing errors. If - false (the default), errors are silently ignored. If true, - errors raise a ValueError exception. - - Returns a list, as G-d intended. - """ - pairs = [s2 for s1 in qs.split('&') for s2 in s1.split(';')] - r = [] - for name_value in pairs: - if not name_value and not strict_parsing: - continue - nv = name_value.split('=', 1) - if len(nv) != 2: - if strict_parsing: - raise ValueError, "bad query field: %r" % (name_value,) - # Handle case of a control-name with no equal sign - if keep_blank_values: - nv.append('') - else: - continue - if len(nv[1]) or keep_blank_values: - name = urllib.unquote(nv[0].replace('+', ' ')) - value = urllib.unquote(nv[1].replace('+', ' ')) - r.append((name, value)) - - return r - + """Parse a query given as a string argument.""" + warn("cgi.parse_qsl is deprecated, use urlparse.parse_qsl instead", + PendingDeprecationWarning) + return urlparse.parse_qs(qs, keep_blank_values, strict_parsing) def parse_multipart(fp, pdict): """Parse multipart input. @@ -645,8 +596,8 @@ if self.qs_on_post: qs += '&' + self.qs_on_post self.list = list = [] - for key, value in parse_qsl(qs, self.keep_blank_values, - self.strict_parsing): + for key, value in urlparse.parse_qsl(qs, self.keep_blank_values, + self.strict_parsing): list.append(MiniFieldStorage(key, value)) self.skip_lines() @@ -659,8 +610,8 @@ raise ValueError, 'Invalid boundary in multipart form: %r' % (ib,) self.list = [] if self.qs_on_post: - for key, value in parse_qsl(self.qs_on_post, self.keep_blank_values, - self.strict_parsing): + for key, value in urlparse.parse_qsl(self.qs_on_post, + self.keep_blank_values, self.strict_parsing): self.list.append(MiniFieldStorage(key, value)) FieldStorageClass = None Modified: python/trunk/Lib/test/test_cgi.py ============================================================================== --- python/trunk/Lib/test/test_cgi.py (original) +++ python/trunk/Lib/test/test_cgi.py Thu Sep 4 00:35:50 2008 @@ -55,23 +55,6 @@ except StandardError, err: return ComparableException(err) -# A list of test cases. Each test case is a a two-tuple that contains -# a string with the query and a dictionary with the expected result. - -parse_qsl_test_cases = [ - ("", []), - ("&", []), - ("&&", []), - ("=", [('', '')]), - ("=a", [('', 'a')]), - ("a", [('a', '')]), - ("a=", [('a', '')]), - ("a=", [('a', '')]), - ("&a=b", [('a', 'b')]), - ("a=a+b&b=b+c", [('a', 'a b'), ('b', 'b c')]), - ("a=1&a=2", [('a', '1'), ('a', '2')]), -] - parse_strict_test_cases = [ ("", ValueError("bad query field: ''")), ("&", ValueError("bad query field: ''")), @@ -143,11 +126,6 @@ class CgiTests(unittest.TestCase): - def test_qsl(self): - for orig, expect in parse_qsl_test_cases: - result = cgi.parse_qsl(orig, keep_blank_values=True) - self.assertEqual(result, expect, "Error parsing %s" % repr(orig)) - def test_strict(self): for orig, expect in parse_strict_test_cases: # Test basic parsing Modified: python/trunk/Lib/test/test_urlparse.py ============================================================================== --- python/trunk/Lib/test/test_urlparse.py (original) +++ python/trunk/Lib/test/test_urlparse.py Thu Sep 4 00:35:50 2008 @@ -8,6 +8,23 @@ RFC2396_BASE = "http://a/b/c/d;p?q" RFC3986_BASE = "http://a/b/c/d;p?q" +# A list of test cases. Each test case is a a two-tuple that contains +# a string with the query and a dictionary with the expected result. + +parse_qsl_test_cases = [ + ("", []), + ("&", []), + ("&&", []), + ("=", [('', '')]), + ("=a", [('', 'a')]), + ("a", [('a', '')]), + ("a=", [('a', '')]), + ("a=", [('a', '')]), + ("&a=b", [('a', 'b')]), + ("a=a+b&b=b+c", [('a', 'a b'), ('b', 'b c')]), + ("a=1&a=2", [('a', '1'), ('a', '2')]), +] + class UrlParseTestCase(unittest.TestCase): def checkRoundtrips(self, url, parsed, split): @@ -61,6 +78,11 @@ self.assertEqual(result3.hostname, result.hostname) self.assertEqual(result3.port, result.port) + def test_qsl(self): + for orig, expect in parse_qsl_test_cases: + result = urlparse.parse_qsl(orig, keep_blank_values=True) + self.assertEqual(result, expect, "Error parsing %s" % repr(orig)) + def test_roundtrips(self): testcases = [ ('file:///tmp/junk.txt', Modified: python/trunk/Lib/urlparse.py ============================================================================== --- python/trunk/Lib/urlparse.py (original) +++ python/trunk/Lib/urlparse.py Thu Sep 4 00:35:50 2008 @@ -5,7 +5,7 @@ """ __all__ = ["urlparse", "urlunparse", "urljoin", "urldefrag", - "urlsplit", "urlunsplit"] + "urlsplit", "urlunsplit", "parse_qs", "parse_qsl"] # A classification of schemes ('' means apply by default) uses_relative = ['ftp', 'http', 'gopher', 'nntp', 'imap', @@ -267,6 +267,92 @@ else: return url, '' +# unquote method for parse_qs and parse_qsl +# Cannot use directly from urllib as it would create circular reference. +# urllib uses urlparse methods ( urljoin) + +_hextochr = dict(('%02x' % i, chr(i)) for i in range(256)) +_hextochr.update(('%02X' % i, chr(i)) for i in range(256)) + +def unquote(s): + """unquote('abc%20def') -> 'abc def'.""" + res = s.split('%') + for i in xrange(1, len(res)): + item = res[i] + try: + res[i] = _hextochr[item[:2]] + item[2:] + except KeyError: + res[i] = '%' + item + except UnicodeDecodeError: + res[i] = unichr(int(item[:2], 16)) + item[2:] + return "".join(res) + +def parse_qs(qs, keep_blank_values=0, strict_parsing=0): + """Parse a query given as a string argument. + + Arguments: + + qs: URL-encoded query string to be parsed + + keep_blank_values: flag indicating whether blank values in + URL encoded queries should be treated as blank strings. + A true value indicates that blanks should be retained as + blank strings. The default false value indicates that + blank values are to be ignored and treated as if they were + not included. + + strict_parsing: flag indicating what to do with parsing errors. + If false (the default), errors are silently ignored. + If true, errors raise a ValueError exception. + """ + dict = {} + for name, value in parse_qsl(qs, keep_blank_values, strict_parsing): + if name in dict: + dict[name].append(value) + else: + dict[name] = [value] + return dict + +def parse_qsl(qs, keep_blank_values=0, strict_parsing=0): + """Parse a query given as a string argument. + + Arguments: + + qs: URL-encoded query string to be parsed + + keep_blank_values: flag indicating whether blank values in + URL encoded queries should be treated as blank strings. A + true value indicates that blanks should be retained as blank + strings. The default false value indicates that blank values + are to be ignored and treated as if they were not included. + + strict_parsing: flag indicating what to do with parsing errors. If + false (the default), errors are silently ignored. If true, + errors raise a ValueError exception. + + Returns a list, as G-d intended. + """ + pairs = [s2 for s1 in qs.split('&') for s2 in s1.split(';')] + r = [] + for name_value in pairs: + if not name_value and not strict_parsing: + continue + nv = name_value.split('=', 1) + if len(nv) != 2: + if strict_parsing: + raise ValueError, "bad query field: %r" % (name_value,) + # Handle case of a control-name with no equal sign + if keep_blank_values: + nv.append('') + else: + continue + if len(nv[1]) or keep_blank_values: + name = unquote(nv[0].replace('+', ' ')) + value = unquote(nv[1].replace('+', ' ')) + r.append((name, value)) + + return r + test_input = """ http://a/b/c/d Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Thu Sep 4 00:35:50 2008 @@ -56,6 +56,10 @@ Library ------- +- Issue 600362: Relocated parse_qs() and parse_qsl(), from the cgi module + to the urlparse one. Added a PendingDeprecationWarning in the old + module, it will be deprecated in the future. + - Issue #2562: Fix distutils PKG-INFO writing logic to allow having non-ascii characters and Unicode in setup.py meta-data. From buildbot at python.org Thu Sep 4 00:38:05 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 22:38:05 +0000 Subject: [Python-checkins] buildbot failure in i386 Ubuntu 3.0 Message-ID: <20080903223805.A27341E4009@bag.python.org> The Buildbot has detected a new failure of i386 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/i386%20Ubuntu%203.0/builds/407 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-i386 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 Thu Sep 4 00:45:11 2008 From: python-checkins at python.org (brett.cannon) Date: Thu, 4 Sep 2008 00:45:11 +0200 (CEST) Subject: [Python-checkins] r66197 - in python/trunk: Lib/test/test_py3kwarn.py Misc/NEWS Message-ID: <20080903224511.C59521E4014@bag.python.org> Author: brett.cannon Date: Thu Sep 4 00:45:11 2008 New Revision: 66197 Log: test_py3kwarn had been overlooked when test.test_support.catch_warning() was re-implemented to use warnings.catch_warnings() and had its API improved. Closes issue #3768. Code review by Benjamin Peterson. Modified: python/trunk/Lib/test/test_py3kwarn.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/test/test_py3kwarn.py ============================================================================== --- python/trunk/Lib/test/test_py3kwarn.py (original) +++ python/trunk/Lib/test/test_py3kwarn.py Thu Sep 4 00:45:11 2008 @@ -220,28 +220,28 @@ # With object as the base class class WarnOnlyCmp(object): def __cmp__(self, other): pass - self.assertEqual(len(w.warnings), 1) + self.assertEqual(len(w), 1) self.assertWarning(None, w, "Overriding __cmp__ blocks inheritance of __hash__ in 3.x") w.reset() class WarnOnlyEq(object): def __eq__(self, other): pass - self.assertEqual(len(w.warnings), 1) + self.assertEqual(len(w), 1) self.assertWarning(None, w, "Overriding __eq__ blocks inheritance of __hash__ in 3.x") w.reset() class WarnCmpAndEq(object): def __cmp__(self, other): pass def __eq__(self, other): pass - self.assertEqual(len(w.warnings), 2) - self.assertWarning(None, w.warnings[-2], + self.assertEqual(len(w), 2) + self.assertWarning(None, w[-2], "Overriding __cmp__ blocks inheritance of __hash__ in 3.x") self.assertWarning(None, w, "Overriding __eq__ blocks inheritance of __hash__ in 3.x") w.reset() class NoWarningOnlyHash(object): def __hash__(self): pass - self.assertEqual(len(w.warnings), 0) + self.assertEqual(len(w), 0) # With an intermediate class in the heirarchy class DefinesAllThree(object): def __cmp__(self, other): pass @@ -249,28 +249,28 @@ def __hash__(self): pass class WarnOnlyCmp(DefinesAllThree): def __cmp__(self, other): pass - self.assertEqual(len(w.warnings), 1) + self.assertEqual(len(w), 1) self.assertWarning(None, w, "Overriding __cmp__ blocks inheritance of __hash__ in 3.x") w.reset() class WarnOnlyEq(DefinesAllThree): def __eq__(self, other): pass - self.assertEqual(len(w.warnings), 1) + self.assertEqual(len(w), 1) self.assertWarning(None, w, "Overriding __eq__ blocks inheritance of __hash__ in 3.x") w.reset() class WarnCmpAndEq(DefinesAllThree): def __cmp__(self, other): pass def __eq__(self, other): pass - self.assertEqual(len(w.warnings), 2) - self.assertWarning(None, w.warnings[-2], + self.assertEqual(len(w), 2) + self.assertWarning(None, w[-2], "Overriding __cmp__ blocks inheritance of __hash__ in 3.x") self.assertWarning(None, w, "Overriding __eq__ blocks inheritance of __hash__ in 3.x") w.reset() class NoWarningOnlyHash(DefinesAllThree): def __hash__(self): pass - self.assertEqual(len(w.warnings), 0) + self.assertEqual(len(w), 0) class TestStdlibRemovals(unittest.TestCase): Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Thu Sep 4 00:45:11 2008 @@ -100,6 +100,11 @@ - Issue #3643: Added a few more checks to _testcapi to prevent segfaults by exploitation of poor argument checking. +Tests +----- + +- Issue 3768: Move test_py3kwarn over to the new API for catch_warnings(). + What's New in Python 2.6 beta 3? ================================ From buildbot at python.org Thu Sep 4 00:51:40 2008 From: buildbot at python.org (buildbot at python.org) Date: Wed, 03 Sep 2008 22:51:40 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080903225140.569DC1E400B@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/265 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 buildbot at python.org Thu Sep 4 02:02:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 00:02:12 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080904000212.3456A1E4009@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: benjamin.peterson,brett.cannon,facundo.batista BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 02:09:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 00:09:12 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904000912.884641E4009@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/495 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: benjamin.peterson,brett.cannon,facundo.batista BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_doctest test_posix ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 02:10:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 00:10:49 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080904001049.564511E4009@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/1469 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,brett.cannon,facundo.batista BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 04:53:59 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 02:53:59 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904025359.7C8801E4009@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/497 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: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 05:25:54 2008 From: python-checkins at python.org (brett.cannon) Date: Thu, 4 Sep 2008 05:25:54 +0200 (CEST) Subject: [Python-checkins] r66206 - peps/trunk/pep-3108.txt Message-ID: <20080904032554.7FFCA1E4009@bag.python.org> Author: brett.cannon Date: Thu Sep 4 05:25:53 2008 New Revision: 66206 Log: Clarify reasonaing behind removing bsddb. Modified: peps/trunk/pep-3108.txt Modified: peps/trunk/pep-3108.txt ============================================================================== --- peps/trunk/pep-3108.txt (original) +++ peps/trunk/pep-3108.txt Thu Sep 4 05:25:53 2008 @@ -653,10 +653,12 @@ * bsddb3 - + Already externally maintained at + + Externally maintained at http://www.jcea.es/programacion/pybsddb.htm . - + Constant testing instability. - + Has consistently not been forward-ported to Python 3.0. + + Consistent testing instability. + + Berkeley DB follows a different release schedule than Python, + leading to the bindings not necessarily being in sync with what is + available. Modules to Rename From buildbot at python.org Thu Sep 4 05:28:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 03:28:36 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian 3.0 Message-ID: <20080904032836.3B62B1E4009@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%203.0/builds/1590 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 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_smtplib make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 06:59:39 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 04:59:39 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904045939.6CBC31E4009@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/499 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: mark.hammond BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 09:31:22 2008 From: python-checkins at python.org (vinay.sajip) Date: Thu, 4 Sep 2008 09:31:22 +0200 (CEST) Subject: [Python-checkins] r66211 - in python/trunk: Lib/logging/__init__.py Lib/test/test_logging.py Misc/NEWS Message-ID: <20080904073122.5249C1E4009@bag.python.org> Author: vinay.sajip Date: Thu Sep 4 09:31:21 2008 New Revision: 66211 Log: Issue #3772: Fixed regression problem in StreamHandler.emit(). Modified: python/trunk/Lib/logging/__init__.py python/trunk/Lib/test/test_logging.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/logging/__init__.py ============================================================================== --- python/trunk/Lib/logging/__init__.py (original) +++ python/trunk/Lib/logging/__init__.py Thu Sep 4 09:31:21 2008 @@ -757,7 +757,7 @@ self.stream.write(fs % msg) else: try: - if hasattr(self.stream, 'encoding'): + if getattr(self.stream, 'encoding', None) is not None: self.stream.write(fs % msg.encode(self.stream.encoding)) else: self.stream.write(fs % msg) Modified: python/trunk/Lib/test/test_logging.py ============================================================================== --- python/trunk/Lib/test/test_logging.py (original) +++ python/trunk/Lib/test/test_logging.py Thu Sep 4 09:31:21 2008 @@ -859,6 +859,31 @@ ('foo', 'DEBUG', '3'), ]) +class EncodingTest(BaseTest): + def test_encoding_plain_file(self): + # In Python 2.x, a plain file object is treated as having no encoding. + log = logging.getLogger("test") + fn = tempfile.mktemp(".log") + # the non-ascii data we write to the log. + data = "foo\x80" + try: + handler = logging.FileHandler(fn) + log.addHandler(handler) + try: + # write non-ascii data to the log. + log.warning(data) + finally: + log.removeHandler(handler) + handler.close() + # check we wrote exactly those bytes, ignoring trailing \n etc + f = open(fn) + try: + self.failUnlessEqual(f.read().rstrip(), data) + finally: + f.close() + finally: + if os.path.isfile(fn): + os.remove(fn) # Set the locale to the platform-dependent default. I have no idea # why the test does this, but in any case we save the current locale @@ -867,7 +892,8 @@ def test_main(): run_unittest(BuiltinLevelsTest, BasicFilterTest, CustomLevelsAndFiltersTest, MemoryHandlerTest, - ConfigFileTest, SocketHandlerTest, MemoryTest) + ConfigFileTest, SocketHandlerTest, MemoryTest, + EncodingTest) if __name__ == "__main__": test_main() Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Thu Sep 4 09:31:21 2008 @@ -56,6 +56,8 @@ Library ------- +- Issue #3772: Fixed regression problem in StreamHandler.emit(). + - Issue 600362: Relocated parse_qs() and parse_qsl(), from the cgi module to the urlparse one. Added a PendingDeprecationWarning in the old module, it will be deprecated in the future. @@ -87,7 +89,7 @@ - Issue #3708: os.urandom no longer goes into an infinite loop when passed a non-integer floating point number. -- Issue #3110: multiprocessing fails to compiel on solaris 10 due to missing +- Issue #3110: multiprocessing fails to compiel on solaris 10 due to missing SEM_VALUE_MAX. Extension Modules From buildbot at python.org Thu Sep 4 10:20:22 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 08:20:22 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080904082022.8C7721E4009@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/1948 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: vinay.sajip BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 522, in __bootstrap_inner self.run() File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/threading.py", line 477, in run self.__target(*self.__args, **self.__kwargs) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/test/test_thread.py", line 306, in readerThread rec = dbutils.DeadlockWrap(c.next, max_retries=10) File "/home/pybot/buildarea/trunk.klose-debian-ppc/build/Lib/bsddb/dbutils.py", line 68, in DeadlockWrap return function(*_args, **_kwargs) DBLockDeadlockError: (-30994, 'DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock') 1 test failed: test_urllibnet make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 11:13:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 09:13:31 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080904091331.5AB1F1E4009@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/308 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: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_calendar make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 11:48:54 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 09:48:54 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904094854.B91B51E4009@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/501 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: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_distutils test_posix ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 13:15:14 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 13:15:14 +0200 (CEST) Subject: [Python-checkins] r66213 - python/trunk/Lib/platform.py Message-ID: <20080904111514.88F941E4021@bag.python.org> Author: hirokazu.yamamoto Date: Thu Sep 4 13:15:14 2008 New Revision: 66213 Log: Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. Modified: python/trunk/Lib/platform.py Modified: python/trunk/Lib/platform.py ============================================================================== --- python/trunk/Lib/platform.py (original) +++ python/trunk/Lib/platform.py Thu Sep 4 13:15:14 2008 @@ -933,7 +933,7 @@ filepath = _abspath(filepath) while os.path.islink(filepath): filepath = os.path.normpath( - os.path.join(filepath,os.readlink(filepath))) + os.path.join(os.path.dirname(filepath),os.readlink(filepath))) return filepath def _syscmd_uname(option,default=''): From python-checkins at python.org Thu Sep 4 13:21:28 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 13:21:28 +0200 (CEST) Subject: [Python-checkins] r66214 - python/branches/release25-maint/Lib/platform.py Message-ID: <20080904112128.8A48F1E4012@bag.python.org> Author: hirokazu.yamamoto Date: Thu Sep 4 13:21:28 2008 New Revision: 66214 Log: Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. Backport of r66213 Modified: python/branches/release25-maint/Lib/platform.py Modified: python/branches/release25-maint/Lib/platform.py ============================================================================== --- python/branches/release25-maint/Lib/platform.py (original) +++ python/branches/release25-maint/Lib/platform.py Thu Sep 4 13:21:28 2008 @@ -793,7 +793,7 @@ filepath = _abspath(filepath) while os.path.islink(filepath): filepath = os.path.normpath( - os.path.join(filepath,os.readlink(filepath))) + os.path.join(os.path.dirname(filepath),os.readlink(filepath))) return filepath def _syscmd_uname(option,default=''): From python-checkins at python.org Thu Sep 4 13:30:04 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 13:30:04 +0200 (CEST) Subject: [Python-checkins] r66213 - svn:log Message-ID: <20080904113005.061411E4009@bag.python.org> Author: hirokazu.yamamoto Revision: 66213 Property Name: svn:log Action: modified Property diff: --- old property value +++ new property value @@ -1 +1,2 @@ -Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. \ No newline at end of file +Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. +Reviewed by Amaury Forgeot d'Arc. \ No newline at end of file From python-checkins at python.org Thu Sep 4 13:31:12 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 13:31:12 +0200 (CEST) Subject: [Python-checkins] r66214 - svn:log Message-ID: <20080904113112.CCE491E401B@bag.python.org> Author: hirokazu.yamamoto Revision: 66214 Property Name: svn:log Action: modified Property diff: --- old property value +++ new property value @@ -1,2 +1,2 @@ Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. -Backport of r66213 \ No newline at end of file +Amaury Forgeot d'Arc (Backport of r66213) \ No newline at end of file From python-checkins at python.org Thu Sep 4 13:31:54 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 13:31:54 +0200 (CEST) Subject: [Python-checkins] r66214 - svn:log Message-ID: <20080904113154.1F90F1E401B@bag.python.org> Author: hirokazu.yamamoto Revision: 66214 Property Name: svn:log Action: modified Property diff: --- old property value +++ new property value @@ -1,2 +1,2 @@ Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. -Amaury Forgeot d'Arc (Backport of r66213) \ No newline at end of file +Reviewed Amaury Forgeot d'Arc (Backport of r66213) \ No newline at end of file From buildbot at python.org Thu Sep 4 14:16:03 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 12:16:03 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 trunk Message-ID: <20080904121603.72D231E4009@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/3895 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: psf-g4 Build Reason: Build Source Stamp: [branch trunk] HEAD Blamelist: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_asynchat make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 15:26:24 2008 From: python-checkins at python.org (andrew.kuchling) Date: Thu, 4 Sep 2008 15:26:24 +0200 (CEST) Subject: [Python-checkins] r66217 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080904132624.BFA8A1E401A@bag.python.org> Author: andrew.kuchling Date: Thu Sep 4 15:26:24 2008 New Revision: 66217 Log: #3671: various corrections and markup fixes noted by Kent Johnson 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 Thu Sep 4 15:26:24 2008 @@ -623,7 +623,7 @@ Two other classes, :class:`Pool` and :class:`Manager`, provide higher-level interfaces. :class:`Pool` will create a fixed number of worker processes, and requests can then be distributed to the workers -by calling :meth:`apply` or `apply_async` to add a single request, +by calling :meth:`apply` or :meth:`apply_async` to add a single request, and :meth:`map` or :meth:`map_async` to add a number of requests. The following code uses a :class:`Pool` to spread requests across 5 worker processes and retrieve a list of results:: @@ -977,10 +977,10 @@ bytearray(b'ABC') >>> b = bytearray(u'\u21ef\u3244', 'utf-8') >>> b - bytearray(b'\xe2\x87\xaf \xe3\x89\x84') + bytearray(b'\xe2\x87\xaf\xe3\x89\x84') >>> b[0] = '\xe3' >>> b - bytearray(b'\xe3\x87\xaf \xe3\x89\x84') + bytearray(b'\xe3\x87\xaf\xe3\x89\x84') >>> unicode(str(b), 'utf-8') u'\u31ef \u3244' @@ -1975,7 +1975,7 @@ * A new function in the :mod:`heapq` module, ``merge(iter1, iter2, ...)``, takes any number of iterables returning data in sorted - order, and returns a new iterator that returns the contents of all + order, and returns a new generator that returns the contents of all the iterators, also in sorted order. For example:: heapq.merge([1, 3, 5, 9], [2, 8, 16]) -> @@ -2030,7 +2030,7 @@ repeated *N* times. With a single iterable argument, *N*-tuples are returned:: - itertools.product([1,2], repeat=3)) -> + itertools.product([1,2], repeat=3) -> [(1, 1, 1), (1, 1, 2), (1, 2, 1), (1, 2, 2), (2, 1, 1), (2, 1, 2), (2, 2, 1), (2, 2, 2)] @@ -2178,7 +2178,7 @@ :const:`UF_APPEND` to indicate that data can only be appended to the file. (Contributed by M. Levinson.) - ``os.closerange(*low*, *high*)`` efficiently closes all file descriptors + ``os.closerange(low, high)`` efficiently closes all file descriptors from *low* to *high*, ignoring any errors and not including *high* itself. This function is now used by the :mod:`subprocess` module to make starting processes faster. (Contributed by Georg Brandl; :issue:`1663329`.) @@ -2311,12 +2311,12 @@ will be ignored, not copied. The :mod:`shutil` module also provides an :func:`ignore_patterns` - function for use with this new parameter. - :func:`ignore_patterns` takes an arbitrary number of glob-style patterns - and will ignore any files and directories that match any of these patterns. - The following example copies a directory tree, but skips both - :file:`.svn` directories and Emacs backup - files, which have names ending with '~':: + function for use with this new parameter. :func:`ignore_patterns` + takes an arbitrary number of glob-style patterns and returns a + callable that will ignore any files and directories that match any + of these patterns. The following example copies a directory tree, + but skips both :file:`.svn` directories and Emacs backup files, + which have names ending with '~':: shutil.copytree('Doc/library', '/tmp/library', ignore=shutil.ignore_patterns('*~', '.svn')) @@ -2523,13 +2523,15 @@ (Contributed by Dwayne Bailey; :issue:`1581073`.) -* The :mod:`threading` module API is being changed to use properties such as - :attr:`daemon` instead of :meth:`setDaemon` and :meth:`isDaemon` methods, and - some methods have been renamed to use underscores instead of camel-case; for - example, the :meth:`activeCount` method is renamed to :meth:`active_count`. - The 2.6 version of the module supports the same properties and renamed - methods, but doesn't remove the old methods. 3.0 also fully supports both - APIs, and a date for the deprecation of the old APIs has not been set yet. +* The :mod:`threading` module API is being changed to use properties + such as :attr:`daemon` instead of :meth:`setDaemon` and + :meth:`isDaemon` methods, and some methods have been renamed to use + underscores instead of camel-case; for example, the + :meth:`activeCount` method is renamed to :meth:`active_count`. Both + the 2.6 and 3.0 versions of the module support the same properties + and renamed methods, but don't remove the old methods. No date has been set + for the deprecation of the old APIs in Python 3.x; the old APIs won't + be removed in any 2.x version. (Carried out by several people, most notably Benjamin Peterson.) The :mod:`threading` module's :class:`Thread` objects @@ -2735,15 +2737,15 @@ The functions in this module currently include: -* ``ascii(*obj*)``: equivalent to :func:`repr`. In Python 3.0, +* ``ascii(obj)``: equivalent to :func:`repr`. In Python 3.0, :func:`repr` will return a Unicode string, while :func:`ascii` will return a pure ASCII bytestring. -* ``filter(*predicate*, *iterable*)``, - ``map(*func*, *iterable1*, ...)``: the 3.0 versions +* ``filter(predicate, iterable)``, + ``map(func, iterable1, ...)``: the 3.0 versions return iterators, unlike the 2.x built-ins which return lists. -* ``hex(*value*)``, ``oct(*value*)``: instead of calling the +* ``hex(value)``, ``oct(value)``: instead of calling the :meth:`__hex__` or :meth:`__oct__` methods, these versions will call the :meth:`__index__` method and convert the result to hexadecimal or octal. :func:`oct` will use the new ``0o`` notation for its @@ -3212,5 +3214,5 @@ The author would like to thank the following people for offering suggestions, corrections and assistance with various drafts of this article: -Georg Brandl, Steve Brown, Nick Coghlan, Jim Jewett, Antoine Pitrou. +Georg Brandl, Steve Brown, Nick Coghlan, Jim Jewett, Kent Johnson, Antoine Pitrou. From buildbot at python.org Thu Sep 4 15:29:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 13:29:36 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu 3.0 Message-ID: <20080904132936.D179D1E400D@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%203.0/builds/504 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: guilherme.polo,hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: Traceback (most recent call last): File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_urllibnet.py", line 39, in testURLread f = _open_with_retry(urllib.request.urlopen, "http://www.python.org/") File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_urllibnet.py", line 25, in _open_with_retry raise last_exc File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/test/test_urllibnet.py", line 19, in _open_with_retry return func(host, *args, **kwargs) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 122, in urlopen return _opener.open(url, data, timeout) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 359, in open response = self._open(req, data) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 377, in _open '_open', req) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 337, in _call_chain result = func(*args) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 1082, in http_open return self.do_open(http.client.HTTPConnection, req) File "/home/pybot/buildarea/3.0.klose-debian-ia64/build/Lib/urllib/request.py", line 1071, in do_open raise URLError(err) urllib.error.URLError: 2 tests failed: test_ssl test_urllibnet make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 16:13:03 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 14:13:03 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080904141303.528C51E401D@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/310 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: barry.warsaw 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 python-checkins at python.org Thu Sep 4 16:25:30 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 16:25:30 +0200 (CEST) Subject: [Python-checkins] r66219 - python/trunk/Misc/NEWS Message-ID: <20080904142530.675561E400B@bag.python.org> Author: hirokazu.yamamoto Date: Thu Sep 4 16:25:30 2008 New Revision: 66219 Log: Added NEWS Modified: python/trunk/Misc/NEWS Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Thu Sep 4 16:25:30 2008 @@ -56,6 +56,9 @@ Library ------- +- Issue #3762: platform.architecture() fails if python is lanched via + its symbolic link. + - Issue #3772: Fixed regression problem in StreamHandler.emit(). - Issue 600362: Relocated parse_qs() and parse_qsl(), from the cgi module From python-checkins at python.org Thu Sep 4 16:26:56 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 16:26:56 +0200 (CEST) Subject: [Python-checkins] r66220 - python/branches/release25-maint/Misc/NEWS Message-ID: <20080904142656.C26DA1E400B@bag.python.org> Author: hirokazu.yamamoto Date: Thu Sep 4 16:26:56 2008 New Revision: 66220 Log: Add NEWS Modified: python/branches/release25-maint/Misc/NEWS Modified: python/branches/release25-maint/Misc/NEWS ============================================================================== --- python/branches/release25-maint/Misc/NEWS (original) +++ python/branches/release25-maint/Misc/NEWS Thu Sep 4 16:26:56 2008 @@ -80,6 +80,9 @@ Library ------- +- Issue #3762: platform.architecture() fails if python is lanched via + its symbolic link. + - Issue #3554: ctypes.string_at and ctypes.wstring_at did call Python api functions without holding the GIL, which could lead to a fatal error when they failed. From buildbot at python.org Thu Sep 4 16:56:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 14:56:18 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904145618.F355B1E400D@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/503 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: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_posix test_subprocess ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 16:59:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 14:59:51 +0000 Subject: [Python-checkins] buildbot failure in sparc Debian 3.0 Message-ID: <20080904145951.3E2951E401D@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/499 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: barry.warsaw BUILD FAILED: failed test Excerpt from the test logfile: make: *** [buildbottest] Segmentation fault sincerely, -The Buildbot From buildbot at python.org Thu Sep 4 18:38:00 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 16:38:00 +0000 Subject: [Python-checkins] buildbot failure in sparc Ubuntu 3.0 Message-ID: <20080904163801.209061E400D@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/575 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: guilherme.polo,hirokazu.yamamoto BUILD FAILED: failed test clean Excerpt from the test logfile: sincerely, -The Buildbot From python-checkins at python.org Thu Sep 4 18:46:22 2008 From: python-checkins at python.org (guilherme.polo) Date: Thu, 4 Sep 2008 18:46:22 +0200 (CEST) Subject: [Python-checkins] r66221 - in sandbox/trunk/ttk-gsoc/src: 2.x/test/test_functions.py 2.x/ttk.py 3.x/test/test_functions.py 3.x/ttk.py Message-ID: <20080904164622.9DA731E400D@bag.python.org> Author: guilherme.polo Date: Thu Sep 4 18:46:22 2008 New Revision: 66221 Log: Fixed issue 4: http://code.google.com/p/python-ttk/issues/detail?id=4 The special code at Treeview.insert has been moved to _format_optdict, test added. Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_functions.py sandbox/trunk/ttk-gsoc/src/2.x/ttk.py sandbox/trunk/ttk-gsoc/src/3.x/test/test_functions.py sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/test/test_functions.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/test/test_functions.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/test/test_functions.py Thu Sep 4 18:46:22 2008 @@ -66,6 +66,12 @@ # opts should remain unchanged self.failUnlessEqual(opts, orig_opts) + # passing values with spaces inside a tuple/list + check_against( + ttk._format_optdict( + {'option': ('one two', 'three')}), + {'-option': '{one two} three'}) + # ignore an option amount_opts = len(ttk._format_optdict(opts, ignore=(u'?'))) / 2 self.failUnlessEqual(amount_opts, len(opts) - 1) Modified: sandbox/trunk/ttk-gsoc/src/2.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/ttk.py Thu Sep 4 18:46:22 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.5" +__version__ = "0.2.6" __author__ = "Guilherme Polo " @@ -73,7 +73,11 @@ v.append(unicode(val) if val else '{}') else: v.append(str(val)) - value = format % ' '.join(v) + + # format v according to the script option, but also check for + # space in any value in v in order to group them correctly + value = format % ' '.join( + ('{%s}' if ' ' in val else '%s') % val for val in v) if script and value == '': value = '{}' # empty string in Python is equivalent to {} in Tcl @@ -1324,12 +1328,7 @@ is specified, it is used as the item identifier, iid must not already exist in the tree. Otherwise, a new unique identifier is generated.""" - opts, values = _format_optdict(kw, ignore='values'), kw.get('values') - # values may need special formatting if any value contains a space - if values: - values = map(unicode, values) - opts += ("-values", - ' '.join(('{%s}' if ' ' in v else '%s') % v for v in values)) + opts = _format_optdict(kw) if iid: res = self.tk.call(self._w, "insert", parent, index, "-id", iid, *opts) Modified: sandbox/trunk/ttk-gsoc/src/3.x/test/test_functions.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/test/test_functions.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/test/test_functions.py Thu Sep 4 18:46:22 2008 @@ -66,6 +66,12 @@ # opts should remain unchanged self.failUnlessEqual(opts, orig_opts) + # passing values with spaces inside a tuple/list + check_against( + ttk._format_optdict( + {'option': ('one two', 'three')}), + {'-option': '{one two} three'}) + # ignore an option amount_opts = len(ttk._format_optdict(opts, ignore=('?'))) / 2 self.failUnlessEqual(amount_opts, len(opts) - 1) Modified: sandbox/trunk/ttk-gsoc/src/3.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Thu Sep 4 18:46:22 2008 @@ -12,7 +12,7 @@ of the widgets appearance lies at Themes. """ -__version__ = "0.2.5" +__version__ = "0.2.6" __author__ = "Guilherme Polo " @@ -73,7 +73,11 @@ v.append(str(val) if val else '{}') else: v.append(str(val)) - value = format % ' '.join(v) + + # format v according to the script option, but also check for + # space in any value in v in order to group them correctly + value = format % ' '.join( + ('{%s}' if ' ' in val else '%s') % val for val in v) if script and value == '': value = '{}' # empty string in Python is equivalent to {} in Tcl @@ -1324,12 +1328,7 @@ is specified, it is used as the item identifier, iid must not already exist in the tree. Otherwise, a new unique identifier is generated.""" - opts, values = _format_optdict(kw, ignore='values'), kw.get('values') - # values may need special formatting if any value contains a space - if values: - values = map(str, values) - opts += ("-values", - ' '.join(('{%s}' if ' ' in v else '%s') % v for v in values)) + opts = _format_optdict(kw) if iid: res = self.tk.call(self._w, "insert", parent, index, "-id", iid, *opts) From brett at python.org Thu Sep 4 20:35:05 2008 From: brett at python.org (Brett Cannon) Date: Thu, 4 Sep 2008 11:35:05 -0700 Subject: [Python-checkins] r66213 - python/trunk/Lib/platform.py In-Reply-To: <20080904111514.88F941E4021@bag.python.org> References: <20080904111514.88F941E4021@bag.python.org> Message-ID: On Thu, Sep 4, 2008 at 4:15 AM, hirokazu.yamamoto wrote: > Author: hirokazu.yamamoto > Date: Thu Sep 4 13:15:14 2008 > New Revision: 66213 > > Log: > Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. > Please make sure to mention who does the code review when doing a commit during an rc, Hirokazu. > Modified: > python/trunk/Lib/platform.py > > Modified: python/trunk/Lib/platform.py > ============================================================================== > --- python/trunk/Lib/platform.py (original) > +++ python/trunk/Lib/platform.py Thu Sep 4 13:15:14 2008 > @@ -933,7 +933,7 @@ > filepath = _abspath(filepath) > while os.path.islink(filepath): > filepath = os.path.normpath( > - os.path.join(filepath,os.readlink(filepath))) > + os.path.join(os.path.dirname(filepath),os.readlink(filepath))) > return filepath > > def _syscmd_uname(option,default=''): > _______________________________________________ > Python-checkins mailing list > Python-checkins at python.org > http://mail.python.org/mailman/listinfo/python-checkins > From python-checkins at python.org Thu Sep 4 20:42:45 2008 From: python-checkins at python.org (guilherme.polo) Date: Thu, 4 Sep 2008 20:42:45 +0200 (CEST) Subject: [Python-checkins] r66222 - in sandbox/trunk/ttk-gsoc/src: 2.x/ttk.py 3.x/ttk.py Message-ID: <20080904184245.2DDB21E400D@bag.python.org> Author: guilherme.polo Date: Thu Sep 4 20:42:44 2008 New Revision: 66222 Log: Removed some repeated comments in Combobox Modified: sandbox/trunk/ttk-gsoc/src/2.x/ttk.py sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Modified: sandbox/trunk/ttk-gsoc/src/2.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/2.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/2.x/ttk.py Thu Sep 4 20:42:44 2008 @@ -692,8 +692,9 @@ exportselection, justify, height, postcommand, state, textvariable, values, width """ + # The "values" option may need special formatting, so leave to + # _format_optdict the responsability to format it if "values" in kw: - # may need special formatting if any value is an empty string kw["values"] = _format_optdict({'v': kw["values"]})[1] Entry.__init__(self, master, "ttk::combobox", **kw) @@ -701,7 +702,6 @@ def __setitem__(self, item, value): if item == "values": - # may need special formatting if any value is an empty string value = _format_optdict({item: value})[1] Entry.__setitem__(self, item, value) @@ -711,7 +711,6 @@ """Custom Combobox configure, created to properly format the values option.""" if "values" in kw: - # may need special formatting if any value is an empty string kw["values"] = _format_optdict({'v': kw["values"]})[1] return Entry.configure(self, cnf, **kw) Modified: sandbox/trunk/ttk-gsoc/src/3.x/ttk.py ============================================================================== --- sandbox/trunk/ttk-gsoc/src/3.x/ttk.py (original) +++ sandbox/trunk/ttk-gsoc/src/3.x/ttk.py Thu Sep 4 20:42:44 2008 @@ -692,8 +692,9 @@ exportselection, justify, height, postcommand, state, textvariable, values, width """ + # The "values" option may need special formatting, so leave to + # _format_optdict the responsability to format it if "values" in kw: - # may need special formatting if any value is an empty string kw["values"] = _format_optdict({'v': kw["values"]})[1] Entry.__init__(self, master, "ttk::combobox", **kw) @@ -701,7 +702,6 @@ def __setitem__(self, item, value): if item == "values": - # may need special formatting if any value is an empty string value = _format_optdict({item: value})[1] Entry.__setitem__(self, item, value) @@ -711,7 +711,6 @@ """Custom Combobox configure, created to properly format the values option.""" if "values" in kw: - # may need special formatting if any value is an empty string kw["values"] = _format_optdict({'v': kw["values"]})[1] return Entry.configure(self, cnf, **kw) From python-checkins at python.org Thu Sep 4 20:51:42 2008 From: python-checkins at python.org (hirokazu.yamamoto) Date: Thu, 4 Sep 2008 20:51:42 +0200 (CEST) Subject: [Python-checkins] r66216 - svn:log Message-ID: <20080904185142.C0E1F1E400D@bag.python.org> Author: hirokazu.yamamoto Revision: 66216 Property Name: svn:log Action: modified Property diff: --- old property value +++ new property value @@ -5,4 +5,5 @@ r66213 | hirokazu.yamamoto | 2008-09-04 20:15:14 +0900 | 1 line Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. + Reviewed by Amaury Forgeot d'Arc. ........ From buildbot at python.org Fri Sep 5 00:10:09 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:10:09 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080904221009.9D3701E4002@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/277 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: antoine.pitrou BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:39:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:39:53 +0000 Subject: [Python-checkins] buildbot failure in OS X x86 3.0 Message-ID: <20080904223953.783981E4017@bag.python.org> The Buildbot has detected a new failure of OS X x86 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/OS%20X%20x86%203.0/builds/324 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: noller-osx86 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:40:08 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:40:08 +0000 Subject: [Python-checkins] buildbot failure in i386 Ubuntu 3.0 Message-ID: <20080904224009.168641E4017@bag.python.org> The Buildbot has detected a new failure of i386 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/i386%20Ubuntu%203.0/builds/420 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-ubuntu-i386 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:40:17 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:40:17 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu 3.0 Message-ID: <20080904224017.9E34E1E4019@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%203.0/builds/507 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:40:18 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:40:18 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable 3.0 Message-ID: <20080904224019.094221E401B@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/1480 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: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:40:29 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:40:29 +0000 Subject: [Python-checkins] buildbot failure in PPC64 Debian 3.0 Message-ID: <20080904224030.5B8EF1E401B@bag.python.org> The Buildbot has detected a new failure of PPC64 Debian 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/PPC64%20Debian%203.0/builds/1597 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ppc64 Build Reason: Build Source Stamp: [branch branches/py3k] HEAD Blamelist: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:40:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:40:53 +0000 Subject: [Python-checkins] buildbot failure in S-390 Debian 3.0 Message-ID: <20080904224053.7C0561E4011@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/841 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: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:41:04 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:41:04 +0000 Subject: [Python-checkins] buildbot failure in g4 osx.4 3.0 Message-ID: <20080904224104.7023D1E4010@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/1354 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: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 00:47:49 2008 From: buildbot at python.org (buildbot at python.org) Date: Thu, 04 Sep 2008 22:47:49 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080904224749.9E8E41E4015@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/505 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: amaury.forgeotdarc BUILD FAILED: failed compile sincerely, -The Buildbot From python-checkins at python.org Fri Sep 5 01:31:27 2008 From: python-checkins at python.org (benjamin.peterson) Date: Fri, 5 Sep 2008 01:31:27 +0200 (CEST) Subject: [Python-checkins] r66226 - python/trunk/Doc/library/2to3.rst Message-ID: <20080904233128.0082E1E4002@bag.python.org> Author: benjamin.peterson Date: Fri Sep 5 01:31:27 2008 New Revision: 66226 Log: flesh out the documentation on using 2to3 Modified: python/trunk/Doc/library/2to3.rst Modified: python/trunk/Doc/library/2to3.rst ============================================================================== --- python/trunk/Doc/library/2to3.rst (original) +++ python/trunk/Doc/library/2to3.rst Fri Sep 5 01:31:27 2008 @@ -7,15 +7,21 @@ 2to3 is a Python program that reads Python 2.x source code and applies a series of *fixers* to transform it into valid Python 3.x code. The standard library -contains a rich set of fixers that will handle almost all code. It is, however, -possible to write your own fixers. +contains a rich set of fixers that will handle almost all code. 2to3 supporting +library :mod:`lib2to3` is, however, a flexible and generic library, so it is +possible to write your own fixers for 2to3. :mod:`lib2to3` could also be +adapted to custom applications in which Python code needs to be edited +automatically. Using 2to3 ---------- -2to3 can be run with a list of files to transform or a directory to recursively -traverse looking for files with the ``.py`` extension. +2to3 will usually be installed with the Python interpreter as a script. It is +also located in the :file:`Tools/scripts` directory of the Python root. + +2to3's basic arguments are a list of files or directories to transform. The +directories are to recursively traversed for Python sources. Here is a sample Python 2.x source file, :file:`example.py`:: @@ -29,13 +35,14 @@ $ 2to3 example.py -A diff against the original source file will be printed. 2to3 can also write -the needed modifications right back to the source file. (A backup of the -original file will also be made.) This is done with the :option:`-w` flag:: +A diff against the original source file is printed. 2to3 can also write the +needed modifications right back to the source file. (Of course, a backup of the +original is also be made.) Writing the changes back is enabled with the +:option:`-w` flag:: $ 2to3 -w example.py -:file:`example.py` will now look like this:: +After transformation :file:`example.py` looks like this:: def greet(name): print("Hello, {0}!".format(name)) @@ -43,10 +50,10 @@ name = input() greet(name) -Comments and and exact indentation will be preserved throughout the translation +Comments and and exact indentation are preserved throughout the translation process. -By default, 2to3 will run a set of predefined fixers. The :option:`-l` flag +By default, 2to3 runs a set of predefined fixers. The :option:`-l` flag lists all avaible fixers. An explicit set of fixers to run can be given by use of the :option:`-f` flag. The following example runs only the ``imports`` and ``has_key`` fixers:: @@ -54,16 +61,30 @@ $ 2to3 -f imports -f has_key example.py Some fixers are *explicit*, meaning they aren't run be default and must be -listed on the command line. Here, in addition to the default fixers, the -``idioms`` fixer is run:: +listed on the command line to be run. Here, in addition to the default fixers, +the ``idioms`` fixer is run:: $ 2to3 -f all -f idioms example.py -Notice how ``all`` enables all default fixers. +Notice how passing ``all`` enables all default fixers. Sometimes 2to3 will find will find a place in your source code that needs to be changed, but 2to3 cannot fix automatically. In this case, 2to3 will print a -warning beneath the diff for a file. +warning beneath the diff for a file. You should address the warning in order to +have compliant 3.x code. + +2to3 can also refactor doctests. To enable this mode, use the :option:`-d` +flag. Note that *only* doctests will be refactored. + +The :option:`-v` option enables the output of more information on the +translation process. + +2to3 can also treat ``print`` as a function instead of a statement in the +grammar. This is useful when ``from __future__ import print_function`` is being +used. If this option is not given, the print fixer will surround print calls in +an extra set of parentheses because it cannot differentiate between the and +print statement with parentheses (such as ``print ("a" + "b" + "c")``) and a +true function call. :mod:`lib2to3` - 2to3's library From buildbot at python.org Fri Sep 5 02:27:36 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 00:27:36 +0000 Subject: [Python-checkins] buildbot failure in x86 W2k8 3.0 Message-ID: <20080905002736.3002A1E4002@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/167 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: antoine.pitrou BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_threadedtempfile sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 04:01:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 02:01:52 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080905020152.DD1491E4002@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/508 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: benjamin.peterson BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_posix ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' sincerely, -The Buildbot From python-checkins at python.org Fri Sep 5 05:52:59 2008 From: python-checkins at python.org (brett.cannon) Date: Fri, 5 Sep 2008 05:52:59 +0200 (CEST) Subject: [Python-checkins] r66229 - python/trunk/Doc/library/warnings.rst Message-ID: <20080905035259.EA3C31E4002@bag.python.org> Author: brett.cannon Date: Fri Sep 5 05:52:59 2008 New Revision: 66229 Log: Make it more obvious that warnings.catch_warnings() and its arguments should be considered keyword-only. Modified: python/trunk/Doc/library/warnings.rst Modified: python/trunk/Doc/library/warnings.rst ============================================================================== --- python/trunk/Doc/library/warnings.rst (original) +++ python/trunk/Doc/library/warnings.rst Fri Sep 5 05:52:59 2008 @@ -267,7 +267,7 @@ Available Classes ----------------- -.. class:: catch_warnings([record=False[, module=None]]) +.. class:: catch_warnings([\*, record=False[, module=None]]) A context manager that guards the warnings filter from being permanently mutated. The manager returns an instance of :class:`WarningsRecorder`. The From buildbot at python.org Fri Sep 5 06:17:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 04:17:01 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080905041701.5A3701E4002@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/282 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: brett.cannon BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 07:00:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 05:00:51 +0000 Subject: [Python-checkins] buildbot failure in ia64 Ubuntu 3.0 Message-ID: <20080905050051.4B3C51E4002@bag.python.org> The Buildbot has detected a new failure of ia64 Ubuntu 3.0. Full details are available at: http://www.python.org/dev/buildbot/all/ia64%20Ubuntu%203.0/builds/511 Buildbot URL: http://www.python.org/dev/buildbot/all/ Buildslave for this Build: klose-debian-ia64 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 buildbot at python.org Fri Sep 5 07:06:56 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 05:06:56 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080905050656.AC6891E4016@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/510 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: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_posix test_subprocess ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Fri Sep 5 17:15:56 2008 From: python-checkins at python.org (andrew.kuchling) Date: Fri, 5 Sep 2008 17:15:56 +0200 (CEST) Subject: [Python-checkins] r66231 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080905151556.CEB951E4003@bag.python.org> Author: andrew.kuchling Date: Fri Sep 5 17:15:56 2008 New Revision: 66231 Log: #3671: Typo fix 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 Fri Sep 5 17:15:56 2008 @@ -2036,7 +2036,7 @@ With two iterables, *2N*-tuples are returned. :: - itertools(product([1,2], [3,4], repeat=2) -> + itertools.product([1,2], [3,4], repeat=2) -> [(1, 3, 1, 3), (1, 3, 1, 4), (1, 3, 2, 3), (1, 3, 2, 4), (1, 4, 1, 3), (1, 4, 1, 4), (1, 4, 2, 3), (1, 4, 2, 4), (2, 3, 1, 3), (2, 3, 1, 4), (2, 3, 2, 3), (2, 3, 2, 4), @@ -3212,7 +3212,8 @@ Acknowledgements ================ -The author would like to thank the following people for offering suggestions, -corrections and assistance with various drafts of this article: -Georg Brandl, Steve Brown, Nick Coghlan, Jim Jewett, Kent Johnson, Antoine Pitrou. +The author would like to thank the following people for offering +suggestions, corrections and assistance with various drafts of this +article: Georg Brandl, Steve Brown, Nick Coghlan, Jim Jewett, Kent +Johnson, Chris Lambacher, Antoine Pitrou. From python-checkins at python.org Fri Sep 5 20:33:51 2008 From: python-checkins at python.org (brett.cannon) Date: Fri, 5 Sep 2008 20:33:51 +0200 (CEST) Subject: [Python-checkins] r66232 - in python/trunk: Doc/library/bsddb.rst Doc/library/dbhash.rst Lib/bsddb/__init__.py Lib/dbhash.py Lib/test/test_py3kwarn.py Lib/test/test_warnings.py Lib/warnings.py Misc/NEWS Message-ID: <20080905183351.E1B0C1E4003@bag.python.org> Author: brett.cannon Date: Fri Sep 5 20:33:51 2008 New Revision: 66232 Log: Deprecate bsddb for removal in Python 3.0. Closes issue 3776. Review by Nick Coghlan. Modified: python/trunk/Doc/library/bsddb.rst python/trunk/Doc/library/dbhash.rst python/trunk/Lib/bsddb/__init__.py python/trunk/Lib/dbhash.py python/trunk/Lib/test/test_py3kwarn.py python/trunk/Lib/test/test_warnings.py python/trunk/Lib/warnings.py python/trunk/Misc/NEWS Modified: python/trunk/Doc/library/bsddb.rst ============================================================================== --- python/trunk/Doc/library/bsddb.rst (original) +++ python/trunk/Doc/library/bsddb.rst Fri Sep 5 20:33:51 2008 @@ -6,6 +6,9 @@ :synopsis: Interface to Berkeley DB database library .. sectionauthor:: Skip Montanaro +.. deprecated:: 2.6 + The :mod:`bsddb` module has been deprecated for removal in Python 3.0. + The :mod:`bsddb` module provides an interface to the Berkeley DB library. Users can create hash, btree or record based library files using the appropriate open Modified: python/trunk/Doc/library/dbhash.rst ============================================================================== --- python/trunk/Doc/library/dbhash.rst (original) +++ python/trunk/Doc/library/dbhash.rst Fri Sep 5 20:33:51 2008 @@ -5,10 +5,8 @@ :synopsis: DBM-style interface to the BSD database library. .. sectionauthor:: Fred L. Drake, Jr. -.. note:: - The :mod:`dbhash` module has been renamed to :mod:`dbm.bsd` in Python 3.0. - The :term:`2to3` tool will automatically adapt imports when converting your - sources to 3.0. +.. deprecated:: 2.6 + The :mod:`dbhash` module has been deprecated for removal in Python 3.0. .. index:: module: bsddb Modified: python/trunk/Lib/bsddb/__init__.py ============================================================================== --- python/trunk/Lib/bsddb/__init__.py (original) +++ python/trunk/Lib/bsddb/__init__.py Fri Sep 5 20:33:51 2008 @@ -42,6 +42,12 @@ import sys absolute_import = (sys.version_info[0] >= 3) +if sys.py3kwarning: + import warnings + warnings.warnpy3k("in 3.x, bsddb has been removed; " + "please use the pybsddb project instead", + DeprecationWarning, 2) + try: if __name__ == 'bsddb3': # import _pybsddb binary as it should be the more recent version from Modified: python/trunk/Lib/dbhash.py ============================================================================== --- python/trunk/Lib/dbhash.py (original) +++ python/trunk/Lib/dbhash.py Fri Sep 5 20:33:51 2008 @@ -1,6 +1,9 @@ """Provide a (g)dbm-compatible interface to bsddb.hashopen.""" import sys +if sys.py3kwarning: + import warnings + warnings.warnpy3k("in 3.x, dbhash has been removed", DeprecationWarning, 2) try: import bsddb except ImportError: Modified: python/trunk/Lib/test/test_py3kwarn.py ============================================================================== --- python/trunk/Lib/test/test_py3kwarn.py (original) +++ python/trunk/Lib/test/test_py3kwarn.py Fri Sep 5 20:33:51 2008 @@ -305,7 +305,7 @@ 'sunos5' : ('sunaudiodev', 'SUNAUDIODEV'), } optional_modules = ('bsddb185', 'Canvas', 'dl', 'linuxaudiodev', 'imageop', - 'sv', 'cPickle') + 'sv', 'cPickle', 'bsddb', 'dbhash') def check_removal(self, module_name, optional=False): """Make sure the specified module, when imported, raises a Modified: python/trunk/Lib/test/test_warnings.py ============================================================================== --- python/trunk/Lib/test/test_warnings.py (original) +++ python/trunk/Lib/test/test_warnings.py Fri Sep 5 20:33:51 2008 @@ -508,6 +508,7 @@ wmod = self.module with wmod.catch_warnings(module=wmod, record=True) as w: self.assertEqual(w, []) + self.assertRaises(AttributeError, getattr, w, 'message') wmod.simplefilter("always") wmod.warn("foo") self.assertEqual(str(w.message), "foo") Modified: python/trunk/Lib/warnings.py ============================================================================== --- python/trunk/Lib/warnings.py (original) +++ python/trunk/Lib/warnings.py Fri Sep 5 20:33:51 2008 @@ -314,7 +314,14 @@ self.append(WarningMessage(*args, **kwargs)) def __getattr__(self, attr): - return getattr(self[-1], attr) + """Return attributes from the last caught warning, or raise + AttributeError.""" + try: + return getattr(self[-1], attr) + except IndexError: + raise AttributeError("no recorded warning to read " + "{0!r} attribute from".format(attr)) + def reset(self): del self[:] Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Fri Sep 5 20:33:51 2008 @@ -56,6 +56,8 @@ Library ------- +- Issue 3776: Deprecate the bsddb package for removal in 3.0. + - Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. From buildbot at python.org Fri Sep 5 21:02:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 19:02:53 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080905190253.F0FE31E4003@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/200 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,benjamin.peterson,brett.cannon,hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket ====================================================================== ERROR: testShutdown (test.test_socket.BasicTCPTest2) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/trunk.heller-x86-osx5/build/Lib/test/test_socket.py", line 120, in _tearDown self.fail(msg) AssertionError: [Errno 57] Socket is not connected make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 21:05:52 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 19:05:52 +0000 Subject: [Python-checkins] buildbot failure in x86 gentoo 3.0 Message-ID: <20080905190552.DB43A1E4019@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/1540 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: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: make: *** [buildbottest] Unknown signal 32 sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 23:17:37 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 21:17:37 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080905211737.9A1641E4003@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/284 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 failed slave lost sincerely, -The Buildbot From buildbot at python.org Fri Sep 5 23:59:14 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 21:59:14 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080905215914.97FA81E4003@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/512 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: amaury.forgeotdarc BUILD FAILED: failed test Excerpt from the test logfile: 2 tests failed: test_posix test_subprocess ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Sat Sep 6 00:04:54 2008 From: python-checkins at python.org (antoine.pitrou) Date: Sat, 6 Sep 2008 00:04:54 +0200 (CEST) Subject: [Python-checkins] r66235 - python/trunk/Lib/test/test_unicode.py Message-ID: <20080905220454.E382D1E4003@bag.python.org> Author: antoine.pitrou Date: Sat Sep 6 00:04:54 2008 New Revision: 66235 Log: #3601: test_unicode.test_raiseMemError fails in UCS4 Reviewed by Benjamin Peterson on IRC. Modified: python/trunk/Lib/test/test_unicode.py Modified: python/trunk/Lib/test/test_unicode.py ============================================================================== --- python/trunk/Lib/test/test_unicode.py (original) +++ python/trunk/Lib/test/test_unicode.py Sat Sep 6 00:04:54 2008 @@ -1118,7 +1118,10 @@ # when a string allocation fails with a MemoryError. # This used to crash the interpreter, # or leak references when the number was smaller. - alloc = lambda: u"a" * (sys.maxsize - 100) + charwidth = 4 if sys.maxunicode >= 0x10000 else 2 + # Note: sys.maxsize is half of the actual max allocation because of + # the signedness of Py_ssize_t. + alloc = lambda: u"a" * (sys.maxsize // charwidth * 2) self.assertRaises(MemoryError, alloc) self.assertRaises(MemoryError, alloc) From buildbot at python.org Sat Sep 6 00:49:59 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 22:49:59 +0000 Subject: [Python-checkins] buildbot failure in amd64 gentoo 3.0 Message-ID: <20080905225000.21BE61E4003@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/1033 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: antoine.pitrou 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 Sep 6 00:59:17 2008 From: python-checkins at python.org (brett.cannon) Date: Sat, 6 Sep 2008 00:59:17 +0200 (CEST) Subject: [Python-checkins] r66237 - in python/trunk: Makefile.pre.in Misc/NEWS Message-ID: <20080905225917.EA4C11E4003@bag.python.org> Author: brett.cannon Date: Sat Sep 6 00:59:17 2008 New Revision: 66237 Log: GNU coding guidelines say that ``make check`` should verify the build. That clashes with what Python's build target did. Rename the target to 'patchcheck' to avoid the culture clash. Closes issue 3758. Reviewed by Benjamin Peterson. Modified: python/trunk/Makefile.pre.in python/trunk/Misc/NEWS Modified: python/trunk/Makefile.pre.in ============================================================================== --- python/trunk/Makefile.pre.in (original) +++ python/trunk/Makefile.pre.in Sat Sep 6 00:59:17 2008 @@ -1190,7 +1190,7 @@ -o -print # Perform some verification checks on any modified files. -check: +patchcheck: $(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/patchcheck.py # Dependencies Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Sat Sep 6 00:59:17 2008 @@ -112,6 +112,12 @@ - Issue 3768: Move test_py3kwarn over to the new API for catch_warnings(). +Build +----- + +- Issue 3758: Rename the 'check' target to 'patchcheck' so as to not clash with + GNU build target guidelines. + What's New in Python 2.6 beta 3? ================================ From buildbot at python.org Sat Sep 6 01:23:51 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 23:23:51 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 trunk Message-ID: <20080905232351.34E561E4003@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/3419 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 BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From python-checkins at python.org Sat Sep 6 01:30:24 2008 From: python-checkins at python.org (antoine.pitrou) Date: Sat, 6 Sep 2008 01:30:24 +0200 (CEST) Subject: [Python-checkins] r66240 - in python/trunk: Lib/zipfile.py Misc/NEWS Message-ID: <20080905233024.3C2521E4003@bag.python.org> Author: antoine.pitrou Date: Sat Sep 6 01:30:23 2008 New Revision: 66240 Log: Issue #3535: zipfile couldn't read some zip files larger than 2GB. Reviewed by Amaury Forgeot d'Arc. Modified: python/trunk/Lib/zipfile.py python/trunk/Misc/NEWS Modified: python/trunk/Lib/zipfile.py ============================================================================== --- python/trunk/Lib/zipfile.py (original) +++ python/trunk/Lib/zipfile.py Sat Sep 6 01:30:23 2008 @@ -163,6 +163,7 @@ return endrec # Update the original endrec using data from the ZIP64 record + endrec[_ECD_SIGNATURE] = sig endrec[_ECD_DISK_NUMBER] = disk_num endrec[_ECD_DISK_START] = disk_dir endrec[_ECD_ENTRIES_THIS_DISK] = dircount @@ -735,9 +736,8 @@ # "concat" is zero, unless zip was concatenated to another file concat = endrec[_ECD_LOCATION] - size_cd - offset_cd - if endrec[_ECD_LOCATION] > ZIP64_LIMIT: - # If the offset of the "End of Central Dir" record requires Zip64 - # extension structures, account for them + if endrec[_ECD_SIGNATURE] == stringEndArchive64: + # If Zip64 extension structures are present, account for them concat -= (sizeEndCentDir64 + sizeEndCentDir64Locator) if self.debug > 2: Modified: python/trunk/Misc/NEWS ============================================================================== --- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Sat Sep 6 01:30:23 2008 @@ -56,7 +56,9 @@ Library ------- -- Issue 3776: Deprecate the bsddb package for removal in 3.0. +- Issue #3535: zipfile couldn't read some zip files larger than 2GB. + +- Issue #3776: Deprecate the bsddb package for removal in 3.0. - Issue #3762: platform.architecture() fails if python is lanched via its symbolic link. From buildbot at python.org Sat Sep 6 01:49:26 2008 From: buildbot at python.org (buildbot at python.org) Date: Fri, 05 Sep 2008 23:49:26 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 3.0 Message-ID: <20080905234926.8AC651E4003@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/320 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: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_email make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 02:13:01 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 00:13:01 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080906001301.B9C601E4003@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/286 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: brett.cannon BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 02:14:31 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 00:14:31 +0000 Subject: [Python-checkins] buildbot failure in x86 osx.5 trunk Message-ID: <20080906001431.9727D1E4003@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/203 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: antoine.pitrou BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_socket make: *** [buildbottest] Error 1 sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 02:20:30 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 00:20:30 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080906002030.A6BBA1E4003@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/514 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: brett.cannon BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 02:20:53 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 00:20:53 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP trunk Message-ID: <20080906002053.7ECB41E4003@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/253 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: antoine.pitrou BUILD FAILED: failed compile sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 02:22:39 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 00:22:39 +0000 Subject: [Python-checkins] buildbot failure in alpha Tru64 5.1 3.0 Message-ID: <20080906002239.56E5A1E4003@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/1304 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 Sat Sep 6 03:03:16 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 01:03:16 +0000 Subject: [Python-checkins] buildbot failure in ppc Debian unstable trunk Message-ID: <20080906010317.075931E4003@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/1954 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: antoine.pitrou BUILD FAILED: failed test Excerpt from the test logfile: 1 test failed: test_pickletools make: *** [buildbottest] Error 1 sincerely, -The Buildbot From python-checkins at python.org Sat Sep 6 03:20:11 2008 From: python-checkins at python.org (jesse.noller) Date: Sat, 6 Sep 2008 03:20:11 +0200 (CEST) Subject: [Python-checkins] r66244 - python/trunk/Doc/library/multiprocessing.rst Message-ID: <20080906012011.F0E871E4003@bag.python.org> Author: jesse.noller Date: Sat Sep 6 03:20:11 2008 New Revision: 66244 Log: Fix typo in multiprocessing doc, cancel_join_thread was missing _thread Modified: python/trunk/Doc/library/multiprocessing.rst Modified: python/trunk/Doc/library/multiprocessing.rst ============================================================================== --- python/trunk/Doc/library/multiprocessing.rst (original) +++ python/trunk/Doc/library/multiprocessing.rst Sat Sep 6 03:20:11 2008 @@ -1861,7 +1861,7 @@ Bear in mind that a process that has put items in a queue will wait before terminating until all the buffered items are fed by the "feeder" thread to the underlying pipe. (The child process can call the - :meth:`Queue.cancel_join` method of the queue to avoid this behaviour.) + :meth:`Queue.cancel_join_thread` method of the queue to avoid this behaviour.) This means that whenever you use a queue you need to make sure that all items which have been put on the queue will eventually be removed before the From python-checkins at python.org Sat Sep 6 04:54:02 2008 From: python-checkins at python.org (skip.montanaro) Date: Sat, 6 Sep 2008 04:54:02 +0200 (CEST) Subject: [Python-checkins] r66245 - in sandbox/trunk/dbm_sqlite: Doc Doc/library Doc/library/dbm.rst Lib Lib/dbm Lib/dbm/sqlite.py Lib/test Lib/test/test_dbm_sqlite.py Message-ID: <20080906025402.F11311E4003@bag.python.org> Author: skip.montanaro Date: Sat Sep 6 04:54:02 2008 New Revision: 66245 Log: Make a sandbox project out of this Added: sandbox/trunk/dbm_sqlite/ sandbox/trunk/dbm_sqlite/Doc/ sandbox/trunk/dbm_sqlite/Doc/library/ sandbox/trunk/dbm_sqlite/Doc/library/dbm.rst (contents, props changed) sandbox/trunk/dbm_sqlite/Lib/ sandbox/trunk/dbm_sqlite/Lib/dbm/ sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py (contents, props changed) sandbox/trunk/dbm_sqlite/Lib/test/ sandbox/trunk/dbm_sqlite/Lib/test/test_dbm_sqlite.py (contents, props changed) Added: sandbox/trunk/dbm_sqlite/Doc/library/dbm.rst ============================================================================== --- (empty file) +++ sandbox/trunk/dbm_sqlite/Doc/library/dbm.rst Sat Sep 6 04:54:02 2008 @@ -0,0 +1,325 @@ +:mod:`dbm` --- Interfaces to Unix "databases" +============================================= + +.. module:: dbm + :synopsis: Interfaces to various Unix "database" formats. + +:mod:`dbm` is a generic interface to variants of the DBM database --- +:mod:`dbm.bsd` (requires :mod:`bsddb`), :mod:`dbm.gnu`, or :mod:`dbm.ndbm`. If +none of these modules is installed, the slow-but-simple implementation in module +:mod:`dbm.dumb` will be used. + + +.. exception:: error + + A tuple containing the exceptions that can be raised by each of the supported + modules, with a unique exception also named :exc:`dbm.error` as the first + item --- the latter is used when :exc:`dbm.error` is raised. + + +.. function:: whichdb(filename) + + This functionattempts to guess which of the several simple database modules + available --- :mod:`dbm.bsd`, :mod:`dbm.gnu`, :mod:`dbm.ndbm` or + :mod:`dbm.dumb` --- should be used to open a given file. + + Returns one of the following values: ``None`` if the file can't be opened + because it's unreadable or doesn't exist; the empty string (``''``) if the + file's format can't be guessed; or a string containing the required module + name, such as ``'dbm.ndbm'`` or ``'dbm.gnu'``. + + +.. function:: open(filename[, flag[, mode]]) + + Open the database file *filename* and return a corresponding object. + + If the database file already exists, the :func:`whichdb` function is used to + determine its type and the appropriate module is used; if it does not exist, + the first module listed above that can be imported is used. + + The optional *flag* argument can be ``'r'`` to open an existing database for + reading only, ``'w'`` to open an existing database for reading and writing, + ``'c'`` to create the database if it doesn't exist, or ``'n'``, which will + always create a new empty database. If not specified, the default value is + ``'r'``. + + The optional *mode* argument is the Unix mode of the file, used only when the + database has to be created. It defaults to octal ``0o666`` (and will be + modified by the prevailing umask). + + +The object returned by :func:`open` supports most of the same functionality as +dictionaries; keys and their corresponding values can be stored, retrieved, and +deleted, and the :keyword:`in` operator and the :meth:`keys` method are +available. Keys and values must always be strings. + +The following example records some hostnames and a corresponding title, and +then prints out the contents of the database:: + + import dbm + + # Open database, creating it if necessary. + db = dbm.open('cache', 'c') + + # Record some values + db['www.python.org'] = 'Python Website' + db['www.cnn.com'] = 'Cable News Network' + + # Loop through contents. Other dictionary methods + # such as .keys(), .values() also work. + for k, v in db.iteritems(): + print(k, '\t', v) + + # Storing a non-string key or value will raise an exception (most + # likely a TypeError). + db['www.yahoo.com'] = 4 + + # Close when done. + db.close() + + +.. seealso:: + + Module :mod:`shelve` + Persistence module which stores non-string data. + + +The individual submodules are described in the following sections. + + +:mod:`dbm.gnu` --- GNU's reinterpretation of dbm +------------------------------------------------ + +.. module:: dbm.gnu + :platform: Unix + :synopsis: GNU's reinterpretation of dbm. + + +This module is quite similar to the :mod:`dbm` module, but uses the GNU library +``gdbm`` instead to provide some additional functionality. Please note that the +file formats created by ``gdbm`` and ``dbm`` are incompatible. + +The :mod:`dbm.gnu` module provides an interface to the GNU DBM library. +``gdbm`` objects behave like mappings (dictionaries), except that keys and +values are always strings. Printing a :mod:`dbm.gnu` object doesn't print the +keys and values, and the :meth:`items` and :meth:`values` methods are not +supported. + +.. exception:: error + + Raised on ``gdbm``\ -specific errors, such as I/O errors. :exc:`KeyError` is + raised for general mapping errors like specifying an incorrect key. + + +.. function:: open(filename, [flag, [mode]]) + + Open a ``gdbm`` database and return a :class:`gdbm` object. The *filename* + argument is the name of the database file. + + The optional *flag* argument can be: + + +---------+-------------------------------------------+ + | Value | Meaning | + +=========+===========================================+ + | ``'r'`` | Open existing database for reading only | + | | (default) | + +---------+-------------------------------------------+ + | ``'w'`` | Open existing database for reading and | + | | writing | + +---------+-------------------------------------------+ + | ``'c'`` | Open database for reading and writing, | + | | creating it if it doesn't exist | + +---------+-------------------------------------------+ + | ``'n'`` | Always create a new, empty database, open | + | | for reading and writing | + +---------+-------------------------------------------+ + + The following additional characters may be appended to the flag to control + how the database is opened: + + +---------+--------------------------------------------+ + | Value | Meaning | + +=========+============================================+ + | ``'f'`` | Open the database in fast mode. Writes | + | | to the database will not be synchronized. | + +---------+--------------------------------------------+ + | ``'s'`` | Synchronized mode. This will cause changes | + | | to the database to be immediately written | + | | to the file. | + +---------+--------------------------------------------+ + | ``'u'`` | Do not lock database. | + +---------+--------------------------------------------+ + + Not all flags are valid for all versions of ``gdbm``. The module constant + :const:`open_flags` is a string of supported flag characters. The exception + :exc:`error` is raised if an invalid flag is specified. + + The optional *mode* argument is the Unix mode of the file, used only when the + database has to be created. It defaults to octal ``0o666``. + + In addition to the dictionary-like methods, ``gdbm`` objects have the + following methods: + + .. method:: gdbm.firstkey() + + It's possible to loop over every key in the database using this method and the + :meth:`nextkey` method. The traversal is ordered by ``gdbm``'s internal + hash values, and won't be sorted by the key values. This method returns + the starting key. + + .. method:: gdbm.nextkey(key) + + Returns the key that follows *key* in the traversal. The following code prints + every key in the database ``db``, without having to create a list in memory that + contains them all:: + + k = db.firstkey() + while k != None: + print(k) + k = db.nextkey(k) + + .. method:: gdbm.reorganize() + + If you have carried out a lot of deletions and would like to shrink the space + used by the ``gdbm`` file, this routine will reorganize the database. ``gdbm`` + will not shorten the length of a database file except by using this + reorganization; otherwise, deleted file space will be kept and reused as new + (key, value) pairs are added. + + .. method:: gdbm.sync() + + When the database has been opened in fast mode, this method forces any + unwritten data to be written to the disk. + + +:mod:`dbm.ndbm` --- Interface based on ndbm +------------------------------------------- + +.. module:: dbm.ndbm + :platform: Unix + :synopsis: The standard "database" interface, based on ndbm. + + +The :mod:`dbm.ndbm` module provides an interface to the Unix "(n)dbm" library. +Dbm objects behave like mappings (dictionaries), except that keys and values are +always strings. Printing a dbm object doesn't print the keys and values, and the +:meth:`items` and :meth:`values` methods are not supported. + +This module can be used with the "classic" ndbm interface, the BSD DB +compatibility interface, or the GNU GDBM compatibility interface. On Unix, the +:program:`configure` script will attempt to locate the appropriate header file +to simplify building this module. + +.. exception:: error + + Raised on dbm-specific errors, such as I/O errors. :exc:`KeyError` is raised + for general mapping errors like specifying an incorrect key. + + +.. data:: library + + Name of the ``ndbm`` implementation library used. + + +.. function:: open(filename[, flag[, mode]]) + + Open a dbm database and return a dbm object. The *filename* argument is the + name of the database file (without the :file:`.dir` or :file:`.pag` extensions; + note that the BSD DB implementation of the interface will append the extension + :file:`.db` and only create one file). + + The optional *flag* argument must be one of these values: + + +---------+-------------------------------------------+ + | Value | Meaning | + +=========+===========================================+ + | ``'r'`` | Open existing database for reading only | + | | (default) | + +---------+-------------------------------------------+ + | ``'w'`` | Open existing database for reading and | + | | writing | + +---------+-------------------------------------------+ + | ``'c'`` | Open database for reading and writing, | + | | creating it if it doesn't exist | + +---------+-------------------------------------------+ + | ``'n'`` | Always create a new, empty database, open | + | | for reading and writing | + +---------+-------------------------------------------+ + + The optional *mode* argument is the Unix mode of the file, used only when the + database has to be created. It defaults to octal ``0o666`` (and will be + modified by the prevailing umask). + + + +:mod:`dbm.sqlite` --- Interface based on sqlite3 +------------------------------------------------ + +.. module:: dbm.sqlite + :synopsis: Portable implementation of the simple DBM interface. + + +The :mod:`dbm.sqlite` module provides a dict-like file interface similar to +the other modules in the dbm package, though the underlying file storage is +managed using the sqlite3 module and is thus portable across all platforms +which support the sqlite3 package. dbm.sqlite objects behave like mappings +(dictionaries), except that keys and values are always strings. Printing a +dbm object doesn't print the keys and values. + +.. function:: open(filename[, flag[, mode]]) + + Open a sqlite3 database and return a dbm object. The *filename* argument + is the name of the database file. The flag and mode arguments are + ignored. + + +:mod:`dbm.dumb` --- Portable DBM implementation +----------------------------------------------- + +.. module:: dbm.dumb + :synopsis: Portable implementation of the simple DBM interface. + +.. index:: single: databases + +.. note:: + + The :mod:`dbm.dumb` module is intended as a last resort fallback for the + :mod:`dbm` module when no more robust module is available. The :mod:`dbm.dumb` + module is not written for speed and is not nearly as heavily used as the other + database modules. + +The :mod:`dbm.dumb` module provides a persistent dictionary-like interface which +is written entirely in Python. Unlike other modules such as :mod:`gdbm` and +:mod:`bsddb`, no external library is required. As with other persistent +mappings, the keys and values must always be strings. + +The module defines the following: + + +.. exception:: error + + Raised on dbm.dumb-specific errors, such as I/O errors. :exc:`KeyError` is + raised for general mapping errors like specifying an incorrect key. + + +.. function:: open(filename[, flag[, mode]]) + + Open a dumbdbm database and return a dumbdbm object. The *filename* argument is + the basename of the database file (without any specific extensions). When a + dumbdbm database is created, files with :file:`.dat` and :file:`.dir` extensions + are created. + + The optional *flag* argument is currently ignored; the database is always opened + for update, and will be created if it does not exist. + + The optional *mode* argument is the Unix mode of the file, used only when the + database has to be created. It defaults to octal ``0o666`` (and will be modified + by the prevailing umask). + + In addition to the methods provided by the :class:`collections.MutableMapping` class, + :class:`dumbdbm` objects provide the following method: + + .. method:: dumbdbm.sync() + + Synchronize the on-disk directory and data files. This method is called + by the :meth:`Shelve.sync` method. Added: sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py ============================================================================== --- (empty file) +++ sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py Sat Sep 6 04:54:02 2008 @@ -0,0 +1,120 @@ +""" +A dbm clone using sqlite under the covers. + +XXX TO DO: + +Everything. +""" + +import sqlite3 +import collections + +__all__ = ["error", "open"] + +error = sqlite3.OperationalError + +class _Database(collections.MutableMapping): + def __init__(self, filename, mode): + self._mode = mode + self._filename = filename + self._conn = sqlite3.connect(filename) + self.initialize_table() + + def initialize_table(self): + c = self._conn.cursor() + try: + c.execute("select count(key) from dict") + except sqlite3.OperationalError: + c.execute("""create table dict (key text, value text)""") + self._conn.commit() + finally: + c.close() + + def __getitem__(self, key): + c = self._conn.cursor() + try: + c.execute("select value from dict" + " where key = ?", (key,)) + rows = list(c) + if not rows: + raise KeyError(key) + return rows[0][0] + finally: + c.close() + + def __setitem__(self, key, val): + del self[key] + c = self._conn.cursor() + try: + c.execute("insert into dict" + " (key, value) values (?, ?)", (key, val)) + self._conn.commit() + finally: + c.close() + + def __delitem__(self, key): + c = self._conn.cursor() + try: + c.execute("delete from dict where key = ?", (key,)) + self._conn.commit() + finally: + c.close() + + def keys(self): + c = self._conn.cursor() + try: + c.execute("select key from dict order by key") + return [e[0] for e in c] + finally: + c.close() + + def values(self): + c = self._conn.cursor() + try: + c.execute("select value from dict order by key") + return [e[0] for e in c] + finally: + c.close() + + def items(self): + c = self._conn.cursor() + try: + c.execute("select key, value from dict order by key") + return list(c) + finally: + c.close() + + def __contains__(self, key): + c = self._conn.cursor() + try: + c.execute("select value from dict" + " where key = ?", (key,)) + return not not list(c) + finally: + c.close() + + def iterkeys(self): + return iter(self.keys()) + __iter__ = iterkeys + + def iteritems(self): + return iter(self.items()) + + def itervalues(self): + return iter(self.values()) + + def __len__(self): + c = self._conn.cursor() + try: + c.execute("select count(key) from dict") + return int(list(c)[0]) + finally: + c.close() + + def close(self): + if self._conn is not None: + self._conn.close() + self._conn = None + +def open(file, flag=None, mode=0o666): + return _Database(file, mode) Added: sandbox/trunk/dbm_sqlite/Lib/test/test_dbm_sqlite.py ============================================================================== --- (empty file) +++ sandbox/trunk/dbm_sqlite/Lib/test/test_dbm_sqlite.py Sat Sep 6 04:54:02 2008 @@ -0,0 +1,148 @@ +#! /usr/bin/env python +"""Test script for the dbm.sqlite module + by Skip Montanaro, based on the 3.0 dumbdbm test module. +""" + +import io +import os +import unittest +import dbm.sqlite +from test import support + +_fname = support.TESTFN + +def _delete_files(): + try: + os.unlink(_fname) + except OSError: + pass + +class DbmSQLiteTestCase(unittest.TestCase): + _dict = {'0': b'', + 'a': b'Python:', + 'b': b'Programming', + 'c': b'the', + 'd': b'way', + 'f': b'Guido', + 'g': b'intended', + } + + def test_sqlite_creation(self): + f = dbm.sqlite.open(_fname, 'c') + self.assertEqual(list(f.keys()), []) + for key in self._dict: + f[key.encode("ascii")] = self._dict[key] + self.read_helper(f) + f.close() + + def test_close_twice(self): + f = dbm.sqlite.open(_fname) + f[b'a'] = b'b' + self.assertEqual(f[b'a'], b'b') + f.close() + f.close() + + def test_sqlite_modification(self): + self.init_db() + f = dbm.sqlite.open(_fname, 'w') + self._dict['g'] = f[b'g'] = b"indented" + self.read_helper(f) + f.close() + + def test_sqlite_read(self): + self.init_db() + f = dbm.sqlite.open(_fname, 'r') + self.read_helper(f) + f.close() + + def test_sqlite_keys(self): + self.init_db() + f = dbm.sqlite.open(_fname) + keys = self.keys_helper(f) + f.close() + + def test_write_contains(self): + f = dbm.sqlite.open(_fname) + f[b'1'] = b'hello' + self.assertTrue(b'1' in f) + f.close() + + def test_write_write_read(self): + # test for bug #482460 + f = dbm.sqlite.open(_fname) + f[b'1'] = b'hello' + f[b'1'] = b'hello2' + f.close() + f = dbm.sqlite.open(_fname) + self.assertEqual(f[b'1'], b'hello2') + f.close() + + def read_helper(self, f): + keys = self.keys_helper(f) + for key in self._dict: + self.assertEqual(self._dict[key], f[key.encode("ascii")]) + + def init_db(self): + f = dbm.sqlite.open(_fname, 'w') + for k in self._dict: + f[k.encode("ascii")] = self._dict[k] + f.close() + + def keys_helper(self, f): + keys = sorted(k.decode("ascii") for k in f.keys()) + dkeys = sorted(self._dict.keys()) + self.assertEqual(keys, dkeys) + return keys + + # Perform randomized operations. This doesn't make assumptions about + # what *might* fail. + def test_random(self): + import random + d = {} # mirror the database + for dummy in range(5): + f = dbm.sqlite.open(_fname) + for dummy in range(100): + k = random.choice('abcdefghijklm') + if random.random() < 0.2: + if k in d: + del d[k] + del f[k.encode("ascii")] + else: + v = (random.choice((b'a', b'b', b'c')) * + random.randrange(100)) + d[k] = v + f[k.encode("ascii")] = v + if not (d[k], v == f[k.encode("ascii")] == d[k]): + print("v:", v, "f[k]:", f[k.encode("ascii")], + "d[k]:") + self.assertEqual(f[k.encode("ascii")], v) + f.close() + + f = dbm.sqlite.open(_fname) + expected = sorted((k.encode("latin-1"), v) for k, v in d.items()) + got = sorted(f.items()) + self.assertEqual(expected, got) + f.close() + + def test_keys_values_items(self): + f = dbm.sqlite.open(_fname, 'c') + self.assertEqual(list(f.keys()), []) + for key in self._dict: + f[key.encode("ascii")] = self._dict[key] + self.assertEqual(list(zip(f.keys(), f.values())), + f.items()) + f.close() + def tearDown(self): + _delete_files() + + def setUp(self): + _delete_files() + +def test_main(): + try: + support.run_unittest(DbmSQLiteTestCase) + finally: + _delete_files() + +if __name__ == "__main__": + test_main() From python-checkins at python.org Sat Sep 6 05:00:00 2008 From: python-checkins at python.org (benjamin.peterson) Date: Sat, 6 Sep 2008 05:00:00 +0200 (CEST) Subject: [Python-checkins] r66246 - python/trunk/Doc/library/2to3.rst Message-ID: <20080906030000.D34B51E4003@bag.python.org> Author: benjamin.peterson Date: Sat Sep 6 05:00:00 2008 New Revision: 66246 Log: actually tell the name of the flag to use Modified: python/trunk/Doc/library/2to3.rst Modified: python/trunk/Doc/library/2to3.rst ============================================================================== --- python/trunk/Doc/library/2to3.rst (original) +++ python/trunk/Doc/library/2to3.rst Sat Sep 6 05:00:00 2008 @@ -42,7 +42,7 @@ $ 2to3 -w example.py -After transformation :file:`example.py` looks like this:: +After transformation, :file:`example.py` looks like this:: def greet(name): print("Hello, {0}!".format(name)) @@ -79,12 +79,12 @@ The :option:`-v` option enables the output of more information on the translation process. -2to3 can also treat ``print`` as a function instead of a statement in the -grammar. This is useful when ``from __future__ import print_function`` is being -used. If this option is not given, the print fixer will surround print calls in -an extra set of parentheses because it cannot differentiate between the and -print statement with parentheses (such as ``print ("a" + "b" + "c")``) and a -true function call. +When the :option:`-p` is passed to it, 2to3 treats ``print`` as a function +instead of a statement. This is useful when ``from __future__ import +print_function`` is being used. If this option is not given, the print fixer +will surround print calls in an extra set of parentheses because it cannot +differentiate between the and print statement with parentheses (such as ``print +("a" + "b" + "c")``) and a true function call. :mod:`lib2to3` - 2to3's library From python-checkins at python.org Sat Sep 6 05:07:46 2008 From: python-checkins at python.org (skip.montanaro) Date: Sat, 6 Sep 2008 05:07:46 +0200 (CEST) Subject: [Python-checkins] r66247 - sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py Message-ID: <20080906030746.E7ED51E4003@bag.python.org> Author: skip.montanaro Date: Sat Sep 6 05:07:46 2008 New Revision: 66247 Log: Reverse the def's of the iter* methods and their list counterparts. I'm a bit suspicious of not closing the cursor before returning from the iter* methods. Maybe someone with more experience here can provide some guidance. Modified: sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py Modified: sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py ============================================================================== --- sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py (original) +++ sandbox/trunk/dbm_sqlite/Lib/dbm/sqlite.py Sat Sep 6 05:07:46 2008 @@ -60,29 +60,21 @@ finally: c.close() - def keys(self): + def iterkeys(self): c = self._conn.cursor() - try: - c.execute("select key from dict order by key") - return [e[0] for e in c] - finally: - c.close() + c.execute("select key from dict order by key") + return (e[0] for e in c) + __iter__ = iterkeys - def values(self): + def itervalues(self): c = self._conn.cursor() - try: - c.execute("select value from dict order by key") - return [e[0] for e in c] - finally: - c.close() + c.execute("select value from dict order by key") + return (e[0] for e in c) - def items(self): + def iteritems(self): c = self._conn.cursor() - try: - c.execute("select key, value from dict order by key") - return list(c) - finally: - c.close() + c.execute("select key, value from dict order by key") + return (e for e in c) def __contains__(self, key): c = self._conn.cursor() @@ -93,15 +85,14 @@ finally: c.close() - def iterkeys(self): - return iter(self.keys()) - __iter__ = iterkeys + def keys(self): + return list(self.iterkeys()) - def iteritems(self): - return iter(self.items()) + def items(self): + return list(self.iteritems()) - def itervalues(self): - return iter(self.values()) + def values(self): + return list(self.itervalues()) def __len__(self): c = self._conn.cursor() From buildbot at python.org Sat Sep 6 09:49:35 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 07:49:35 +0000 Subject: [Python-checkins] buildbot failure in amd64 XP 3.0 Message-ID: <20080906074935.E13951E4003@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/289 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: hirokazu.yamamoto BUILD FAILED: failed failed slave lost sincerely, -The Buildbot From buildbot at python.org Sat Sep 6 10:34:12 2008 From: buildbot at python.org (buildbot at python.org) Date: Sat, 06 Sep 2008 08:34:12 +0000 Subject: [Python-checkins] buildbot failure in sparc solaris10 gcc 3.0 Message-ID: <20080906083412.7E0141E4003@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/516 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: hirokazu.yamamoto BUILD FAILED: failed test Excerpt from the test logfile: 3 tests failed: test_distutils test_posix test_subprocess ====================================================================== FAIL: test_get_python_inc (distutils.tests.test_sysconfig.SysconfigTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/distutils/tests/test_sysconfig.py", line 43, in test_get_python_inc self.assert_(os.path.isdir(inc_dir), inc_dir) AssertionError: /home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/Include ====================================================================== ERROR: test_getcwd_long_pathnames (test.test_posix.PosixTester) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_posix.py", line 252, in test_getcwd_long_pathnames support.rmtree(base_path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/support.py", line 98, in rmtree shutil.rmtree(path) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 225, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/shutil.py", line 223, in rmtree os.rmdir(path) OSError: [Errno 22] Invalid argument: '/home2/buildbot/slave/3.0.loewis-sun/build/@test.getcwd/@test.getcwd' ====================================================================== FAIL: test_executable (test.test_subprocess.ProcessTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home2/buildbot/slave/3.0.loewis-sun/build/Lib/test/test_subprocess.py", line 115, in test_executable self.assertEqual(p.returncode, 47) AssertionError: -6 != 47 sincerely, -The Buildbot From python-checkins at python.org Sat Sep 6 14:50:05 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 6 Sep 2008 14:50:05 +0200 (CEST) Subject: [Python-checkins] r66249 - python/trunk/Doc/whatsnew/2.6.rst Message-ID: <20080906125005.8D07F1E4018@bag.python.org> Author: andrew.kuchling Date: Sat Sep 6 14:50:05 2008 New Revision: 66249 Log: Various corrections 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 Sep 6 14:50:05 2008 @@ -63,7 +63,7 @@ usages that will become unsupported in 3.0. Some significant new packages have been added to the standard library, -such as the :mod:`multiprocessing` and :mod:`jsonlib` modules, but +such as the :mod:`multiprocessing` and :mod:`json` modules, but there aren't many new features that aren't related to Python 3.0 in some way. @@ -2014,16 +2014,16 @@ others, the missing values are set to *fillvalue*. For example:: itertools.izip_longest([1,2,3], [1,2,3,4,5]) -> - [(1, 1), (2, 2), (3, 3), (None, 4), (None, 5)] + (1, 1), (2, 2), (3, 3), (None, 4), (None, 5) ``product(iter1, iter2, ..., [repeat=N])`` returns the Cartesian product of the supplied iterables, a set of tuples containing every possible combination of the elements returned from each iterable. :: itertools.product([1,2,3], [4,5,6]) -> - [(1, 4), (1, 5), (1, 6), + (1, 4), (1, 5), (1, 6), (2, 4), (2, 5), (2, 6), - (3, 4), (3, 5), (3, 6)] + (3, 4), (3, 5), (3, 6) The optional *repeat* keyword argument is used for taking the product of an iterable or a set of iterables with themselves, @@ -2031,39 +2031,39 @@ are returned:: itertools.product([1,2], repeat=3) -> - [(1, 1, 1), (1, 1, 2), (1, 2, 1), (1, 2, 2), - (2, 1, 1), (2, 1, 2), (2, 2, 1), (2, 2, 2)] + (1, 1, 1), (1, 1, 2), (1, 2, 1), (1, 2, 2), + (2, 1, 1), (2, 1, 2), (2, 2, 1), (2, 2, 2) With two iterables, *2N*-tuples are returned. :: itertools.product([1,2], [3,4], repeat=2) -> - [(1, 3, 1, 3), (1, 3, 1, 4), (1, 3, 2, 3), (1, 3, 2, 4), + (1, 3, 1, 3), (1, 3, 1, 4), (1, 3, 2, 3), (1, 3, 2, 4), (1, 4, 1, 3), (1, 4, 1, 4), (1, 4, 2, 3), (1, 4, 2, 4), (2, 3, 1, 3), (2, 3, 1, 4), (2, 3, 2, 3), (2, 3, 2, 4), - (2, 4, 1, 3), (2, 4, 1, 4), (2, 4, 2, 3), (2, 4, 2, 4)] + (2, 4, 1, 3), (2, 4, 1, 4), (2, 4, 2, 3), (2, 4, 2, 4) ``combinations(iterable, r)`` returns sub-sequences of length *r* from the elements of *iterable*. :: itertools.combinations('123', 2) -> - [('1', '2'), ('1', '3'), ('2', '3')] + ('1', '2'), ('1', '3'), ('2', '3') itertools.combinations('123', 3) -> - [('1', '2', '3')] + ('1', '2', '3') itertools.combinations('1234', 3) -> - [('1', '2', '3'), ('1', '2', '4'), ('1', '3', '4'), - ('2', '3', '4')] + ('1', '2', '3'), ('1', '2', '4'), ('1', '3', '4'), + ('2', '3', '4') ``permutations(iter[, r])`` returns all the permutations of length *r* of the iterable's elements. If *r* is not specified, it will default to the number of elements produced by the iterable. :: itertools.permutations([1,2,3,4], 2) -> - [(1, 2), (1, 3), (1, 4), + (1, 2), (1, 3), (1, 4), (2, 1), (2, 3), (2, 4), (3, 1), (3, 2), (3, 4), - (4, 1), (4, 2), (4, 3)] + (4, 1), (4, 2), (4, 3) ``itertools.chain(*iterables)`` is an existing function in :mod:`itertools` that gained a new constructor in Python 2.6. @@ -2073,7 +2073,7 @@ all the elements of the second, and so on. :: chain.from_iterable([[1,2,3], [4,5,6]]) -> - [1, 2, 3, 4, 5, 6] + 1, 2, 3, 4, 5, 6 (All contributed by Raymond Hettinger.) From python-checkins at python.org Sat Sep 6 15:04:02 2008 From: python-checkins at python.org (andrew.kuchling) Date: Sat, 6 Sep 2008 15:04:02 +0200 (CEST) Subject: [Python-checkins] r66250 - python/trunk/Doc/library/optparse.rst Message-ID: <20080906130402.5271F1E4003@bag.python.org> Author: andrew.kuchling Date: Sat Sep 6 15:04:02 2008 New Revision: 66250 Log: #3040: include 'dest' argument in example; trim some trailing whitespace Modified: python/trunk/Doc/library/optparse.rst Modified: python/trunk/Doc/library/optparse.rst ============================================================================== --- python/trunk/Doc/library/optparse.rst (original) +++ python/trunk/Doc/library/optparse.rst Sat Sep 6 15:04:02 2008 @@ -96,7 +96,7 @@ ``sys.argv[1:]``, or of some other list provided as a substitute for ``sys.argv[1:]``". -option +option an argument used to supply extra information to guide or customize the execution of a program. There are many different syntaxes for options; the traditional Unix syntax is a hyphen ("-") followed by a single letter, e.g. ``"-x"`` or @@ -468,7 +468,7 @@ action="store_true", dest="verbose", default=True, help="make lots of noise [default]") parser.add_option("-q", "--quiet", - action="store_false", dest="verbose", + action="store_false", dest="verbose", help="be vewwy quiet (I'm hunting wabbits)") parser.add_option("-f", "--filename", metavar="FILE", help="write output to FILE"), @@ -1637,7 +1637,7 @@ setattr(parser.values, option.dest, value) [...] - parser.add_option("-c", "--callback", + parser.add_option("-c", "--callback", dest="vararg_attr", action="callback", callback=vararg_callback) The main weakness with this particular implementation is that negative numbers From python-checkins at python.org Sat Sep 6 18:26:27 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 6 Sep 2008 18:26:27 +0200 (CEST) Subject: [Python-checkins] r66251 - in doctools/trunk: CHANGES sphinx/locale/cs/LC_MESSAGES/sphinx.mo sphinx/locale/de/LC_MESSAGES/sphinx.mo sphinx/locale/fr/LC_MESSAGES/sphinx.mo sphinx/locale/pl sphinx/locale/pl/LC_MESSAGES sphinx/locale/pl/LC_MESSAGES/sphinx.mo sphinx/locale/pl/LC_MESSAGES/sphinx.po Message-ID: <20080906162627.C40721E4003@bag.python.org> Author: georg.brandl Date: Sat Sep 6 18:26:27 2008 New Revision: 66251 Log: Add polish locale, thanks to Michal Kandulski. Added: doctools/trunk/sphinx/locale/pl/ doctools/trunk/sphinx/locale/pl/LC_MESSAGES/ doctools/trunk/sphinx/locale/pl/LC_MESSAGES/sphinx.mo (contents, props changed) doctools/trunk/sphinx/locale/pl/LC_MESSAGES/sphinx.po (contents, props changed) Modified: doctools/trunk/CHANGES doctools/trunk/sphinx/locale/cs/LC_MESSAGES/sphinx.mo doctools/trunk/sphinx/locale/de/LC_MESSAGES/sphinx.mo doctools/trunk/sphinx/locale/fr/LC_MESSAGES/sphinx.mo Modified: doctools/trunk/CHANGES ============================================================================== --- doctools/trunk/CHANGES (original) +++ doctools/trunk/CHANGES Sat Sep 6 18:26:27 2008 @@ -15,7 +15,8 @@ ``language`` and ``locale_dirs`` config values. Many thanks to Horst Gutmann, who also contributed German as the first language. A Czech translation was provided by Pavel Kosina. A French - translation was provided by David Larlet. + translation was provided by David Larlet. A Polish translation + was provided by Micha? Kandulski. * Added a distutils command `build_sphinx`: When Sphinx is installed, you can call ``python setup.py build_sphinx`` for projects that Modified: doctools/trunk/sphinx/locale/cs/LC_MESSAGES/sphinx.mo ============================================================================== Binary files doctools/trunk/sphinx/locale/cs/LC_MESSAGES/sphinx.mo (original) and doctools/trunk/sphinx/locale/cs/LC_MESSAGES/sphinx.mo Sat Sep 6 18:26:27 2008 differ Modified: doctools/trunk/sphinx/locale/de/LC_MESSAGES/sphinx.mo ============================================================================== Binary files. No diff available. Modified: doctools/trunk/sphinx/locale/fr/LC_MESSAGES/sphinx.mo ============================================================================== Binary files. No diff available. Added: doctools/trunk/sphinx/locale/pl/LC_MESSAGES/sphinx.mo ============================================================================== Binary file. No diff available. Added: doctools/trunk/sphinx/locale/pl/LC_MESSAGES/sphinx.po ============================================================================== --- (empty file) +++ doctools/trunk/sphinx/locale/pl/LC_MESSAGES/sphinx.po Sat Sep 6 18:26:27 2008 @@ -0,0 +1,555 @@ +msgid "" +msgstr "" +"Project-Id-Version: sphinx\n" +"Report-Msgid-Bugs-To: EMAIL at ADDRESS\n" +"POT-Creation-Date: 2008-08-10 11:43+0000\n" +"PO-Revision-Date: \n" +"Last-Translator: Micha? Kandulski \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Polish\n" +"X-Poedit-Country: POLAND\n" +"X-Poedit-SourceCharset: utf-8\n" +"X-Poedit-Basepath: c:\\Python25\\Lib\\site-packages\\Sphinx-0.5dev_20080905-py2.5.egg\n" + +#: sphinx/builder.py:391 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d %Y" + +#: sphinx/builder.py:410 +#: sphinx/templates/defindex.html:21 +msgid "General Index" +msgstr "Indeks og?lny" + +#: sphinx/builder.py:410 +msgid "index" +msgstr "indeks" + +#: sphinx/builder.py:412 +#: sphinx/htmlhelp.py:155 +#: sphinx/templates/defindex.html:19 +#: sphinx/templates/modindex.html:2 +#: sphinx/templates/modindex.html:12 +msgid "Global Module Index" +msgstr "Indeks modu??w" + +#: sphinx/builder.py:412 +msgid "modules" +msgstr "modu?y" + +#: sphinx/builder.py:448 +msgid "next" +msgstr "dalej" + +#: sphinx/builder.py:455 +msgid "previous" +msgstr "wstecz" + +#: sphinx/builder.py:1089 +msgid "Builtins" +msgstr "Wbudowane" + +#: sphinx/builder.py:1091 +msgid "Module level" +msgstr "Poziom modu?u" + +#: sphinx/environment.py:108 +#: sphinx/latexwriter.py:114 +#, python-format +msgid "%B %d, %Y" +msgstr "%B %d %Y" + +#: sphinx/htmlwriter.py:73 +msgid "Permalink to this definition" +msgstr "Sta?y odno?nik do tej definicji" + +#: sphinx/htmlwriter.py:379 +msgid "Permalink to this headline" +msgstr "Sta?y odno?nik do tego nag??wka" + +#: sphinx/latexwriter.py:128 +msgid "Release" +msgstr "Wydanie" + +#: sphinx/latexwriter.py:171 +msgid "Module index" +msgstr "Indeks modu??w" + +#: sphinx/latexwriter.py:173 +#: sphinx/templates/genindex-single.html:2 +#: sphinx/templates/genindex-split.html:2 +#: sphinx/templates/genindex-split.html:5 +#: sphinx/templates/genindex.html:2 +#: sphinx/templates/genindex.html:5 +#: sphinx/templates/genindex.html:48 +msgid "Index" +msgstr "Indeks" + +#: sphinx/roles.py:52 +#: sphinx/roles.py:55 +#: sphinx/directives/desc.py:519 +#, python-format +msgid "environment variable; %s" +msgstr "zmienna ?rodowiskowa; %s" + +#: sphinx/roles.py:61 +#: sphinx/roles.py:64 +#, python-format +msgid "Python Enhancement Proposals!PEP %s" +msgstr "Python Enhancement Proposals!PEP %s" + +#: sphinx/textwriter.py:151 +#, python-format +msgid "Platform: %s" +msgstr "Platforma: %s" + +#: sphinx/textwriter.py:353 +msgid "[image]" +msgstr "[image]" + +#: sphinx/directives/desc.py:26 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (funkcja wbudowana)" + +#: sphinx/directives/desc.py:27 +#: sphinx/directives/desc.py:41 +#: sphinx/directives/desc.py:53 +#, python-format +msgid "%s() (in module %s)" +msgstr "%s() (w module %s)" + +#: sphinx/directives/desc.py:30 +#, python-format +msgid "%s (built-in variable)" +msgstr "%s (zmienna wbudowana)" + +#: sphinx/directives/desc.py:31 +#: sphinx/directives/desc.py:65 +#, python-format +msgid "%s (in module %s)" +msgstr "%s (w module %s)" + +#: sphinx/directives/desc.py:33 +#, python-format +msgid "%s (class in %s)" +msgstr "%s (w klasie %s)" + +#: sphinx/directives/desc.py:45 +#, python-format +msgid "%s() (%s.%s method)" +msgstr "%s() (%s.%s metoda)" + +#: sphinx/directives/desc.py:47 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metoda)" + +#: sphinx/directives/desc.py:57 +#, python-format +msgid "%s() (%s.%s static method)" +msgstr "%s() (%s.%s statyczna metoda)" + +#: sphinx/directives/desc.py:59 +#, python-format +msgid "%s() (%s static method)" +msgstr "%s() (%s statyczna metoda)" + +#: sphinx/directives/desc.py:69 +#, python-format +msgid "%s (%s.%s attribute)" +msgstr "%s (%s.%s atrybut)" + +#: sphinx/directives/desc.py:71 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (%s atrybut)" + +#: sphinx/directives/desc.py:73 +#, python-format +msgid "%s (C function)" +msgstr "%s (funkcja C)" + +#: sphinx/directives/desc.py:75 +#, python-format +msgid "%s (C member)" +msgstr "%s (pole C)" + +#: sphinx/directives/desc.py:77 +#, python-format +msgid "%s (C macro)" +msgstr "%s (makro C)" + +#: sphinx/directives/desc.py:79 +#, python-format +msgid "%s (C type)" +msgstr "%s (typ C)" + +#: sphinx/directives/desc.py:81 +#, python-format +msgid "%s (C variable)" +msgstr "%s (zmienna C)" + +#: sphinx/directives/desc.py:99 +msgid "Raises" +msgstr "Wyrzuca" + +#: sphinx/directives/desc.py:103 +msgid "Variable" +msgstr "Zmienna" + +#: sphinx/directives/desc.py:106 +msgid "Returns" +msgstr "Zwraca" + +#: sphinx/directives/desc.py:113 +msgid "Return type" +msgstr "Typ zwracany" + +#: sphinx/directives/desc.py:140 +msgid "Parameters" +msgstr "Parametry" + +#: sphinx/directives/desc.py:402 +#: sphinx/directives/desc.py:404 +#, python-format +msgid "command line option; %s" +msgstr "opcja linii komend; %s" + +#: sphinx/directives/other.py:102 +msgid "Platforms: " +msgstr "Platformy: " + +#: sphinx/directives/other.py:107 +#, python-format +msgid "%s (module)" +msgstr "%s (modu?)" + +#: sphinx/directives/other.py:148 +msgid "Section author: " +msgstr "Autor rozdzia?u: " + +#: sphinx/directives/other.py:150 +msgid "Module author: " +msgstr "Autor modu?u: " + +#: sphinx/directives/other.py:152 +msgid "Author: " +msgstr "Autor: " + +#: sphinx/directives/other.py:238 +msgid "See also" +msgstr "Zobacz tak?e" + +#: sphinx/locale/__init__.py:15 +msgid "Attention" +msgstr "Uwaga" + +#: sphinx/locale/__init__.py:16 +msgid "Caution" +msgstr "Ostro?nie" + +#: sphinx/locale/__init__.py:17 +msgid "Danger" +msgstr "Niebezpiecze?stwo" + +#: sphinx/locale/__init__.py:18 +msgid "Error" +msgstr "B??d" + +#: sphinx/locale/__init__.py:19 +msgid "Hint" +msgstr "Podpowied?" + +#: sphinx/locale/__init__.py:20 +msgid "Important" +msgstr "Wa?ne" + +#: sphinx/locale/__init__.py:21 +msgid "Note" +msgstr "Uwaga" + +#: sphinx/locale/__init__.py:22 +msgid "See Also" +msgstr "Zobacz tak?e" + +#: sphinx/locale/__init__.py:23 +msgid "Tip" +msgstr "Wskaz?wka" + +#: sphinx/locale/__init__.py:24 +msgid "Warning" +msgstr "Ostrze?enie" + +#: sphinx/locale/__init__.py:28 +#, python-format +msgid "New in version %s" +msgstr "Nowe w wersji %s" + +#: sphinx/locale/__init__.py:29 +#, python-format +msgid "Changed in version %s" +msgstr "Zmienione w wersji %s" + +#: sphinx/locale/__init__.py:30 +#, python-format +msgid "Deprecated since version %s" +msgstr "Niezalecane od wersji %s" + +#: sphinx/locale/__init__.py:34 +msgid "module" +msgstr "modu?" + +#: sphinx/locale/__init__.py:35 +msgid "keyword" +msgstr "s?owo kluczowe" + +#: sphinx/locale/__init__.py:36 +msgid "operator" +msgstr "operator" + +#: sphinx/locale/__init__.py:37 +msgid "object" +msgstr "obiekt" + +#: sphinx/locale/__init__.py:38 +msgid "exception" +msgstr "wyj?tek" + +#: sphinx/locale/__init__.py:39 +msgid "statement" +msgstr "instrukcja" + +#: sphinx/locale/__init__.py:40 +msgid "built-in function" +msgstr "funkcja wbudowana" + +#: sphinx/templates/defindex.html:2 +msgid "Overview" +msgstr "Przegl?d" + +#: sphinx/templates/defindex.html:11 +msgid "Indices and tables:" +msgstr "Indeksy i tablice:" + +#: sphinx/templates/defindex.html:14 +msgid "Complete Table of Contents" +msgstr "Kompletny spis tre?ci" + +#: sphinx/templates/defindex.html:15 +msgid "lists all sections and subsections" +msgstr "wymie? wszystkie rozdzia?y i podrozdzia?y" + +#: sphinx/templates/defindex.html:16 +msgid "Search page" +msgstr "Szukanie" + +#: sphinx/templates/defindex.html:17 +msgid "search this documentation" +msgstr "wyszukaj w dokumentacji" + +#: sphinx/templates/defindex.html:20 +msgid "quick access to all modules" +msgstr "szybki dost?p do wszystkich modu??w" + +#: sphinx/templates/defindex.html:22 +msgid "all functions, classes, terms" +msgstr "wszystkie funkcje, klasy, terminy" + +#: sphinx/templates/genindex-single.html:5 +#, python-format +msgid "Index – %(key)s" +msgstr "Indeks – %(key)s" + +#: sphinx/templates/genindex-single.html:44 +#: sphinx/templates/genindex-split.html:14 +#: sphinx/templates/genindex-split.html:27 +#: sphinx/templates/genindex.html:54 +msgid "Full index on one page" +msgstr "Ca?y indeks na jednej stronie" + +#: sphinx/templates/genindex-split.html:7 +msgid "Index pages by letter" +msgstr "Strony indeksu alfabetycznie" + +#: sphinx/templates/genindex-split.html:15 +msgid "can be huge" +msgstr "mo?e by? ogromny" + +#: sphinx/templates/layout.html:9 +msgid "Navigation" +msgstr "Nawigacja" + +#: sphinx/templates/layout.html:40 +msgid "Table Of Contents" +msgstr "Spis tre?ci" + +#: sphinx/templates/layout.html:46 +msgid "Previous topic" +msgstr "Poprzedni temat" + +#: sphinx/templates/layout.html:47 +msgid "previous chapter" +msgstr "poprzedni rozdzia?" + +#: sphinx/templates/layout.html:50 +msgid "Next topic" +msgstr "Nast?pny temat" + +#: sphinx/templates/layout.html:51 +msgid "next chapter" +msgstr "nast?pny rozdzia?" + +#: sphinx/templates/layout.html:55 +msgid "This Page" +msgstr "Ta strona" + +#: sphinx/templates/layout.html:59 +msgid "Suggest Change" +msgstr "Zasugeruj zmian?" + +#: sphinx/templates/layout.html:60 +#: sphinx/templates/layout.html:62 +msgid "Show Source" +msgstr "Poka? ?r?d?o" + +#: sphinx/templates/layout.html:71 +msgid "Quick search" +msgstr "Szybkie wyszukiwanie" + +#: sphinx/templates/layout.html:71 +msgid "Keyword search" +msgstr "Szukanie wg s?owa kluczowego" + +#: sphinx/templates/layout.html:73 +msgid "Go" +msgstr "Szukaj" + +#: sphinx/templates/layout.html:78 +msgid "Enter a module, class or function name." +msgstr "Wprowad? nazw? modu?u, klasy lub funkcji." + +#: sphinx/templates/layout.html:118 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Szukaj po?r?d %(docstitle)s" + +#: sphinx/templates/layout.html:127 +msgid "About these documents" +msgstr "O tych dokumentach" + +#: sphinx/templates/layout.html:129 +msgid "Global table of contents" +msgstr "Globalny spis tre?ci" + +#: sphinx/templates/layout.html:130 +msgid "Global index" +msgstr "Globalny indeks" + +#: sphinx/templates/layout.html:131 +#: sphinx/templates/search.html:2 +#: sphinx/templates/search.html:5 +msgid "Search" +msgstr "Szukaj" + +#: sphinx/templates/layout.html:133 +msgid "Copyright" +msgstr "Copyright" + +#: sphinx/templates/layout.html:178 +#, python-format +msgid "© Copyright %(copyright)s." +msgstr "© Copyright %(copyright)s." + +#: sphinx/templates/layout.html:180 +#, python-format +msgid "© Copyright %(copyright)s." +msgstr "© Copyright %(copyright)s." + +#: sphinx/templates/layout.html:183 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Ostatnia modyfikacja %(last_updated)s." + +#: sphinx/templates/layout.html:186 +#, python-format +msgid "Created using Sphinx %(sphinx_version)s." +msgstr "Utworzone przy pomocy Sphinx'a %(sphinx_version)s." + +#: sphinx/templates/modindex.html:14 +msgid "Most popular modules:" +msgstr "Najbardziej popularne modu?y:" + +#: sphinx/templates/modindex.html:23 +msgid "Show modules only available on these platforms" +msgstr "Poka? modu?y dost?pne tylko na tych platformach" + +#: sphinx/templates/modindex.html:55 +msgid "Deprecated" +msgstr "Niezalecane" + +#: sphinx/templates/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Przeszukaj %(docstitle)s" + +#: sphinx/templates/page.html:8 +msgid "Note: You requested an out-of-date URL from this server. We've tried to redirect you to the new location of this page, but it may not be the right one." +msgstr "Uwaga: You requested an out-of-date URL from this server. We've tried to redirect you to the new location of this page, but it may not be the right one.Za??da?e? przedawnionego URL'a z tego serwera. Nast?pi?a pr?ba przekierowania do nowej lokalizacji, ale mo?e ona by? niew?a?ciwa" + +#: sphinx/templates/search.html:7 +msgid "" +"From here you can search these documents. Enter your search\n" +" words into the box below and click \"search\". Note that the search\n" +" function will automatically search for all of the words. Pages\n" +" containing less words won't appear in the result list." +msgstr "" +"St?d mo?esz przeszuka? dokumentacj?. Wprowad? szukane\n" +" s?owa w poni?szym okienku i kliknij \"Szukaj\". Zwr?? uwag?, ?e\n" +" funkcja szukaj?ca b?dzie automatycznie szuka?a wszystkich s??w. Strony\n" +" nie zawieraj?ce wszystkich s??w nie znajd? si? na wynikowej li?cie." + +#: sphinx/templates/search.html:14 +msgid "search" +msgstr "Szukaj" + +#: sphinx/templates/search.html:18 +msgid "Search Results" +msgstr "Wyniki wyszukiwania" + +#: sphinx/templates/search.html:20 +msgid "Your search did not match any results." +msgstr "Nie znaleziono ?adnych pasuj?cych stron." + +#: sphinx/templates/changes/frameset.html:5 +#: sphinx/templates/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "Zmiany w wesji %(version)s — %(docstitle)s" + +#: sphinx/templates/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + +#: sphinx/templates/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Automatycznie wygenerowana lista zmian w wersji %(version)s" + +#: sphinx/templates/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "Zmiany w bibliotekach" + +#: sphinx/templates/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "Zmiany w C API" + +#: sphinx/templates/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "Inne zmiany" + + From python-checkins at python.org Sat Sep 6 18:38:19 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 6 Sep 2008 18:38:19 +0200 (CEST) Subject: [Python-checkins] r66252 - in doctools/branches/0.4.x: CHANGES sphinx/templates/genindex-single.html sphinx/templates/genindex-split.html sphinx/templates/genindex.html sphinx/templates/modindex.html sphinx/templates/search.html Message-ID: <20080906163819.7DD741E4003@bag.python.org> Author: georg.brandl Date: Sat Sep 6 18:38:19 2008 New Revision: 66252 Log: Properly call ``super()`` in overridden blocks in builtin templates, even if the blocks are empty in the builtin layout.html they may contain something in an overridden one. Modified: doctools/branches/0.4.x/CHANGES doctools/branches/0.4.x/sphinx/templates/genindex-single.html doctools/branches/0.4.x/sphinx/templates/genindex-split.html doctools/branches/0.4.x/sphinx/templates/genindex.html doctools/branches/0.4.x/sphinx/templates/modindex.html doctools/branches/0.4.x/sphinx/templates/search.html Modified: doctools/branches/0.4.x/CHANGES ============================================================================== --- doctools/branches/0.4.x/CHANGES (original) +++ doctools/branches/0.4.x/CHANGES Sat Sep 6 18:38:19 2008 @@ -1,6 +1,8 @@ Release 0.4.3 (in development) ============================== +* Properly call ``super()`` in overridden blocks in templates. + * Add a fix when using XeTeX. * Unify handling of LaTeX escaping. Modified: doctools/branches/0.4.x/sphinx/templates/genindex-single.html ============================================================================== --- doctools/branches/0.4.x/sphinx/templates/genindex-single.html (original) +++ doctools/branches/0.4.x/sphinx/templates/genindex-single.html Sat Sep 6 18:38:19 2008 @@ -42,4 +42,5 @@ {%- endfor %}

Full index on one page

+{{ super() }} {% endblock %} Modified: doctools/branches/0.4.x/sphinx/templates/genindex-split.html ============================================================================== --- doctools/branches/0.4.x/sphinx/templates/genindex-split.html (original) +++ doctools/branches/0.4.x/sphinx/templates/genindex-split.html Sat Sep 6 18:38:19 2008 @@ -26,4 +26,5 @@

Full index on one page

{% endif %} + {{ super() }} {% endblock %} Modified: doctools/branches/0.4.x/sphinx/templates/genindex.html ============================================================================== --- doctools/branches/0.4.x/sphinx/templates/genindex.html (original) +++ doctools/branches/0.4.x/sphinx/templates/genindex.html Sat Sep 6 18:38:19 2008 @@ -53,4 +53,5 @@

Full index on one page

{% endif %} + {{ super() }} {% endblock %} Modified: doctools/branches/0.4.x/sphinx/templates/modindex.html ============================================================================== --- doctools/branches/0.4.x/sphinx/templates/modindex.html (original) +++ doctools/branches/0.4.x/sphinx/templates/modindex.html Sat Sep 6 18:38:19 2008 @@ -1,6 +1,7 @@ {% extends "layout.html" %} {% set title = 'Global Module Index' %} {% block extrahead %} +{{ super() }} {% if collapse_modindex %} {% endblock %} {% block body %} From python-checkins at python.org Sat Sep 6 18:38:37 2008 From: python-checkins at python.org (georg.brandl) Date: Sat, 6 Sep 2008 18:38:37 +0200 (CEST) Subject: [Python-checkins] r66253 - in doctools/trunk/sphinx/templates: genindex-single.html genindex-split.html genindex.html modindex.html Message-ID: <20080906163837.86E9E1E4003@bag.python.org> Author: georg.brandl Date: Sat Sep 6 18:38:37 2008 New Revision: 66253 Log: Properly call ``super()`` in overridden blocks in builtin templates, even if the blocks are empty in the builtin layout.html they may contain something in an overridden one. Modified: doctools/trunk/sphinx/templates/genindex-single.html doctools/trunk/sphinx/templates/genindex-split.html doctools/trunk/sphinx/templates/genindex.html doctools/trunk/sphinx/templates/modindex.html Modified: doctools/trunk/sphinx/templates/genindex-single.html ============================================================================== --- doctools/trunk/sphinx/templates/genindex-single.html (original) +++ doctools/trunk/sphinx/templates/genindex-single.html Sat Sep 6 18:38:37 2008 @@ -42,4 +42,5 @@ {%- endfor %}

{{ _('Full index on one page') }}

+ {{ super() }} {% endblock %} Modified: doctools/trunk/sphinx/templates/genindex-split.html ============================================================================== --- doctools/trunk/sphinx/templates/genindex-split.html (original) +++ doctools/trunk/sphinx/templates/genindex-split.html Sat Sep 6 18:38:37 2008 @@ -26,4 +26,5 @@

{{ _('Full index on one page') }}

{% endif %} + {{ super() }} {% endblock %} Modified: doctools/trunk/sphinx/templates/genindex.html ============================================================================== --- doctools/trunk/sphinx/templates/genindex.html (original) +++ doctools/trunk/sphinx/templates/genindex.html Sat Sep 6 18:38:37 2008 @@ -53,4 +53,5 @@

{{ _('Full index on one page') }}

{% endif %} + {{ super() }} {% endblock %} Modified: doctools/trunk/sphinx/templates/modindex.html ============================================================================== --- doctools/trunk/sphinx/templates/modindex.html (original) +++ doctools/trunk/sphinx/templates/modindex.html Sat Sep 6 18:38:37 2008 @@ -1,6 +1,7 @@ {% extends "layout.html" %} {% set title = _('Global Module Index') %} {% block extrahead %} +{{ super() }} {% if builder != 'htmlhelp' and collapse_modindex %}