Skip to content

Commit

Permalink
[FIX] base: add compatiblity with python 3.8
Browse files Browse the repository at this point in the history
Partial backport of aeb1e59 to 11.0

Without this commit, trying to access a QWeb page (e.g. the login
page), was failing during the compilation as missing the argument
posonlyargs.

Traceback (most recent call last):
  File ".../odoo/addons/base/ir/ir_qweb/qweb.py", line 329, in compile
    unsafe_eval(compile(astmod, '<template>', 'exec'), ns)
TypeError: required field "posonlyargs" missing from arguments

Error when compiling AST
TypeError: required field "posonlyargs" missing from arguments

ast.arguments does no validation but the compilation do

closes #40422

X-original-commit: 04893ed
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
  • Loading branch information
mart-e authored and fw-bot committed Nov 18, 2019
1 parent 52a17f2 commit 1449998
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion odoo/addons/base/models/qweb.py
Expand Up @@ -109,6 +109,7 @@ def visit_Lambda(self, node):
# handle that cross-version
kwonlyargs=[],
kw_defaults=[],
posonlyargs=[],
),
body=Contextifier(self._safe_names + tuple(names)).visit(node.body)
), node)
Expand Down Expand Up @@ -554,7 +555,7 @@ def _create_def(self, options, body, prefix='fn', lineno=None):
arg(arg='values', annotation=None),
arg(arg='options', annotation=None),
arg(arg='log', annotation=None),
], defaults=[], vararg=None, kwarg=None, kwonlyargs=[], kw_defaults=[]),
], defaults=[], vararg=None, kwarg=None, posonlyargs=[], kwonlyargs=[], kw_defaults=[]),
body=body or [ast.Return()],
decorator_list=[])
if lineno is not None:
Expand Down

0 comments on commit 1449998

Please sign in to comment.