[Bug 5764] New: .^:: gives "hg: parse error at 4: not a prefix: end"

mercurial-bugs at mercurial-scm.org mercurial-bugs at mercurial-scm.org
Thu Dec 28 17:04:42 EST 2017


https://bz.mercurial-scm.org/show_bug.cgi?id=5764

            Bug ID: 5764
           Summary: .^:: gives "hg: parse error at 4: not a prefix: end"
           Product: Mercurial
           Version: default branch
          Hardware: PC
                OS: Linux
            Status: UNCONFIRMED
          Severity: feature
          Priority: wish
         Component: revset
          Assignee: bugzilla at mercurial-scm.org
          Reporter: hg at pewpew.net
                CC: mercurial-devel at mercurial-scm.org

≻ hg version
Mercurial Distributed SCM (version 4.4.2+390-b963750b125f)
(see https://mercurial-scm.org for more information)

Copyright (C) 2005-2017 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Broken version:
≻ ./hg log -r '.^::' -T '{shortest(node,8)}\n' 
hg: parse error at 4: not a prefix: end


Working versions:
≻ ./hg log -r '(.^)::' -T '{shortest(node,8)}\n'
8bb90cc4
b378a3d8

≻ ./hg log -r '.^::all()' -T '{shortest(node,8)}\n' 
8bb90cc4
b378a3d8

≻ ./hg log -r '.^::.' -T '{shortest(node,8)}\n' 
8bb90cc4
b378a3d8


I assume what's happening is that ^ is being interpreted before the ::, so hg
is parsing this as (.)^(::), i.e. x^n where x=., n=::, and not like (.^)::,
i.e. x::y, where x=.^ and y is unspecified.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list