From 6f79679ab8e9869552adfd9ef1f29f6574743976 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Hajdan=2C=20Jr?= Date: Fri, 2 Jun 2017 08:40:06 +0200 Subject: [PATCH] gclient validate: allow "recursion" setting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's still used in some places like CDM. This fixes the bug below. Bug: 728343 Change-Id: I0f9e2bbd0339838ee6d1d240c584858947cf36d2 Reviewed-on: https://chromium-review.googlesource.com/522682 Commit-Queue: Paweł Hajdan Jr. Reviewed-by: Emma Soederberg --- gclient_eval.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gclient_eval.py b/gclient_eval.py index b8ed31c70..8df68f6cc 100644 --- a/gclient_eval.py +++ b/gclient_eval.py @@ -70,6 +70,9 @@ _GCLIENT_SCHEMA = schema.Schema({ # Hooks executed before processing DEPS. See 'hooks' for more details. schema.Optional('pre_deps_hooks'): _GCLIENT_HOOKS_SCHEMA, + # Recursion limit for nested DEPS. + schema.Optional('recursion'): int, + # Whitelists deps for which recursion should be enabled. schema.Optional('recursedeps'): [ schema.Optional(schema.Or( @@ -111,6 +114,8 @@ def _gclient_eval(node_or_string, global_scope, filename=''): def _convert(node): if isinstance(node, ast.Str): return node.s + elif isinstance(node, ast.Num): + return node.n elif isinstance(node, ast.Tuple): return tuple(map(_convert, node.elts)) elif isinstance(node, ast.List):