[PATCH 2 of 2 V2] revset: skip old style lookup if external whitespace are detected
Yuya Nishihara
yuya at tcha.org
Wed Apr 11 11:16:51 EDT 2018
On Wed, 11 Apr 2018 11:36:05 +0200, Feld Boris wrote:
> >> The proposal here is to define a prefix for which we break backward
> >> compatibility. If we do so, people with a "<set>" label will have to use:
> >>
> >> "<set>":whatever
> >>
> >> to get a similar effect.
> > IIRC x:y was the most important syntax that needed a strong BC guarantee, so
> > this proposal doesn't sound good.
>
> Indeed, the `x:y` is important and we don't want to break the BC
> guarantee of it.
>
> The proposal is less impacting, only people using 'set' as labels and
> using it at the beginning of a revsetwould be impacted. This prefix has
> the advantage of being concise and coherent with whatfilesetuse.
Doesn't '-r set:foo' look like a range?
I don't like an idea of introducing another ambiguous syntax to resolve
ambiguity, but furthermore "set:foo" seems confusing to humans.
IIUC, we have "set:" for filesets only because that's the syntax to specify
file patterns. If we really want to add something to force revset evaluation,
I think it has to be compatible with the current syntax, such as "(EXPR)" or
"revset(EXPR)".
> > Since "foo(bar)" needs quotes in revset query (except for x and x:y), it would
> > makes some sense to add an option to disable the compatibility hack at all.
>
> We cannot see a way to make the config option both easily discoverable
> and constrained. There is lot of labels that includes `-`, `+` and other
> symbols that will be impacted.
sigh.
More information about the Mercurial-devel
mailing list