[PATCH 3 of 4 V3] revset: use and explicit loop to resolve each spec
Boris Feld
boris.feld at octobus.net
Wed Apr 11 05:50:16 EDT 2018
# HG changeset patch
# User Boris Feld <boris.feld at octobus.net>
# Date 1523367822 -7200
# Tue Apr 10 15:43:42 2018 +0200
# Node ID b52727111f7f17524fd8e8982af59b5f372cc7c3
# Parent 00090d394d4e0a7c2637f161493353530dcf739d
# EXP-Topic noname
# Available At https://bitbucket.org/octobus/mercurial-devel/
# hg pull https://bitbucket.org/octobus/mercurial-devel/ -r b52727111f7f
revset: use and explicit loop to resolve each spec
This is useful to clarify the next changeset.
diff --git a/mercurial/revset.py b/mercurial/revset.py
--- a/mercurial/revset.py
+++ b/mercurial/revset.py
@@ -2190,14 +2190,17 @@ def matchany(ui, specs, repo=None, local
return mfunc
if not all(specs):
raise error.ParseError(_("empty query"))
+
lookup = None
if repo and legacycompat:
lookup = lookupfn(repo)
- if len(specs) == 1:
- tree = revsetlang.parse(specs[0], lookup)
+ parsedspecs = []
+ for s in specs:
+ parsedspecs.append(revsetlang.parse(s, lookup))
+ if len(parsedspecs) == 1:
+ tree = parsedspecs[0]
else:
- tree = ('or',
- ('list',) + tuple(revsetlang.parse(s, lookup) for s in specs))
+ tree = ('or', ('list',) + tuple(parsedspecs))
aliases = []
warn = None
More information about the Mercurial-devel
mailing list