Mercurial > p > roundup > code
view roundup/anypy/sets_.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 | 06af6d5bedbe |
| children |
line wrap: on
line source
""" anypy.sets_: sets compatibility module uses the built-in type 'set' if available, and thus avoids deprecation warnings. Simple usage: Change all from sets import Set to from roundup.anypy.sets_ import set and use 'set' instead of 'Set'. To avoid unnecessary imports, you can: try: set except NameError: from roundup.anypy.sets_ import set see: http://docs.python.org/library/sets.html#comparison-to-the-built-in-set-types """ try: set = set # built-in since Python 2.4 except (NameError, TypeError): from sets import Set as set # deprecated as of Python 2.6 # vim: ts=8 sts=4 sw=4 si et
