diff options
author | Barry Warsaw <barry@python.org> | 2003-02-08 03:18:58 (GMT) |
---|---|---|
committer | Barry Warsaw <barry@python.org> | 2003-02-08 03:18:58 (GMT) |
commit | 9914227caa4f25b7442ea82cd6feab68821bb011 (patch) | |
tree | a26c22ef86bb8379b60d8c6ec4e6979ba8d1d041 /Lib/bsddb | |
parent | 07534a607bd3d2fd232323811a83279acda10885 (diff) | |
download | cpython-9914227caa4f25b7442ea82cd6feab68821bb011.zip cpython-9914227caa4f25b7442ea82cd6feab68821bb011.tar.gz cpython-9914227caa4f25b7442ea82cd6feab68821bb011.tar.bz2 |
Fix compatibility for earlier versions of Python (than 2.3), which
doesn't have UserDict.DictMixin.
Diffstat (limited to 'Lib/bsddb')
-rw-r--r-- | Lib/bsddb/dbobj.py | 7 | ||||
-rw-r--r-- | Lib/bsddb/dbshelve.py | 13 |
2 files changed, 15 insertions, 5 deletions
diff --git a/Lib/bsddb/dbobj.py b/Lib/bsddb/dbobj.py index f274d56..889e554 100644 --- a/Lib/bsddb/dbobj.py +++ b/Lib/bsddb/dbobj.py @@ -16,7 +16,12 @@ # import db -from UserDict import DictMixin + +try: + from UserDict import DictMixin +except ImportError: + # DictMixin is new in Python 2.3 + class DictMixin: pass class DBEnv: def __init__(self, *args, **kwargs): diff --git a/Lib/bsddb/dbshelve.py b/Lib/bsddb/dbshelve.py index 34dc607..efaa003 100644 --- a/Lib/bsddb/dbshelve.py +++ b/Lib/bsddb/dbshelve.py @@ -30,7 +30,11 @@ storage. #------------------------------------------------------------------------ import cPickle -from UserDict import DictMixin +try: + from UserDict import DictMixin +except ImportError: + # DictMixin is new in Python 2.3 + class DictMixin: pass try: # For Python 2.3 from bsddb import db @@ -77,8 +81,7 @@ def open(filename, flags=db.DB_CREATE, mode=0660, filetype=db.DB_HASH, #--------------------------------------------------------------------------- class DBShelf(DictMixin): - """ - A shelf to hold pickled objects, built upon a bsddb DB object. It + """A shelf to hold pickled objects, built upon a bsddb DB object. It automatically pickles/unpickles data objects going to/from the DB. """ def __init__(self, dbenv=None): @@ -91,7 +94,9 @@ class DBShelf(DictMixin): def __getattr__(self, name): - """Many methods we can just pass through to the DB object. (See below)""" + """Many methods we can just pass through to the DB object. + (See below) + """ return getattr(self.db, name) |