Patchwork [1,of,3] templatekw: use a "?" to represent troubled changesets in graph

login
register
mail settings
Submitter Denis Laxalde
Date Oct. 10, 2016, 12:33 p.m.
Message ID <6c916ce602f5c92c5a5a.1476102797@sh77.tls.logilab.fr>
Download mbox | patch
Permalink /patch/17021/
State Deferred
Delegated to: Yuya Nishihara
Headers show

Comments

Denis Laxalde - Oct. 10, 2016, 12:33 p.m.
# HG changeset patch
# User Denis Laxalde <denis.laxalde@logilab.fr>
# Date 1475933106 -7200
#      Sat Oct 08 15:25:06 2016 +0200
# Node ID 6c916ce602f5c92c5a5a4de954629670b8c7ca8c
# Parent  dbcef8918bbdd8a64d9f79a37bcfa284a26f3a39
# EXP-Topic evolve-ui
templatekw: use a "?" to represent troubled changesets in graph
Yuya Nishihara - Oct. 15, 2016, 12:25 p.m.
On Mon, 10 Oct 2016 14:33:17 +0200, Denis Laxalde wrote:
> # HG changeset patch
> # User Denis Laxalde <denis.laxalde@logilab.fr>
> # Date 1475933106 -7200
> #      Sat Oct 08 15:25:06 2016 +0200
> # Node ID 6c916ce602f5c92c5a5a4de954629670b8c7ca8c
> # Parent  dbcef8918bbdd8a64d9f79a37bcfa284a26f3a39
> # EXP-Topic evolve-ui
> templatekw: use a "?" to represent troubled changesets in graph
> 
> diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py
> --- a/mercurial/templatekw.py
> +++ b/mercurial/templatekw.py
> @@ -394,6 +394,8 @@ def showgraphnode(repo, ctx, **args):
>          return '@'
>      elif ctx.obsolete():
>          return 'x'
> +    elif ctx.troubled():
> +        return '?'
>      elif ctx.closesbranch():
>          return '_'

Is this change an RFC or already discussed at the sprint?
Pierre-Yves David - Oct. 16, 2016, 12:54 p.m.
On 10/15/2016 02:25 PM, Yuya Nishihara wrote:
> On Mon, 10 Oct 2016 14:33:17 +0200, Denis Laxalde wrote:
>> # HG changeset patch
>> # User Denis Laxalde <denis.laxalde@logilab.fr>
>> # Date 1475933106 -7200
>> #      Sat Oct 08 15:25:06 2016 +0200
>> # Node ID 6c916ce602f5c92c5a5a4de954629670b8c7ca8c
>> # Parent  dbcef8918bbdd8a64d9f79a37bcfa284a26f3a39
>> # EXP-Topic evolve-ui
>> templatekw: use a "?" to represent troubled changesets in graph
>>
>> diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py
>> --- a/mercurial/templatekw.py
>> +++ b/mercurial/templatekw.py
>> @@ -394,6 +394,8 @@ def showgraphnode(repo, ctx, **args):
>>          return '@'
>>      elif ctx.obsolete():
>>          return 'x'
>> +    elif ctx.troubled():
>> +        return '?'
>>      elif ctx.closesbranch():
>>          return '_'
>
> Is this change an RFC or already discussed at the sprint?

This is an RFC, we had just a quick chat about it at the sprint.
Having a dedicated "char" for troubled changeset make senses, but I'm 
not a fan of using "?". We should probably do a small brainstorming of 
possible char at the beginning of the 4.1 cycle.

Cheers,
Denis Laxalde - Oct. 17, 2016, 1:14 p.m.
Pierre-Yves David a écrit :
> On 10/15/2016 02:25 PM, Yuya Nishihara wrote:
>> On Mon, 10 Oct 2016 14:33:17 +0200, Denis Laxalde wrote:
>>> # HG changeset patch
>>> # User Denis Laxalde <denis.laxalde@logilab.fr>
>>> # Date 1475933106 -7200
>>> #      Sat Oct 08 15:25:06 2016 +0200
>>> # Node ID 6c916ce602f5c92c5a5a4de954629670b8c7ca8c
>>> # Parent  dbcef8918bbdd8a64d9f79a37bcfa284a26f3a39
>>> # EXP-Topic evolve-ui
>>> templatekw: use a "?" to represent troubled changesets in graph
>>>
>>> diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py
>>> --- a/mercurial/templatekw.py
>>> +++ b/mercurial/templatekw.py
>>> @@ -394,6 +394,8 @@ def showgraphnode(repo, ctx, **args):
>>>          return '@'
>>>      elif ctx.obsolete():
>>>          return 'x'
>>> +    elif ctx.troubled():
>>> +        return '?'
>>>      elif ctx.closesbranch():
>>>          return '_'
>>
>> Is this change an RFC or already discussed at the sprint?
>
> This is an RFC, we had just a quick chat about it at the sprint.
> Having a dedicated "char" for troubled changeset make senses, but I'm
> not a fan of using "?". We should probably do a small brainstorming of
> possible char at the beginning of the 4.1 cycle.

Yes, we just had an informal discussion, no real consensus. Waiting 
after the release is fine.

Patch

diff --git a/mercurial/templatekw.py b/mercurial/templatekw.py
--- a/mercurial/templatekw.py
+++ b/mercurial/templatekw.py
@@ -394,6 +394,8 @@  def showgraphnode(repo, ctx, **args):
         return '@'
     elif ctx.obsolete():
         return 'x'
