Mercurial > p > roundup > code
annotate roundup/dist/command/build_py.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 | e233d7a66343 |
| children |
| rev | line source |
|---|---|
| 4068 | 1 # |
| 2 # Copyright (C) 2009 Stefan Seefeld | |
| 3 # All rights reserved. | |
| 4 # For license terms see the file COPYING.txt. | |
| 5 # | |
| 6 from distutils.command.build_py import build_py | |
| 7 | |
| 8 class build_py(build_py): | |
| 9 | |
| 10 def find_modules(self): | |
| 11 # Files listed in py_modules are in the toplevel directory | |
| 12 # of the source distribution. | |
| 13 modules = [] | |
| 14 for module in self.py_modules: | |
| 15 path = module.split('.') | |
| 16 package = '.'.join(path[0:-1]) | |
| 17 module_base = path[-1] | |
| 18 module_file = module_base + '.py' | |
| 19 if self.check_module(module, module_file): | |
| 20 modules.append((package, module_base, module_file)) | |
| 21 return modules | |
| 22 | |
| 23 |
