Mercurial > p > roundup > code
view roundup/anypy/dbm_.py @ 4521:abd2db0a159a
Fix StringIO issue2550713:
- io.StringIO in newer versions of python
returns unicode strings and expects a unicode string in the
constructor. Unfortunately csv doesn't handle unicode (yet). So we
need to use a BytesIO which gets the utf-8 string from the
web-interface. Compatibility for old versions by using
Stringio.Stringio for emulating a io.BytesIO also works.
- We didn't have a regression test for the EditCSVAction
| author | Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net> |
|---|---|
| date | Fri, 15 Jul 2011 12:36:47 +0000 |
| parents | 0d9369d35483 |
| children | d5da643b3d25 |
line wrap: on
line source
# In Python 3 the "anydbm" module was renamed to be "dbm" which is now a # package containing the various implementations. The "wichdb" module's # whichdb() function was moved to the new "dbm" module. import sys if sys.version_info[:2] < (2, 6): def key_in(db, key): return db.has_key(key) else: def key_in(db, key): return key in db try: # old school first because <3 had a "dbm" module too... import anydbm from whichdb import whichdb except ImportError: # python 3+ import dbm as anydbm whichdb = anydbm.whichdb