+    elif ctx.troubled():
+        return '?'
     elif ctx.closesbranch():
         return '_'
     else:
diff --git a/tests/test-obsolete-divergent.t b/tests/test-obsolete-divergent.t
--- a/tests/test-obsolete-divergent.t
+++ b/tests/test-obsolete-divergent.t
@@ -59,9 +59,9 @@  A_1 have two direct and divergent succes
   $ hg debugobsolete `getid A_0` `getid A_1`
   $ hg debugobsolete `getid A_0` `getid A_2`
   $ hg log -G --hidden
-  o  3:392fd25390da A_2
+  ?  3:392fd25390da A_2
   |
-  | o  2:82623d38b9ba A_1
+  | ?  2:82623d38b9ba A_1
   |/
   | x  1:007dc284c1f8 A_0
   |/
@@ -107,7 +107,7 @@  indirect divergence with known changeset
   |
   | x  3:392fd25390da A_2
   |/
-  | o  2:82623d38b9ba A_1
+  | ?  2:82623d38b9ba A_1
   |/
   | x  1:007dc284c1f8 A_0
   |/
@@ -139,9 +139,9 @@  indirect divergence with known changeset
   $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid A_1`
   $ hg debugobsolete `getid A_0` `getid A_2`
   $ hg log -G --hidden
-  o  3:392fd25390da A_2
+  ?  3:392fd25390da A_2
   |
-  | o  2:82623d38b9ba A_1
+  | ?  2:82623d38b9ba A_1
   |/
   | x  1:007dc284c1f8 A_0
   |/
@@ -302,11 +302,11 @@  Check more complex obsolescence graft (w
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg debugobsolete `getid A_5` `getid A_9`
   $ hg log -G --hidden
-  o  10:bed64f5d2f5a A_9
+  ?  10:bed64f5d2f5a A_9
   |
-  | o  9:14608b260df8 A_8
+  | ?  9:14608b260df8 A_8
   |/
-  | o  8:7ae126973a96 A_7
+  | ?  8:7ae126973a96 A_7
   |/
   | x  7:3750ebee865d B_0
   | |
@@ -314,7 +314,7 @@  Check more complex obsolescence graft (w
   |/
   | x  5:6a411f0d7a0a A_4
   |/
-  | o  4:01f36c5a8fda A_3
+  | ?  4:01f36c5a8fda A_3
   |/
   | x  3:392fd25390da A_2
   |/
diff --git a/tests/test-rebase-obsolete.t b/tests/test-rebase-obsolete.t
--- a/tests/test-rebase-obsolete.t
+++ b/tests/test-rebase-obsolete.t
@@ -187,7 +187,7 @@  More complex case were part of the rebas
   $ hg log -G
   @  11:4596109a6a43 D
   |
-  | o  10:5ae4c968c6ac C
+  | ?  10:5ae4c968c6ac C
   | |
   | x  9:08483444fef9 D
   | |
@@ -398,7 +398,7 @@  Test that rewriting leaving instability 
   |
   o  10:7c6027df6a99 B
   |
-  | o  9:cf44d2f5a9f4 D
+  | ?  9:cf44d2f5a9f4 D
   | |
   | x  8:e273c5e7d2d2 C
   | |
@@ -429,7 +429,7 @@  Test multiple root handling
   |
   | o  12:102b4c1d889b D
   |/
-  | o  10:7c6027df6a99 B
+  | ?  10:7c6027df6a99 B
   | |
   | x  7:02de42196ebe H
   | |
@@ -499,7 +499,7 @@  test on rebase dropping a merge
   |
   | o  10:b5313c85b22e D
   |/
-  | o    8:53a6a128b2b7 M
+  | ?    8:53a6a128b2b7 M
   | |\
   | | x  7:02de42196ebe H
   | | |
@@ -533,15 +533,15 @@  Test hidden changesets in the rebase set
   $ hg log -G
   @  15:5ae8a643467b J
   |
-  o  14:9ad579b4a5de I
+  ?  14:9ad579b4a5de I
   |
-  | o  12:acd174b7ab39 I
+  | ?  12:acd174b7ab39 I
   | |
   | o  11:6c11a6218c97 H
   | |
   o |  10:b5313c85b22e D
   |/
-  | o    8:53a6a128b2b7 M
+  | ?    8:53a6a128b2b7 M
   | |\
   | | x  7:02de42196ebe H
   | | |
@@ -575,21 +575,21 @@  Test hidden changesets in the rebase set
   $ hg log -G
   @  20:bfaedf8eb73b M
   |
-  | o  18:97219452e4bd L
+  | ?  18:97219452e4bd L
   | |
   | x  17:fc37a630c901 K
   |/
-  | o  15:5ae8a643467b J
+  | ?  15:5ae8a643467b J
   | |
   | x  14:9ad579b4a5de I
   |/
-  | o  12:acd174b7ab39 I
+  | ?  12:acd174b7ab39 I
   | |
   | o  11:6c11a6218c97 H
   | |
   o |  10:b5313c85b22e D
   |/
-  | o    8:53a6a128b2b7 M
+  | ?    8:53a6a128b2b7 M
   | |\
   | | x  7:02de42196ebe H
   | | |
@@ -879,7 +879,7 @@  rebase source is obsoleted (issue5198)
   |
   | o  7:02de42196ebe H
   | |
-  | | o  6:eea13746799a G
+  | | ?  6:eea13746799a G
   | |/|
   | o |  5:24b6387c8c8c F
   |/ /