summaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
authorxmo-odoo <xmo@odoo.com>2017-05-10 09:39:55 +0200
committerGitHub <noreply@github.com>2017-05-10 09:39:55 +0200
commitfffaf735f58f1ac57781c095eb552de6d1fcdc47 (patch)
tree88ab0ab65430d871862a836524e0ecc890d1674d /setup.py
parent10eee18a047d35305dc46282e610e88936d81ffc (diff)
[FIX] P3: list -> iterable builtins (#16811)
In Python 3: * various builtins and dict methods were changed to return view/iterable objects rather than lists * and the separate Python 2 view/iterable builtins and methods were removed altogether This is problematic when using these items as list (which the happens repeatedly in Odoo), but more viciously when iterating *multiple times* over them (which also happens, which I've messed up multiple times while writing this, and which is a pain to debug even when you've just created the issue). Convert all code using these to semantics-matching cross-version helper functions to get the LCD behaviour between P2 and P3, and forbid the builtins via lint. issue #8530
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/setup.py b/setup.py
index 2fce5faa39d..465f40b1f0a 100644
--- a/setup.py
+++ b/setup.py
@@ -24,9 +24,9 @@ def py2exe_datafiles():
import babel
data_files['babel/localedata'] = glob(join(dirname(babel.__file__), 'localedata', '*'))
others = ['global.dat', 'numbers.py', 'support.py', 'plural.py']
- data_files['babel'] = map(lambda f: join(dirname(babel.__file__), f), others)
+ data_files['babel'] = [join(dirname(babel.__file__), f) for f in others]
others = ['frontend.py', 'mofile.py']
- data_files['babel/messages'] = map(lambda f: join(dirname(babel.__file__), 'messages', f), others)
+ data_files['babel/messages'] = [join(dirname(babel.__file__), 'messages', f) for f in others]
import pytz
tzdir = dirname(pytz.__file__)
@@ -51,7 +51,7 @@ def py2exe_datafiles():
for f in filenames
if not f.endswith(('.py', '.pyc', '.pyo'))]
- return data_files.items()
+ return list(data_files.items())
def py2exe_options():
@@ -128,7 +128,7 @@ setup(
url=url,
author=author,
author_email=author_email,
- classifiers=filter(None, classifiers.split('\n')),
+ classifiers=[c for c in classifiers.split('\n') if c],
license=license,
scripts=['setup/odoo'],
packages=find_packages(),