[PATCH 3 of 4 V2] graphmod: use different styles for different edge types

Martijn Pieters mj at zopatista.com
Fri Mar 4 15:47:05 EST 2016


# HG changeset patch
# User Martijn Pieters <mjpieters at fb.com>
# Date 1457102672 0
#      Fri Mar 04 14:44:32 2016 +0000
# Node ID 794d4e68aa4fcfc2da23bfd71ba1294eb82e37c3
# Parent  ddeb44b0971f0c34b23f5f541c5d9a0b8c6c5892
graphmod: use different styles for different edge types

Rather than always draw edges as solid lines, use dotted lines for edges that
do not connect to a parent, and dashed lines when connecting to a grandparent
(implying missing nodes in between).

This is part of the work towards moving smartlog upstream; currently smartlog
injects extra nodes into the graph to indicate grandparent relationships (nodes
elided).

diff --git a/mercurial/graphmod.py b/mercurial/graphmod.py
--- a/mercurial/graphmod.py
+++ b/mercurial/graphmod.py
@@ -31,6 +31,7 @@
 PARENT = 'P'
 GRANDPARENT = 'G'
 MISSINGPARENT = 'M'
+EDGES = {PARENT: '|', GRANDPARENT: ':', MISSINGPARENT: '.'}
 
 def groupbranchiter(revs, parentsfunc, firstbranch=()):
     """Yield revisions from heads to roots one (topo) branch at a time.
@@ -390,11 +391,13 @@
             knownparents.append(parent)
         else:
             newparents.append(parent)
+            state['edges'][parent] = EDGES.get(ptype, '|')
 
     ncols = len(seen)
     nextseen = seen[:]
     nextseen[nodeidx:nodeidx + 1] = newparents
-    edges = [(nodeidx, nextseen.index(p)) for p in knownparents if p != nullrev]
+    edges = [(nodeidx, nextseen.index(p))
+             for p in knownparents if p != nullrev]
 
     while len(newparents) > 2:
         # ascii() only knows how to add or remove a single column between two
@@ -418,6 +421,8 @@
         edges.append((nodeidx, nodeidx + 1))
     nmorecols = len(nextseen) - ncols
     seen[:] = nextseen
+    # remove current node from edge characters, no longer needed
+    state['edges'].pop(rev, None)
     yield (type, char, lines, (nodeidx, edges, ncols, nmorecols))
 
 def _fixlongrightedges(edges):
@@ -426,27 +431,28 @@
             edges[i] = (start, end + 1)
 
 def _getnodelineedgestail(
-        node_index, p_node_index, n_columns, n_columns_diff, p_diff, fix_tail):
-    if fix_tail and n_columns_diff == p_diff and n_columns_diff != 0:
+        echars, idx, pidx, ncols, coldiff, pdiff, fix_tail):
+    if fix_tail and coldiff == pdiff and coldiff != 0:
         # Still going in the same non-vertical direction.
-        if n_columns_diff == -1:
-            start = max(node_index + 1, p_node_index)
-            tail = ["|", " "] * (start - node_index - 1)
-            tail.extend(["/", " "] * (n_columns - start))
+        if coldiff == -1:
+            start = max(idx + 1, pidx)
+            tail = echars[idx * 2:(start - 1) * 2]
+            tail.extend(["/", " "] * (ncols - start))
             return tail
         else:
-            return ["\\", " "] * (n_columns - node_index - 1)
+            return ["\\", " "] * (ncols - idx - 1)
     else:
-        return ["|", " "] * (n_columns - node_index - 1)
+        remainder = (ncols - idx - 1)
+        return echars[-(remainder * 2):] if remainder > 0 else []
 
-def _drawedges(edges, nodeline, interline):
+def _drawedges(echars, edges, nodeline, interline):
     for (start, end) in edges:
         if start == end + 1:
             interline[2 * end + 1] = "/"
         elif start == end - 1:
             interline[2 * start + 1] = "\\"
         elif start == end:
-            interline[2 * start] = "|"
+            interline[2 * start] = echars[2 * start]
         else:
             if 2 * end >= len(nodeline):
                 continue
@@ -457,26 +463,29 @@
                 if nodeline[i] != "+":
                     nodeline[i] = "-"
 
-def _getpaddingline(ni, n_columns, edges):
-    line = []
-    line.extend(["|", " "] * ni)
-    if (ni, ni - 1) in edges or (ni, ni) in edges:
-        # (ni, ni - 1)      (ni, ni)
+def _getpaddingline(echars, idx, ncols, edges):
+    # all edges up to the current node
+    line = echars[:idx * 2]
+    # an edge for the current node, if there is one
+    if (idx, idx - 1) in edges or (idx, idx) in edges:
+        # (idx, idx - 1)      (idx, idx)
         # | | | |           | | | |
         # +---o |           | o---+
-        # | | c |           | c | |
+        # | | X |           | X | |
         # | |/ /            | |/ /
         # | | |             | | |
-        c = "|"
+        line.extend(echars[idx * 2:(idx + 1) * 2])
     else:
-        c = " "
-    line.extend([c, " "])
-    line.extend(["|", " "] * (n_columns - ni - 1))
+        line.extend('  ')
+    # all edges to the right of the current node
+    remainder = ncols - idx - 1
+    if remainder > 0:
+        line.extend(echars[-(remainder * 2):])
     return line
 
 def asciistate():
     """returns the initial value for the "state" argument to ascii()"""
-    return {'seen': [], 'lastcoldiff': 0, 'lastindex': 0}
+    return {'seen': [], 'edges': {}, 'lastcoldiff': 0, 'lastindex': 0}
 
 def ascii(ui, state, type, char, text, coldata):
     """prints an ASCII graph of the DAG
