mercurial/templates/map-cmdline.compact
author Pierre-Yves David <pierre-yves.david@octobus.net>
Wed, 01 Mar 2023 02:38:20 +0100
branchstable
changeset 49700 379a78001d8e
parent 34714 f4aeb952ab77
permissions -rw-r--r--
dirstate: set identity whenever we read the dirstate's v2 docket The docket can be loaded outside of a full read (for exemple when pre-fetching parents), so the current code would read/set the identity after loading the data, opening a race condition: A0: first process docket is read B0: other process appends new data to the dirstate (and changes the docket) A1: first process sets the identity (based on pre-B content, but with post-B identity) A1: first process loads the dirstatemap from the data file A1: first process does not detect the race and overwrites the update from B.

[templates]
ldate = '{label("log.date",
                "{date|isodate}")}'

ldesc = '{label('ui.note log.description',
                      '{desc|strip}')}'
ldescfirst = '{label('ui.note log.description',
                     '{desc|firstline|strip}')}'

changeset = '{lrev}{tags}{bookmarks}{parents}   {lnode}   {ldate}   {luser}\n  {ldescfirst}\n\n'
changeset_quiet = '{lrev}:{lnode}\n'
changeset_verbose = '{lrev}{tags}{parents}   {lnode}   {ldate}   {lauthor}\n  {ldesc}\n\n'
lrev = '{label("log.changeset changeset.{phase}",
              "{rev}")}'
lnode = '{label("log.node",
                "{node|short}")}'
lauthor = '{label("log.user",
                  "{author}")}'
luser = '{label("log.user",
                "{author|user}")}'
start_tags = '['
tag = '{label("log.tag",
              "{tag},")}'
last_tag = '{tag}]'
start_parents = ':'
parent = '{lrev},'
last_parent = '{lrev}'
start_bookmarks = '['
bookmark = '{label("log.bookmark",
                   "{bookmark},")}'
last_bookmark = '{bookmark}]'