# HG changeset patch # User Denis Laxalde # Date 1508264743 -7200 # Node ID eb24f1d1b50be7898dbb1a571ed9666021ae6a6d # Parent eb1b964b354bd90c45097d5b6310767ce61ab2a5 show: use labelcset() template alias for work (and stack) views By reusing labelcset() template alias from map-cmdline.default we can now display obsolescence information in `hg show work/stack`. diff -r eb1b964b354b -r eb24f1d1b50b mercurial/templates/map-cmdline.show --- a/mercurial/templates/map-cmdline.show Wed Oct 18 12:19:53 2017 -0500 +++ b/mercurial/templates/map-cmdline.show Tue Oct 17 20:25:43 2017 +0200 @@ -1,8 +1,8 @@ # TODO there are a few deficiencies in this file: # * The "namespace" of the labels needs to be worked out. We currently # piggyback on existing values so color works. -# * Obsolescence isn't considered for node labels. See _cset_labels in -# map-cmdline.default. + +%include map-cmdline.default [templates] showbookmarks = '{if(active, "*", " ")} {pad(bookmark, longestbookmarklen + 4)}{shortest(node, nodelen)}\n' @@ -10,7 +10,7 @@ showwork = '{cset_shortnode}{namespaces % cset_namespace} {cset_shortdesc}' showstack = '{showwork}' -cset_shortnode = '{label("log.changeset changeset.{phase}", shortest(node, nodelen))}' +cset_shortnode = '{labelcset(shortest(node, nodelen))}' # Treat branch and tags specially so we don't display "default" or "tip" cset_namespace = '{ifeq(namespace, "branches", names_branches, ifeq(namespace, "tags", names_tags, names_others))}' diff -r eb1b964b354b -r eb24f1d1b50b tests/test-show-work.t --- a/tests/test-show-work.t Wed Oct 18 12:19:53 2017 -0500 +++ b/tests/test-show-work.t Tue Oct 17 20:25:43 2017 +0200 @@ -234,6 +234,20 @@ o 6a75 (r1) commit 2 o 97fc (r0) commit 1 +Obsolescence information appears in labels. + + $ cat >> .hg/hgrc << EOF + > [experimental] + > evolution=createmarkers + > EOF + $ hg debugobsolete `hg log -r 'desc("commit 2")' -T "{node}"` + obsoleted 1 changesets + $ hg show work --color=debug + @ [log.changeset changeset.draft changeset.unstable instability.orphan|32f3] [log.description|commit 3] + x [log.changeset changeset.draft changeset.obsolete|6a75] [log.description|commit 2] + | + ~ + $ cd .. Prefix collision on hashes increases shortest node length