##// END OF EJS Templates
scmutil: accept multiple predecessors in 'replacements' (API)...
scmutil: accept multiple predecessors in 'replacements' (API) This changeset makes 'cleanupnodes' accepts multiple predecessors as `replacements` keys. The same as it accepts multiple successors as `replacements` values. To avoid breaking all callers, the old and new ways are currently valid at the same time. We'll deprecate and drop the old way later. This change is the first step toward a better tracking of "fold" event in the evolution history. While working on the "rewind" command (in the evolve extension), we realized that first class tracking of folds are necessary. We already have good tracking of splits. When walking the evolution history from predecessors to successors, that makes for a clear distinction between having multiple successors because of the actual splitting of a changeset or content-divergences. The "rewind" command allows restoring older evolution of a stack of changesets. One of its mode walks the evolution history to automatically find appropriate predecessors. This means walking from successors to predecessors. In this case, we need to be able to make the same distinction between an actual fold and other cases. So we will have to track folds explicitly. This changesets only focus on making it possible to express fold at the `cleanupnodes` API level. The actual tracking will be implemented later.

File last commit:

r39406:46f3ff64 default
r39927:b9990353 default
Show More
map-cmdline.default
91 lines | 3.5 KiB | text/plain | TextLexer
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 # Base templates. Due to name clashes with existing keywords, we have
# to replace some keywords with 'lkeyword', for 'labelled keyword'
Yuya Nishihara
templater: load template fragments from [templates] section in map file...
r34715
[templates]
Yuya Nishihara
templates: rename "user" to "luser" defined in default map file (API)...
r38982 changeset = '{cset}{branches}{bookmarks}{tags}{parents}{luser}{ldate}{ltroubles}{lobsfate}{summary}\n'
Yuya Nishihara
templates: fix "log -q" output of default style...
r24304 changeset_quiet = '{lnode}'
Yuya Nishihara
templates: rename "user" to "luser" defined in default map file (API)...
r38982 changeset_verbose = '{cset}{branches}{bookmarks}{tags}{parents}{luser}{ldate}{ltroubles}{lobsfate}{lfiles}{lfile_copies_switch}{description}\n'
changeset_debug = '{fullcset}{branches}{bookmarks}{tags}{lphase}{parents}{manifest}{luser}{ldate}{ltroubles}{lobsfate}{lfile_mods}{lfile_adds}{lfile_dels}{lfile_copies_switch}{extras}{description}\n'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
# File templates
lfiles = '{if(files,
label("ui.note log.files",
"files: {files}\n"))}'
lfile_mods = '{if(file_mods,
label("ui.debug log.files",
"files: {file_mods}\n"))}'
lfile_adds = '{if(file_adds,
label("ui.debug log.files",
"files+: {file_adds}\n"))}'
lfile_dels = '{if(file_dels,
label("ui.debug log.files",
"files-: {file_dels}\n"))}'
lfile_copies_switch = '{if(file_copies_switch,
label("ui.note log.copies",
"copies: {file_copies_switch
% ' {name} ({source})'}\n"))}'
# General templates
Yuya Nishihara
templates: introduce labelcset() function in map-cmdline.default as example
r34717 cset = '{labelcset("changeset: {rev}:{node|short}")}\n'
fullcset = '{labelcset("changeset: {rev}:{node}")}\n'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
lphase = '{label("log.phase",
"phase: {phase}")}\n'
parent = '{label("log.parent changeset.{phase}",
"parent: {rev}:{node|formatnode}")}\n'
Yuya Nishihara
templates: fix "log -q" output of default style...
r24304 lnode = '{label("log.node",
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 "{rev}:{node|short}")}\n'
manifest = '{label("ui.debug log.manifest",
"manifest: {rev}:{node}")}\n'
branch = '{label("log.branch",
"branch: {branch}")}\n'
tag = '{label("log.tag",
"tag: {tag}")}\n'
bookmark = '{label("log.bookmark",
"bookmark: {bookmark}")}\n'
Yuya Nishihara
templates: rename "user" to "luser" defined in default map file (API)...
r38982 luser = '{label("log.user",
"user: {author}")}\n'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
Yuya Nishihara
templates-default: do not show description or summary if empty...
r24637 summary = '{if(desc|strip, "{label('log.summary',
'summary: {desc|firstline}')}\n")}'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
ldate = '{label("log.date",
"date: {date|date}")}\n'
Boris Feld
label: rename log.trouble into log.instability...
r33778 ltroubles = '{if(instabilities, "{label('log.instability',
Boris Feld
template: rename troubles templatekw into instabilities...
r33675 'instability: {join(instabilities, ", ")}')}\n")}'
Denis Laxalde
templates: display evolution "troubles" in command line style
r30713
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 extra = '{label("ui.debug log.extra",
"extra: {key}={value|stringescape}")}\n'
Yuya Nishihara
templates-default: do not show description or summary if empty...
r24637 description = '{if(desc|strip, "{label('ui.note log.description',
'description:')}
{label('ui.note log.description',
'{desc|strip}')}\n\n")}'
Matt Mackall
templates: add a default template style for status...
r25514
Yuya Nishihara
status: rename {copy} to {source} for compatibility with {file_copies} (BC)...
r39406 status = '{status} {path|relpath}\n{if(source, " {source|relpath}\n")}'
Yuya Nishihara
templates: introduce labelcset() function in map-cmdline.default as example
r34717
Boris Feld
obsfate: add obsfate to default mapfile...
r34854 # Obsfate templates, it would be removed once we introduce the obsfate
# template fragment
Boris Feld
obsfate: rename obsfate into obsolete in default mapfile...
r34902 lobsfate = '{if(obsfate, "{label('log.obsfate', '{obsfate % "obsolete: {fate}\n"}')}")}'
Boris Feld
obsfate: add obsfate to default mapfile...
r34854
Yuya Nishihara
templates: introduce labelcset() function in map-cmdline.default as example
r34717 [templatealias]
labelcset(expr) = label(separate(" ",
"log.changeset",
"changeset.{phase}",
if(obsolete, "changeset.obsolete"),
if(instabilities, "changeset.unstable"),
Yuya Nishihara
templates: fix missed space between instability labels
r34718 join(instabilities
% "instability.{instability}", " ")),
Yuya Nishihara
templates: introduce labelcset() function in map-cmdline.default as example
r34717 expr)