@@ -498,9 +507,15 @@
         in the current revision. That is: -1 means one column removed;
         0 means no columns added or removed; 1 means one column added.
     """
-
     idx, edges, ncols, coldiff = coldata
     assert -2 < coldiff < 2
+
+    edgemap, seen = state['edges'], state['seen']
+    # Be tolerant of history issues; make sure we have at least ncols + coldiff
+    # elements to work with. See test-glog.t for broken history test cases.
+    echars = [c for p in seen for c in (edgemap.get(p, '|'), ' ')]
+    echars.extend(('|', ' ') * max(ncols + coldiff - len(seen), 0))
+
     if coldiff == -1:
         # Transform
         #
@@ -530,35 +545,33 @@
     fix_nodeline_tail = len(text) <= 2 and not add_padding_line
 
     # nodeline is the line containing the node character (typically o)
-    nodeline = ["|", " "] * idx
+    nodeline = echars[:idx * 2]
     nodeline.extend([char, " "])
 
     nodeline.extend(
-        _getnodelineedgestail(idx, state['lastindex'], ncols, coldiff,
-                              state['lastcoldiff'], fix_nodeline_tail))
+        _getnodelineedgestail(
+            echars, idx, state['lastindex'], ncols, coldiff,
+            state['lastcoldiff'], fix_nodeline_tail))
 
     # shift_interline is the line containing the non-vertical
     # edges between this entry and the next
-    shift_interline = ["|", " "] * idx
+    shift_interline = echars[:idx * 2]
+    shift_interline.extend(' ' * (2 + coldiff))
+    count = ncols - idx - 1
     if coldiff == -1:
-        n_spaces = 1
-        edge_ch = "/"
+        shift_interline.extend('/ ' * count)
     elif coldiff == 0:
-        n_spaces = 2
-        edge_ch = "|"
+        shift_interline.extend(echars[(idx + 1) * 2:ncols * 2])
     else:
-        n_spaces = 3
-        edge_ch = "\\"
-    shift_interline.extend(n_spaces * [" "])
-    shift_interline.extend([edge_ch, " "] * (ncols - idx - 1))
+        shift_interline.extend(r'\ ' * count)
 
     # draw edges from the current node to its parents
-    _drawedges(edges, nodeline, shift_interline)
+    _drawedges(echars, edges, nodeline, shift_interline)
 
     # lines is the list of all graph lines to print
     lines = [nodeline]
     if add_padding_line:
-        lines.append(_getpaddingline(idx, ncols, edges))
+        lines.append(_getpaddingline(echars, idx, ncols, edges))
     lines.append(shift_interline)
 
     # make sure that there are as many graph lines as there are
@@ -566,7 +579,7 @@
     while len(text) < len(lines):
         text.append("")
     if len(lines) < len(text):
-        extra_interline = ["|", " "] * (ncols + coldiff)
+        extra_interline = echars[:(ncols + coldiff) * 2]
         while len(lines) < len(text):
             lines.append(extra_interline)
 
diff --git a/tests/test-commit-amend.t b/tests/test-commit-amend.t
--- a/tests/test-commit-amend.t
+++ b/tests/test-commit-amend.t
@@ -539,11 +539,11 @@
   |    babar
   |
   | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
-  | |    fork
-  | |
-  o |  11   3334b7925910   1970-01-01 00:00 +0000   test
-  | |    a''
-  | |
+  | .    fork
+  | .
+  o .  11   3334b7925910   1970-01-01 00:00 +0000   test
+  . .    a''
+  . .
   $ hg log -Gl 4 --hidden --style=compact
   @  14[tip]:11   b650e6ee8614   1970-01-01 00:00 +0000   test
   |    babar
@@ -552,11 +552,11 @@
   |/     amend for phase
   |
   | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
-  | |    fork
-  | |
-  o |  11   3334b7925910   1970-01-01 00:00 +0000   test
-  | |    a''
-  | |
+  | .    fork
+  | .
+  o .  11   3334b7925910   1970-01-01 00:00 +0000   test
+  . .    a''
+  . .
 
 Amend with files changes
 
@@ -579,11 +579,11 @@
   |/     amend for phase
   |
   | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
-  | |    fork
-  | |
-  o |  11   3334b7925910   1970-01-01 00:00 +0000   test
-  | |    a''
-  | |
+  | .    fork
+  | .
+  o .  11   3334b7925910   1970-01-01 00:00 +0000   test
+  . .    a''
+  . .
 
 
 Test that amend does not make it easy to create obsolescence cycle
diff --git a/tests/test-convert-hg-sink.t b/tests/test-convert-hg-sink.t
--- a/tests/test-convert-hg-sink.t
+++ b/tests/test-convert-hg-sink.t
@@ -370,7 +370,7 @@
   | o  7 e6d364a69ff1 (draft) "change in dest" files: dest
   |/
   o  6 0613c8e59a3d (public) "6: change a" files: a
-  |
+  .
   $ cd ..
 
   $ hg convert --filemap filemap source dest --config convert.hg.revs=3:
diff --git a/tests/test-copy-move-merge.t b/tests/test-copy-move-merge.t
--- a/tests/test-copy-move-merge.t
+++ b/tests/test-copy-move-merge.t
@@ -156,11 +156,11 @@
 
   $ hg log -G -f b
   @  changeset:   3:76024fb4b05b
-  |  tag:         tip
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     copy a->b (2)
-  |
+  :  tag:         tip
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     copy a->b (2)
+  :
   o  changeset:   0:ac82d8b1f7c4
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
diff --git a/tests/test-glog-topological.t b/tests/test-glog-topological.t
--- a/tests/test-glog-topological.t
+++ b/tests/test-glog-topological.t
@@ -66,11 +66,11 @@
   o  8
   |
   o  3
-  |
+  :
   o  1
   |
   | o  7
-  | |
+  | :
   | o  5
   | |
   | o  4
diff --git a/tests/test-glog.t b/tests/test-glog.t
--- a/tests/test-glog.t
+++ b/tests/test-glog.t
@@ -940,193 +940,193 @@
   $ hg log -G -r 'file("a")' -m
   o    changeset:   32:d06dffa21a31
   |\   parent:      27:886ed638191b
-  | |  parent:      31:621d83e11f67
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:32 1970 +0000
-  | |  summary:     (32) expand
-  | |
-  o |  changeset:   31:621d83e11f67
-  |\|  parent:      21:d42a756af44d
-  | |  parent:      30:6e11cd4b648f
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:31 1970 +0000
-  | |  summary:     (31) expand
-  | |
-  o |    changeset:   30:6e11cd4b648f
+  | :  parent:      31:621d83e11f67
+  | :  user:        test
+  | :  date:        Thu Jan 01 00:00:32 1970 +0000
+  | :  summary:     (32) expand
+  | :
+  o :  changeset:   31:621d83e11f67
+  |\:  parent:      21:d42a756af44d
+  | :  parent:      30:6e11cd4b648f
+  | :  user:        test
+  | :  date:        Thu Jan 01 00:00:31 1970 +0000
+  | :  summary:     (31) expand
+  | :
+  o :    changeset:   30:6e11cd4b648f
   |\ \   parent:      28:44ecd0b9ae99
-  | | |  parent:      29:cd9bb2be7593
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:30 1970 +0000
-  | | |  summary:     (30) expand
-  | | |
-  o | |    changeset:   28:44ecd0b9ae99
+  | . :  parent:      29:cd9bb2be7593
+  | . :  user:        test
+  | . :  date:        Thu Jan 01 00:00:30 1970 +0000
+  | . :  summary:     (30) expand
+  | . :
+  o . :    changeset:   28:44ecd0b9ae99
   |\ \ \   parent:      1:6db2ef61d156
-  | | | |  parent:      26:7f25b6c2f0b9
-  | | | |  user:        test
-  | | | |  date:        Thu Jan 01 00:00:28 1970 +0000
-  | | | |  summary:     (28) merge zero known
-  | | | |
-  o | | |    changeset:   26:7f25b6c2f0b9
+  | . . :  parent:      26:7f25b6c2f0b9
+  | . . :  user:        test
+  | . . :  date:        Thu Jan 01 00:00:28 1970 +0000
+  | . . :  summary:     (28) merge zero known
+  | . . :
+  o . . :    changeset:   26:7f25b6c2f0b9
   |\ \ \ \   parent:      18:1aa84d96232a
-  | | | | |  parent:      25:91da8ed57247
-  | | | | |  user:        test
-  | | | | |  date:        Thu Jan 01 00:00:26 1970 +0000
-  | | | | |  summary:     (26) merge one known; far right
-  | | | | |
+  | | . . :  parent:      25:91da8ed57247
+  | | . . :  user:        test
+  | | . . :  date:        Thu Jan 01 00:00:26 1970 +0000
+  | | . . :  summary:     (26) merge one known; far right
+  | | . . :
   | o-----+  changeset:   25:91da8ed57247
-  | | | | |  parent:      21:d42a756af44d
-  | | | | |  parent:      24:a9c19a3d96b7
-  | | | | |  user:        test
-  | | | | |  date:        Thu Jan 01 00:00:25 1970 +0000
-  | | | | |  summary:     (25) merge one known; far left
-  | | | | |
-  | o | | |    changeset:   24:a9c19a3d96b7
+  | | . . :  parent:      21:d42a756af44d
+  | | . . :  parent:      24:a9c19a3d96b7
+  | | . . :  user:        test
+  | | . . :  date:        Thu Jan 01 00:00:25 1970 +0000
+  | | . . :  summary:     (25) merge one known; far left
+  | | . . :
+  | o . . :    changeset:   24:a9c19a3d96b7
   | |\ \ \ \   parent:      0:e6eb3150255d
-  | | | | | |  parent:      23:a01cddf0766d
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:24 1970 +0000
-  | | | | | |  summary:     (24) merge one known; immediate right
-  | | | | | |
-  | o---+ | |  changeset:   23:a01cddf0766d
-  | | | | | |  parent:      1:6db2ef61d156
-  | | | | | |  parent:      22:e0d9cccacb5d
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:23 1970 +0000
-  | | | | | |  summary:     (23) merge one known; immediate left
-  | | | | | |
+  | | . . . :  parent:      23:a01cddf0766d
+  | | . . . :  user:        test
+  | | . . . :  date:        Thu Jan 01 00:00:24 1970 +0000
+  | | . . . :  summary:     (24) merge one known; immediate right
+  | | . . . :
+  | o---+ . :  changeset:   23:a01cddf0766d
+  | | . . . :  parent:      1:6db2ef61d156
+  | | . . . :  parent:      22:e0d9cccacb5d
+  | | . . . :  user:        test
+  | | . . . :  date:        Thu Jan 01 00:00:23 1970 +0000
+  | | . . . :  summary:     (23) merge one known; immediate left
+  | | . . . :
   | o-------+  changeset:   22:e0d9cccacb5d
-  | | | | | |  parent:      18:1aa84d96232a
+  | . . . . :  parent:      18:1aa84d96232a
   |/ / / / /   parent:      21:d42a756af44d
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:22 1970 +0000
-  | | | | |    summary:     (22) merge two known; one far left, one far right
-  | | | | |
-  | | | | o    changeset:   21:d42a756af44d
-  | | | | |\   parent:      19:31ddc2c1573b
-  | | | | | |  parent:      20:d30ed6450e32
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:21 1970 +0000
-  | | | | | |  summary:     (21) expand
-  | | | | | |
+  | . . . :    user:        test
+  | . . . :    date:        Thu Jan 01 00:00:22 1970 +0000
+  | . . . :    summary:     (22) merge two known; one far left, one far right
+  | . . . :
+  | . . . o    changeset:   21:d42a756af44d
+  | . . . |\   parent:      19:31ddc2c1573b
+  | . . . | |  parent:      20:d30ed6450e32
+  | . . . | |  user:        test
+  | . . . | |  date:        Thu Jan 01 00:00:21 1970 +0000
+  | . . . | |  summary:     (21) expand
+  | . . . | |
   +-+-------o  changeset:   20:d30ed6450e32
-  | | | | |    parent:      0:e6eb3150255d
-  | | | | |    parent:      18:1aa84d96232a
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:20 1970 +0000
-  | | | | |    summary:     (20) merge two known; two far right
-  | | | | |
-  | | | | o    changeset:   19:31ddc2c1573b
-  | | | | |\   parent:      15:1dda3f72782d
-  | | | | | |  parent:      17:44765d7c06e0
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:19 1970 +0000
-  | | | | | |  summary:     (19) expand
-  | | | | | |
+  | . . . |    parent:      0:e6eb3150255d
+  | . . . |    parent:      18:1aa84d96232a
+  | . . . |    user:        test
+  | . . . |    date:        Thu Jan 01 00:00:20 1970 +0000
+  | . . . |    summary:     (20) merge two known; two far right
+  | . . . |
+  | . . . o    changeset:   19:31ddc2c1573b
+  | . . . |\   parent:      15:1dda3f72782d
+  | . . . | |  parent:      17:44765d7c06e0
+  | . . . | |  user:        test
+  | . . . | |  date:        Thu Jan 01 00:00:19 1970 +0000
+  | . . . | |  summary:     (19) expand
+  | . . . | |
   o---+---+ |  changeset:   18:1aa84d96232a
-    | | | | |  parent:      1:6db2ef61d156
+    . . . | |  parent:      1:6db2ef61d156
    / / / / /   parent:      15:1dda3f72782d
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:18 1970 +0000
-  | | | | |    summary:     (18) merge two known; two far left
-  | | | | |
-  | | | | o    changeset:   17:44765d7c06e0
-  | | | | |\   parent:      12:86b91144a6e9
-  | | | | | |  parent:      16:3677d192927d
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:17 1970 +0000
-  | | | | | |  summary:     (17) expand
-  | | | | | |
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:18 1970 +0000
+  . . . | |    summary:     (18) merge two known; two far left
+  . . . | |
+  . . . | o    changeset:   17:44765d7c06e0
+  . . . | |\   parent:      12:86b91144a6e9
+  . . . | | |  parent:      16:3677d192927d
+  . . . | | |  user:        test
+  . . . | | |  date:        Thu Jan 01 00:00:17 1970 +0000
+  . . . | | |  summary:     (17) expand
+  . . . | | |
   +-+-------o  changeset:   16:3677d192927d
-  | | | | |    parent:      0:e6eb3150255d
-  | | | | |    parent:      1:6db2ef61d156
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:16 1970 +0000
-  | | | | |    summary:     (16) merge two known; one immediate right, one near right
-  | | | | |
-  | | | o |    changeset:   15:1dda3f72782d
-  | | | |\ \   parent:      13:22d8966a97e3
-  | | | | | |  parent:      14:8eac370358ef
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:15 1970 +0000
-  | | | | | |  summary:     (15) expand
-  | | | | | |
+  . . . | |    parent:      0:e6eb3150255d
+  . . . | |    parent:      1:6db2ef61d156
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:16 1970 +0000
+  . . . | |    summary:     (16) merge two known; one immediate right, one near right
+  . . . | |
+  . . . o |    changeset:   15:1dda3f72782d
+  . . . |\ \   parent:      13:22d8966a97e3
+  . . . | | |  parent:      14:8eac370358ef
+  . . . | | |  user:        test
+  . . . | | |  date:        Thu Jan 01 00:00:15 1970 +0000
+  . . . | | |  summary:     (15) expand
+  . . . | | |
   +-------o |  changeset:   14:8eac370358ef
-  | | | | |/   parent:      0:e6eb3150255d
-  | | | | |    parent:      12:86b91144a6e9
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:14 1970 +0000
-  | | | | |    summary:     (14) merge two known; one immediate right, one far right
-  | | | | |
-  | | | o |    changeset:   13:22d8966a97e3
-  | | | |\ \   parent:      9:7010c0af0a35
-  | | | | | |  parent:      11:832d76e6bdf2
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:13 1970 +0000
-  | | | | | |  summary:     (13) expand
-  | | | | | |
-  | +---+---o  changeset:   12:86b91144a6e9
-  | | | | |    parent:      1:6db2ef61d156
-  | | | | |    parent:      9:7010c0af0a35
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:12 1970 +0000
-  | | | | |    summary:     (12) merge two known; one immediate right, one far left
-  | | | | |
-  | | | | o    changeset:   11:832d76e6bdf2
-  | | | | |\   parent:      6:b105a072e251
-  | | | | | |  parent:      10:74c64d036d72
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:11 1970 +0000
-  | | | | | |  summary:     (11) expand
-  | | | | | |
+  . . . | |/   parent:      0:e6eb3150255d
+  . . . | |    parent:      12:86b91144a6e9
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:14 1970 +0000
+  . . . | |    summary:     (14) merge two known; one immediate right, one far right
+  . . . | |
+  . . . o |    changeset:   13:22d8966a97e3
+  . . . |\ \   parent:      9:7010c0af0a35
+  . . . | | |  parent:      11:832d76e6bdf2
+  . . . | | |  user:        test
+  . . . | | |  date:        Thu Jan 01 00:00:13 1970 +0000
+  . . . | | |  summary:     (13) expand
+  . . . | | |
+  . +---+---o  changeset:   12:86b91144a6e9
+  . . . | |    parent:      1:6db2ef61d156
+  . . . | |    parent:      9:7010c0af0a35
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:12 1970 +0000
+  . . . | |    summary:     (12) merge two known; one immediate right, one far left
+  . . . | |
+  . . . | o    changeset:   11:832d76e6bdf2
+  . . . | |\   parent:      6:b105a072e251
+  . . . | | |  parent:      10:74c64d036d72
+  . . . | | |  user:        test
+  . . . | | |  date:        Thu Jan 01 00:00:11 1970 +0000
+  . . . | | |  summary:     (11) expand
+  . . . | | |
   +---------o  changeset:   10:74c64d036d72
-  | | | | |/   parent:      0:e6eb3150255d
-  | | | | |    parent:      6:b105a072e251
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:10 1970 +0000
-  | | | | |    summary:     (10) merge two known; one immediate left, one near right
-  | | | | |
-  | | | o |    changeset:   9:7010c0af0a35
-  | | | |\ \   parent:      7:b632bb1b1224
-  | | | | | |  parent:      8:7a0b11f71937
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:09 1970 +0000
-  | | | | | |  summary:     (9) expand
-  | | | | | |
+  . . . | |/   parent:      0:e6eb3150255d
+  . . . | |    parent:      6:b105a072e251
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:10 1970 +0000
+  . . . | |    summary:     (10) merge two known; one immediate left, one near right
+  . . . | |
+  . . . o |    changeset:   9:7010c0af0a35
+  . . . |\ \   parent:      7:b632bb1b1224
+  . . . | | |  parent:      8:7a0b11f71937
+  . . . | | |  user:        test
+  . . . | | |  date:        Thu Jan 01 00:00:09 1970 +0000
+  . . . | | |  summary:     (9) expand
+  . . . | | |
   +-------o |  changeset:   8:7a0b11f71937
-  | | | |/ /   parent:      0:e6eb3150255d
-  | | | | |    parent:      7:b632bb1b1224
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:08 1970 +0000
-  | | | | |    summary:     (8) merge two known; one immediate left, one far right
-  | | | | |
-  | | | o |    changeset:   7:b632bb1b1224
-  | | | |\ \   parent:      2:3d9a33b8d1e1
-  | | | | | |  parent:      5:4409d547b708
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:07 1970 +0000
-  | | | | | |  summary:     (7) expand
-  | | | | | |
-  | | | +---o  changeset:   6:b105a072e251
-  | | | | |/   parent:      2:3d9a33b8d1e1
-  | | | | |    parent:      5:4409d547b708
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:06 1970 +0000
-  | | | | |    summary:     (6) merge two known; one immediate left, one far left
-  | | | | |
-  | | | o |    changeset:   5:4409d547b708
-  | | | |\ \   parent:      3:27eef8ed80b4
-  | | | | | |  parent:      4:26a8bac39d9f
-  | | | | | |  user:        test
-  | | | | | |  date:        Thu Jan 01 00:00:05 1970 +0000
-  | | | | | |  summary:     (5) expand
-  | | | | | |
-  | +---o | |  changeset:   4:26a8bac39d9f
-  | | | |/ /   parent:      1:6db2ef61d156
-  | | | | |    parent:      3:27eef8ed80b4
-  | | | | |    user:        test
-  | | | | |    date:        Thu Jan 01 00:00:04 1970 +0000
-  | | | | |    summary:     (4) merge two known; one immediate left, one immediate right
-  | | | | |
+  . . . |/ /   parent:      0:e6eb3150255d
+  . . . | |    parent:      7:b632bb1b1224
+  . . . | |    user:        test
+  . . . | |    date:        Thu Jan 01 00:00:08 1970 +0000
+  . . . | |    summary:     (8) merge two known; one immediate left, one far right
+  . . . | |
+  . . . o |    changeset:   7:b632bb1b1224
+  . . . |\ \   parent:      2:3d9a33b8d1e1
+  . . . | . |  parent:      5:4409d547b708
+  . . . | . |  user:        test
+  . . . | . |  date:        Thu Jan 01 00:00:07 1970 +0000
+  . . . | . |  summary:     (7) expand
+  . . . | . |
+  . . . +---o  changeset:   6:b105a072e251
+  . . . | ./   parent:      2:3d9a33b8d1e1
+  . . . | .    parent:      5:4409d547b708
+  . . . | .    user:        test
+  . . . | .    date:        Thu Jan 01 00:00:06 1970 +0000
+  . . . | .    summary:     (6) merge two known; one immediate left, one far left
+  . . . | .
+  . . . o .    changeset:   5:4409d547b708
+  . . . |\ \   parent:      3:27eef8ed80b4
+  . . . | . .  parent:      4:26a8bac39d9f
+  . . . | . .  user:        test
+  . . . | . .  date:        Thu Jan 01 00:00:05 1970 +0000
+  . . . | . .  summary:     (5) expand
+  . . . | . .
+  . +---o . .  changeset:   4:26a8bac39d9f
+  . . . ./ /   parent:      1:6db2ef61d156
+  . . . . .    parent:      3:27eef8ed80b4
+  . . . . .    user:        test
+  . . . . .    date:        Thu Jan 01 00:00:04 1970 +0000
+  . . . . .    summary:     (4) merge two known; one immediate left, one immediate right
+  . . . . .
 
 
 Empty revision range - display nothing:
@@ -1139,20 +1139,20 @@
 From outer space:
   $ hg log -G -l1 repo
   @  changeset:   34:fea3ac5810e0
-  |  tag:         tip
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
+  .  tag:         tip
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
   $ hg log -G -l1 repo/a
   @  changeset:   34:fea3ac5810e0
-  |  tag:         tip
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
+  .  tag:         tip
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
   $ hg log -G -l1 repo/missing
 
 #endif
@@ -1176,10 +1176,10 @@
   |  summary:     more
   |
   o  changeset:   1:5ac72c0599bf
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     two
-  |
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     two
+  .
 
 Issue1896: File log with explicit style
   $ hg log -G --style=default one
@@ -1277,17 +1277,17 @@
   $ hg ci -Aqm0
   $ hg log -G -l2 a
   o  changeset:   34:fea3ac5810e0
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
-  | o  changeset:   33:68608f5145f9
-  | |  parent:      18:1aa84d96232a
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:33 1970 +0000
-  | |  summary:     (33) head
-  | |
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
+  . o  changeset:   33:68608f5145f9
+  . .  parent:      18:1aa84d96232a
+  . .  user:        test
+  . .  date:        Thu Jan 01 00:00:33 1970 +0000
+  . .  summary:     (33) head
+  . .
 
 File + limit + -ra:b, (b - a) < limit:
   $ hg log -G -l3000 -r32:tip a
@@ -1298,67 +1298,67 @@
   |  summary:     (34) head
   |
   | o  changeset:   33:68608f5145f9
-  | |  parent:      18:1aa84d96232a
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:33 1970 +0000
-  | |  summary:     (33) head
-  | |
-  o |    changeset:   32:d06dffa21a31
-  |\ \   parent:      27:886ed638191b
-  | | |  parent:      31:621d83e11f67
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:32 1970 +0000
-  | | |  summary:     (32) expand
-  | | |
+  | .  parent:      18:1aa84d96232a
+  | .  user:        test
+  | .  date:        Thu Jan 01 00:00:33 1970 +0000
+  | .  summary:     (33) head
+  | .
+  o .    changeset:   32:d06dffa21a31
+  .\ \   parent:      27:886ed638191b
+  . . .  parent:      31:621d83e11f67
+  . . .  user:        test
+  . . .  date:        Thu Jan 01 00:00:32 1970 +0000
+  . . .  summary:     (32) expand
+  . . .
 
 Point out a common and an uncommon unshown parent
 
   $ hg log -G -r 'rev(8) or rev(9)'
   o    changeset:   9:7010c0af0a35
   |\   parent:      7:b632bb1b1224
-  | |  parent:      8:7a0b11f71937
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:09 1970 +0000
-  | |  summary:     (9) expand
-  | |
-  o |  changeset:   8:7a0b11f71937
-  |\|  parent:      0:e6eb3150255d
-  | |  parent:      7:b632bb1b1224
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:08 1970 +0000
-  | |  summary:     (8) merge two known; one immediate left, one far right
-  | |
+  | .  parent:      8:7a0b11f71937
+  | .  user:        test
+  | .  date:        Thu Jan 01 00:00:09 1970 +0000
+  | .  summary:     (9) expand
+  | .
+  o .  changeset:   8:7a0b11f71937
+  .\.  parent:      0:e6eb3150255d
+  . .  parent:      7:b632bb1b1224
+  . .  user:        test
+  . .  date:        Thu Jan 01 00:00:08 1970 +0000
+  . .  summary:     (8) merge two known; one immediate left, one far right
+  . .
 
 File + limit + -ra:b, b < tip:
 
   $ hg log -G -l1 -r32:34 a
   o  changeset:   34:fea3ac5810e0
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
 
 file(File) + limit + -ra:b, b < tip:
 
   $ hg log -G -l1 -r32:34 -r 'file("a")'
   o  changeset:   34:fea3ac5810e0
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
 
 limit(file(File) and a::b), b < tip:
 
   $ hg log -G -r 'limit(file("a") and 32::34, 1)'
   o    changeset:   32:d06dffa21a31
-  |\   parent:      27:886ed638191b
-  | |  parent:      31:621d83e11f67
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:32 1970 +0000
-  | |  summary:     (32) expand
-  | |
+  .\   parent:      27:886ed638191b
+  . .  parent:      31:621d83e11f67
+  . .  user:        test
+  . .  date:        Thu Jan 01 00:00:32 1970 +0000
+  . .  summary:     (32) expand
+  . .
 
 File + limit + -ra:b, b < tip:
 
@@ -1368,17 +1368,17 @@
 
   $ hg log -G -l10 -r33:34 a
   o  changeset:   34:fea3ac5810e0
-  |  parent:      32:d06dffa21a31
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:34 1970 +0000
-  |  summary:     (34) head
-  |
-  | o  changeset:   33:68608f5145f9
-  | |  parent:      18:1aa84d96232a
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:33 1970 +0000
-  | |  summary:     (33) head
-  | |
+  .  parent:      32:d06dffa21a31
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:34 1970 +0000
+  .  summary:     (34) head
+  .
+  . o  changeset:   33:68608f5145f9
+  . .  parent:      18:1aa84d96232a
+  . .  user:        test
+  . .  date:        Thu Jan 01 00:00:33 1970 +0000
+  . .  summary:     (33) head
+  . .
 
 Do not crash or produce strange graphs if history is buggy
 
@@ -1408,18 +1408,18 @@
   |  summary:     (34) head
   |
   | o  changeset:   33:68608f5145f9
-  | |  parent:      18:1aa84d96232a
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:33 1970 +0000
-  | |  summary:     (33) head
-  | |
-  o |    changeset:   32:d06dffa21a31
-  |\ \   parent:      27:886ed638191b
-  | | |  parent:      31:621d83e11f67
-  | | |  user:        test
-  | | |  date:        Thu Jan 01 00:00:32 1970 +0000
-  | | |  summary:     (32) expand
-  | | |
+  | .  parent:      18:1aa84d96232a
+  | .  user:        test
+  | .  date:        Thu Jan 01 00:00:33 1970 +0000
+  | .  summary:     (33) head
+  | .
+  o .    changeset:   32:d06dffa21a31
+  .\ \   parent:      27:886ed638191b
+  . . .  parent:      31:621d83e11f67
+  . . .  user:        test
+  . . .  date:        Thu Jan 01 00:00:32 1970 +0000
+  . . .  summary:     (32) expand
+  . . .
 
 Test log -G options
 
@@ -1796,8 +1796,8 @@
   $ hg log -G --follow-first e --template '{rev} {desc|firstline}\n'
   @    6 merge 5 and 4
   |\
-  o |  5 add another e
-  | |
+  o .  5 add another e
+  . .
 
 Test --copies
 
@@ -1875,24 +1875,24 @@
   $ hg up -q 3
   $ hg log -G --git --patch b
   o  changeset:   1:216d4c92cf98
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     copy a b
-  |
-  |  diff --git a/a b/b
-  |  copy from a
-  |  copy to b
-  |
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     copy a b
+  .
+  .  diff --git a/a b/b
+  .  copy from a
+  .  copy to b
+  .
 
   $ hg log -G --git --stat b
   o  changeset:   1:216d4c92cf98
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     copy a b
-  |
-  |   b |  0
-  |   1 files changed, 0 insertions(+), 0 deletions(-)
-  |
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     copy a b
+  .
+  .   b |  0
+  .   1 files changed, 0 insertions(+), 0 deletions(-)
+  .
 
   $ hg log -G --git --patch --follow b
   o  changeset:   1:216d4c92cf98
@@ -1939,32 +1939,32 @@
   $ hg log -G --git --patch --follow-first e
   @    changeset:   6:fc281d8ff18d
   |\   tag:         tip
-  | |  parent:      5:99b31f1c2782
-  | |  parent:      4:17d952250a9d
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  summary:     merge 5 and 4
-  | |
-  | |  diff --git a/e b/e
-  | |  --- a/e
-  | |  +++ b/e
-  | |  @@ -1,1 +1,1 @@
-  | |  -ee
-  | |  +merge
-  | |
-  o |  changeset:   5:99b31f1c2782
-  | |  parent:      3:5918b8d165d1
-  | |  user:        test
-  | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  summary:     add another e
-  | |
-  | |  diff --git a/e b/e
-  | |  new file mode 100644
-  | |  --- /dev/null
-  | |  +++ b/e
-  | |  @@ -0,0 +1,1 @@
-  | |  +ee
-  | |
+  | .  parent:      5:99b31f1c2782
+  | .  parent:      4:17d952250a9d
+  | .  user:        test
+  | .  date:        Thu Jan 01 00:00:00 1970 +0000
+  | .  summary:     merge 5 and 4
+  | .
+  | .  diff --git a/e b/e
+  | .  --- a/e
+  | .  +++ b/e
+  | .  @@ -1,1 +1,1 @@
+  | .  -ee
+  | .  +merge
+  | .
+  o .  changeset:   5:99b31f1c2782
+  . .  parent:      3:5918b8d165d1
+  . .  user:        test
+  . .  date:        Thu Jan 01 00:00:00 1970 +0000
+  . .  summary:     add another e
+  . .
+  . .  diff --git a/e b/e
+  . .  new file mode 100644
+  . .  --- /dev/null
+  . .  +++ b/e
+  . .  @@ -0,0 +1,1 @@
+  . .  +ee
+  . .
 
 Test old-style --rev
 
@@ -2384,7 +2384,7 @@
   o  2147483647:ffffffffffff
   |
   @  3:5918b8d165d1
-  |
+  .
 
 node template with changeset_printer:
 
@@ -2393,8 +2393,8 @@
   |
   6    6:fc281d8ff18d
   |\
-  5 |  5:99b31f1c2782
-  | |
+  5 .  5:99b31f1c2782
+  . .
 
 node template with changeset_templater (shared cache variable):
 
@@ -2404,7 +2404,7 @@
   |
   #    6 foo-bar+0
   |\
-  o |  5 null+5
-  | |
+  o .  5 null+5
+  . .
 
   $ cd ..
diff --git a/tests/test-histedit-arguments.t b/tests/test-histedit-arguments.t
--- a/tests/test-histedit-arguments.t
+++ b/tests/test-histedit-arguments.t
@@ -123,7 +123,7 @@
   o  3 c8e6 four
   |
   o  2 eb57 three
-  |
+  .
   $ HGEDITOR=cat hg histedit -r 4 --commands - << EOF
   > edit 08d98a8350f3 4 five
   > EOF
@@ -151,7 +151,7 @@
   | o  3 c8e6 four
   |/
   o  2 eb57 three
-  |
+  .
 
   $ hg unbundle -q $TESTTMP/foo/.hg/strip-backup/08d98a8350f3-02594089-backup.hg
   $ hg strip -q -r f5ed --config extensions.strip=
diff --git a/tests/test-largefiles-misc.t b/tests/test-largefiles-misc.t
--- a/tests/test-largefiles-misc.t
+++ b/tests/test-largefiles-misc.t
@@ -472,11 +472,11 @@
 
   $ hg log -G anotherlarge
   @  changeset:   1:9627a577c5e9
-  |  tag:         tip
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     anotherlarge
-  |
+  .  tag:         tip
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     anotherlarge
+  .
 
   $ hg log glob:another*
   changeset:   1:9627a577c5e9
@@ -488,7 +488,7 @@
   $ hg --debug log -T '{rev}: {desc}\n' -G glob:another*
   updated patterns: ['glob:../.hglf/sub/another*', 'glob:another*']
   @  1: anotherlarge
-  |
+  .
 
 #if no-msys
   $ hg --debug log -T '{rev}: {desc}\n' 'glob:../.hglf/sub/another*' # no-msys
@@ -498,7 +498,7 @@
   $ hg --debug log -G -T '{rev}: {desc}\n' 'glob:../.hglf/sub/another*' # no-msys
   updated patterns: ['glob:../.hglf/sub/another*']
   @  1: anotherlarge
-  |
+  .
 #endif
 
   $ echo more >> anotherlarge
@@ -533,11 +533,11 @@
   
   $ hg log -G glob:**another*
   @  changeset:   1:9627a577c5e9
-  |  tag:         tip
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     anotherlarge
-  |
+  .  tag:         tip
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     anotherlarge
+  .
 
   $ cd ..
 
diff --git a/tests/test-largefiles.t b/tests/test-largefiles.t
--- a/tests/test-largefiles.t
+++ b/tests/test-largefiles.t
@@ -930,7 +930,7 @@
   7:daea875e9014
   $ hg log -Gqf sub2/large7
   @  7:daea875e9014
-  |
+  .
   $ cd ..
 
 Test log from outside repo
@@ -1285,13 +1285,13 @@
   4:74c02385b94c  move files
   $ hg log -G --template '{rev}:{node|short}  {desc|firstline}\n' .hglf/sub/large4
   o  8:a381d2c8c80e  modify normal file and largefile in repo b
-  |
+  :
   o  6:4355d653f84f  edit files yet again
   |
   o  5:9d5af5072dbd  edit files again
   |
   o  4:74c02385b94c  move files
-  |
+  .
   $ hg log --template '{rev}:{node|short}  {desc|firstline}\n' sub/large4
   8:a381d2c8c80e  modify normal file and largefile in repo b
   6:4355d653f84f  edit files yet again
@@ -1299,13 +1299,13 @@
   4:74c02385b94c  move files
   $ hg log -G --template '{rev}:{node|short}  {desc|firstline}\n' .hglf/sub/large4
   o  8:a381d2c8c80e  modify normal file and largefile in repo b
-  |
+  :
   o  6:4355d653f84f  edit files yet again
   |
   o  5:9d5af5072dbd  edit files again
   |
   o  4:74c02385b94c  move files
-  |
+  .
 
 - .hglf only matches largefiles, without .hglf it matches 9 bco sub/normal
   $ hg log --template '{rev}:{node|short}  {desc|firstline}\n' .hglf/sub
@@ -1317,13 +1317,13 @@
   0:30d30fe6a5be  add files
   $ hg log -G --template '{rev}:{node|short}  {desc|firstline}\n' .hglf/sub
   o  8:a381d2c8c80e  modify normal file and largefile in repo b
-  |
+  :
   o  6:4355d653f84f  edit files yet again
   |
   o  5:9d5af5072dbd  edit files again
   |
   o  4:74c02385b94c  move files
-  |
+  :
   o  1:ce8896473775  edit files
   |
   o  0:30d30fe6a5be  add files
@@ -1340,13 +1340,13 @@
   @  9:598410d3eb9a  modify normal file largefile in repo d
   |
   o  8:a381d2c8c80e  modify normal file and largefile in repo b
-  |
+  :
   o  6:4355d653f84f  edit files yet again
   |
   o  5:9d5af5072dbd  edit files again
   |
   o  4:74c02385b94c  move files
-  |
+  :
   o  1:ce8896473775  edit files
   |
   o  0:30d30fe6a5be  add files
@@ -1364,13 +1364,13 @@
   @  9:598410d3eb9a  modify normal file largefile in repo d
   |
   o  8:a381d2c8c80e  modify normal file and largefile in repo b
-  |
+  :
   o  6:4355d653f84f  edit files yet again
   |
   o  5:9d5af5072dbd  edit files again
   |
   o  4:74c02385b94c  move files
-  |
+  :
   o  1:ce8896473775  edit files
   |
   o  0:30d30fe6a5be  add files
diff --git a/tests/test-log.t b/tests/test-log.t
--- a/tests/test-log.t
+++ b/tests/test-log.t
@@ -1970,10 +1970,10 @@
   |  summary:     content3
   |
   o  changeset:   3:15b2327059e5
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     content2
-  |
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     content2
+  :
   o  changeset:   0:ae0a3c9f9e95
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
@@ -1985,16 +1985,16 @@
 
   $ hg log -G a
   @  changeset:   4:50b9b36e9c5d
-  |  tag:         tip
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     content3
-  |
-  | o  changeset:   1:2294ae80ad84
-  |/   user:        test
-  |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    summary:     content2
-  |
+  :  tag:         tip
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     content3
+  :
+  : o  changeset:   1:2294ae80ad84
+  :/   user:        test
+  :    date:        Thu Jan 01 00:00:00 1970 +0000
+  :    summary:     content2
+  :
   o  changeset:   0:ae0a3c9f9e95
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
@@ -2008,10 +2008,10 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg log -Gf a
   @  changeset:   3:15b2327059e5
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     content2
-  |
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     content2
+  :
   o  changeset:   0:ae0a3c9f9e95
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
@@ -2059,10 +2059,10 @@
   |  summary:     content3
   |
   @  changeset:   3:15b2327059e5
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     content2
-  |
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     content2
+  :
   o  changeset:   0:ae0a3c9f9e95
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
@@ -2076,11 +2076,11 @@
   $ hg debugobsolete 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2
   $ hg log -G a
   @  changeset:   3:15b2327059e5
-  |  tag:         tip
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     content2
-  |
+  :  tag:         tip
+  :  user:        test
+  :  date:        Thu Jan 01 00:00:00 1970 +0000
+  :  summary:     content2
+  :
   o  changeset:   0:ae0a3c9f9e95
      user:        test
      date:        Thu Jan 01 00:00:00 1970 +0000
@@ -2132,18 +2132,18 @@
   
   $ hg log -f -G b
   @  changeset:   3:9bc8ce7f9356
-  |  parent:      0:f7b1eb17ad24
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     1
-  |
+  .  parent:      0:f7b1eb17ad24
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     1
+  .
   $ hg log -G b
   @  changeset:   3:9bc8ce7f9356
-  |  parent:      0:f7b1eb17ad24
-  |  user:        test
-  |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  summary:     1
-  |
+  .  parent:      0:f7b1eb17ad24
+  .  user:        test
+  .  date:        Thu Jan 01 00:00:00 1970 +0000
+  .  summary:     1
+  .
   $ cd ..
 
 Check proper report when the manifest changes but not the file issue4499
diff --git a/tests/test-rebase-pull.t b/tests/test-rebase-pull.t
--- a/tests/test-rebase-pull.t
+++ b/tests/test-rebase-pull.t
@@ -91,7 +91,7 @@
 
   $ hg tglog -l 1
   @  2: 'R1'
-  |
+  .
 
 pull --rebase --update should ignore --update:
 
@@ -111,7 +111,7 @@
 
   $ hg tglog -l 1
   o  2: 'R1'
-  |
+  .
 
   $ cd ..
 
diff --git a/tests/test-rebase-rename.t b/tests/test-rebase-rename.t
--- a/tests/test-rebase-rename.t
+++ b/tests/test-rebase-rename.t
@@ -298,7 +298,7 @@
   o  3: 'File c created as copy of b and modified'
   |
   o  2: 'File b created as copy of a and modified'
-  |
+  :
   o  0: 'File a created'
   
 Same steps as above, but with --collapse on rebase to make sure the
@@ -323,9 +323,9 @@
 
   $ hg tglog --follow d
   @  3: 'Collapsed revision
-  |  * File b created as copy of a and modified
-  |  * File c created as copy of b and modified
-  |  * File d created as copy of c and modified'
+  :  * File b created as copy of a and modified
+  :  * File c created as copy of b and modified
+  :  * File d created as copy of c and modified'
   o  0: 'File a created'
   
 
diff --git a/tests/test-shelve.t b/tests/test-shelve.t
--- a/tests/test-shelve.t
+++ b/tests/test-shelve.t
@@ -718,7 +718,7 @@
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg log -G --template '{rev}  {desc|firstline}  {author}' -R bundle://.hg/shelved/default.hg -r 'bundle()'
   o  4  changes to: commit stuff  shelve at localhost
-  |
+  .
   $ hg log -G --template '{rev}  {desc|firstline}  {author}'
   @  3  commit stuff  test
   |



More information about the Mercurial-devel mailing list