##// END OF EJS Templates
template: compute user in obsfateusers...
Boris Feld -
r33996:38f08eab default
parent child Browse files
Show More
@@ -601,3 +601,11 b' def successorsetverb(successorset):'
601 else:
601 else:
602 verb = 'split'
602 verb = 'split'
603 return verb
603 return verb
604
605 def markersusers(markers):
606 """ Returns a sorted list of markers users without duplicates
607 """
608 markersmeta = [dict(m[3]) for m in markers]
609 users = set(meta.get('user') for meta in markersmeta if meta.get('user'))
610
611 return sorted(users)
@@ -850,6 +850,24 b' def mod(context, mapping, args):'
850 func = lambda a, b: a % b
850 func = lambda a, b: a % b
851 return runarithmetic(context, mapping, (func, args[0], args[1]))
851 return runarithmetic(context, mapping, (func, args[0], args[1]))
852
852
853 @templatefunc('obsfateusers(markers)')
854 def obsfateusers(context, mapping, args):
855 """Compute obsfate related information based on markers (EXPERIMENTAL)"""
856 if len(args) != 1:
857 # i18n: "obsfateusers" is a keyword
858 raise error.ParseError(_("obsfateusers expects one arguments"))
859
860 markers = evalfuncarg(context, mapping, args[0])
861
862 try:
863 data = obsutil.markersusers(markers)
864 return templatekw.hybridlist(data, name='user')
865 except (TypeError, KeyError, ValueError):
866 # i18n: "obsfateusers" is a keyword
867 msg = _("obsfateusers first argument should be an iterable of "
868 "obsmakers")
869 raise error.ParseError(msg)
870
853 @templatefunc('obsfateverb(successors)')
871 @templatefunc('obsfateverb(successors)')
854 def obsfateverb(context, mapping, args):
872 def obsfateverb(context, mapping, args):
855 """Compute obsfate related information based on successors (EXPERIMENTAL)"""
873 """Compute obsfate related information based on successors (EXPERIMENTAL)"""
@@ -14,7 +14,8 b' Global setup'
14 > [templates]
14 > [templates]
15 > obsfatesuccessors = " as {join(successors, ", ")}"
15 > obsfatesuccessors = " as {join(successors, ", ")}"
16 > obsfateverb = "{obsfateverb(successors)}"
16 > obsfateverb = "{obsfateverb(successors)}"
17 > obsfate = "{obsfateverb}{obsfatesuccessors}; "
17 > obsfateusers = "{if(obsfateusers(markers), " by {join(obsfateusers(markers), ", ")}")}"
18 > obsfate = "{obsfateverb}{obsfatesuccessors}{obsfateusers}; "
18 > [alias]
19 > [alias]
19 > tlog = log -G -T '{node|short}\
20 > tlog = log -G -T '{node|short}\
20 > {if(predecessors, "\n Predecessors: {predecessors}")}\
21 > {if(predecessors, "\n Predecessors: {predecessors}")}\
@@ -93,21 +94,21 b' Predecessors template should show curren'
93 o d004c8f274b9
94 o d004c8f274b9
94 |
95 |
95 | @ 471f378eab4c
96 | @ 471f378eab4c
96 |/ Obsfate: rewritten as 4:d004c8f274b9;
97 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
97 o ea207398892e
98 o ea207398892e
98
99
99 $ hg fatelog
100 $ hg fatelog
100 o d004c8f274b9
101 o d004c8f274b9
101 |
102 |
102 | @ 471f378eab4c
103 | @ 471f378eab4c
103 |/ Obsfate: rewritten as 4:d004c8f274b9;
104 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
104 o ea207398892e
105 o ea207398892e
105
106
106 $ hg fatelog -v
107 $ hg fatelog -v
107 o d004c8f274b9
108 o d004c8f274b9
108 |
109 |
109 | @ 471f378eab4c
110 | @ 471f378eab4c
110 |/ Obsfate: rewritten as 4:d004c8f274b9;
111 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
111 o ea207398892e
112 o ea207398892e
112
113
113 $ hg up 'desc(A1)' --hidden
114 $ hg up 'desc(A1)' --hidden
@@ -130,7 +131,7 b' Predecessors template should show curren'
130 o d004c8f274b9
131 o d004c8f274b9
131 |
132 |
132 | @ a468dc9b3633
133 | @ a468dc9b3633
133 |/ Obsfate: rewritten as 4:d004c8f274b9;
134 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
134 o ea207398892e
135 o ea207398892e
135
136
136 Predecessors template should show all the predecessors as we force their display
137 Predecessors template should show all the predecessors as we force their display
@@ -161,11 +162,11 b' with --hidden'
161 o d004c8f274b9
162 o d004c8f274b9
162 |
163 |
163 | @ a468dc9b3633
164 | @ a468dc9b3633
164 |/ Obsfate: rewritten as 4:d004c8f274b9;
165 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
165 | x f137d23bb3e1
166 | x f137d23bb3e1
166 | |
167 | |
167 | x 471f378eab4c
168 | x 471f378eab4c
168 |/ Obsfate: rewritten as 3:a468dc9b3633;
169 |/ Obsfate: rewritten as 3:a468dc9b3633 by test1;
169 o ea207398892e
170 o ea207398892e
170
171
171
172
@@ -210,14 +211,13 b' visible.'
210 @ d004c8f274b9
211 @ d004c8f274b9
211 |
212 |
212 | x a468dc9b3633
213 | x a468dc9b3633
213 |/ Obsfate: rewritten as 4:d004c8f274b9;
214 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
214 | x f137d23bb3e1
215 | x f137d23bb3e1
215 | |
216 | |
216 | x 471f378eab4c
217 | x 471f378eab4c
217 |/ Obsfate: rewritten as 3:a468dc9b3633;
218 |/ Obsfate: rewritten as 3:a468dc9b3633 by test1;
218 o ea207398892e
219 o ea207398892e
219
220
220
221 $ hg fatelogjson --hidden
221 $ hg fatelogjson --hidden
222 @ d004c8f274b9
222 @ d004c8f274b9
223 |
223 |
@@ -319,7 +319,7 b' Predecessors template should show curren'
319 o 337fec4d2edc
319 o 337fec4d2edc
320 |
320 |
321 | @ 471597cad322
321 | @ 471597cad322
322 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a;
322 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test;
323 o ea207398892e
323 o ea207398892e
324
324
325 $ hg up f257fde29c7a
325 $ hg up f257fde29c7a
@@ -360,7 +360,7 b' with --hidden'
360 o 337fec4d2edc
360 o 337fec4d2edc
361 |
361 |
362 | x 471597cad322
362 | x 471597cad322
363 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a;
363 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test;
364 o ea207398892e
364 o ea207398892e
365
365
366 $ hg fatelogjson --hidden
366 $ hg fatelogjson --hidden
@@ -461,7 +461,7 b' Predecessors template should show curren'
461 o eb5a0daa2192
461 o eb5a0daa2192
462 |
462 |
463 | @ 471f378eab4c
463 | @ 471f378eab4c
464 |/ Obsfate: rewritten as 3:eb5a0daa2192;
464 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
465 o ea207398892e
465 o ea207398892e
466
466
467 $ hg up 'desc(B0)' --hidden
467 $ hg up 'desc(B0)' --hidden
@@ -490,9 +490,9 b' displayed'
490 o eb5a0daa2192
490 o eb5a0daa2192
491 |
491 |
492 | @ 0dec01379d3b
492 | @ 0dec01379d3b
493 | | Obsfate: rewritten as 3:eb5a0daa2192;
493 | | Obsfate: rewritten as 3:eb5a0daa2192 by test;
494 | x 471f378eab4c
494 | x 471f378eab4c
495 |/ Obsfate: rewritten as 3:eb5a0daa2192;
495 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
496 o ea207398892e
496 o ea207398892e
497
497
498 $ hg up 'desc(C0)'
498 $ hg up 'desc(C0)'
@@ -528,9 +528,9 b' with --hidden'
528 @ eb5a0daa2192
528 @ eb5a0daa2192
529 |
529 |
530 | x 0dec01379d3b
530 | x 0dec01379d3b
531 | | Obsfate: rewritten as 3:eb5a0daa2192;
531 | | Obsfate: rewritten as 3:eb5a0daa2192 by test;
532 | x 471f378eab4c
532 | x 471f378eab4c
533 |/ Obsfate: rewritten as 3:eb5a0daa2192;
533 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
534 o ea207398892e
534 o ea207398892e
535
535
536
536
@@ -667,7 +667,7 b' Predecessors template should show curren'
667 | o fdf9bde5129a
667 | o fdf9bde5129a
668 |/
668 |/
669 | @ 471f378eab4c
669 | @ 471f378eab4c
670 |/ Obsfate: rewritten as 2:fdf9bde5129a; rewritten as 4:019fadeab383;
670 |/ Obsfate: rewritten as 2:fdf9bde5129a by test; rewritten as 4:019fadeab383 by test;
671 o ea207398892e
671 o ea207398892e
672
672
673 $ hg up 'desc(A1)'
673 $ hg up 'desc(A1)'
@@ -723,11 +723,11 b' Predecessors template should the predece'
723 o 019fadeab383
723 o 019fadeab383
724 |
724 |
725 | x 65b757b745b9
725 | x 65b757b745b9
726 |/ Obsfate: rewritten as 4:019fadeab383;
726 |/ Obsfate: rewritten as 4:019fadeab383 by test;
727 | @ fdf9bde5129a
727 | @ fdf9bde5129a
728 |/
728 |/
729 | x 471f378eab4c
729 | x 471f378eab4c
730 |/ Obsfate: rewritten as 2:fdf9bde5129a; rewritten as 3:65b757b745b9;
730 |/ Obsfate: rewritten as 2:fdf9bde5129a by test; rewritten as 3:65b757b745b9 by test;
731 o ea207398892e
731 o ea207398892e
732
732
733
733
@@ -845,7 +845,7 b' Predecessors template should show curren'
845 o eb5a0daa2192
845 o eb5a0daa2192
846 |
846 |
847 | @ 471f378eab4c
847 | @ 471f378eab4c
848 |/ Obsfate: rewritten as 4:eb5a0daa2192;
848 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
849 o ea207398892e
849 o ea207398892e
850
850
851 $ hg up 'desc(B0)' --hidden
851 $ hg up 'desc(B0)' --hidden
@@ -873,9 +873,9 b' Predecessors template should both predec'
873 o eb5a0daa2192
873 o eb5a0daa2192
874 |
874 |
875 | @ 0dec01379d3b
875 | @ 0dec01379d3b
876 | | Obsfate: rewritten as 4:eb5a0daa2192;
876 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
877 | x 471f378eab4c
877 | x 471f378eab4c
878 |/ Obsfate: rewritten as 4:eb5a0daa2192;
878 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
879 o ea207398892e
879 o ea207398892e
880
880
881 $ hg up 'desc(B1)' --hidden
881 $ hg up 'desc(B1)' --hidden
@@ -903,9 +903,9 b' Predecessors template should both predec'
903 o eb5a0daa2192
903 o eb5a0daa2192
904 |
904 |
905 | @ b7ea6d14e664
905 | @ b7ea6d14e664
906 | | Obsfate: rewritten as 4:eb5a0daa2192;
906 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
907 | x 471f378eab4c
907 | x 471f378eab4c
908 |/ Obsfate: rewritten as 4:eb5a0daa2192;
908 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
909 o ea207398892e
909 o ea207398892e
910
910
911 $ hg up 'desc(C0)'
911 $ hg up 'desc(C0)'
@@ -954,11 +954,11 b' with --hidden'
954 @ eb5a0daa2192
954 @ eb5a0daa2192
955 |
955 |
956 | x b7ea6d14e664
956 | x b7ea6d14e664
957 | | Obsfate: rewritten as 4:eb5a0daa2192;
957 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
958 | | x 0dec01379d3b
958 | | x 0dec01379d3b
959 | |/ Obsfate: rewritten as 3:b7ea6d14e664;
959 | |/ Obsfate: rewritten as 3:b7ea6d14e664 by test;
960 | x 471f378eab4c
960 | x 471f378eab4c
961 |/ Obsfate: rewritten as 4:eb5a0daa2192;
961 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
962 o ea207398892e
962 o ea207398892e
963
963
964
964
@@ -1082,7 +1082,7 b' Predecessors template should show curren'
1082 o 7a230b46bf61
1082 o 7a230b46bf61
1083 |
1083 |
1084 | @ 471f378eab4c
1084 | @ 471f378eab4c
1085 |/ Obsfate: rewritten as 2:7a230b46bf61;
1085 |/ Obsfate: rewritten as 2:7a230b46bf61 by test;
1086 o ea207398892e
1086 o ea207398892e
1087
1087
1088 $ hg up 'desc(A2)'
1088 $ hg up 'desc(A2)'
@@ -1119,7 +1119,7 b' with --hidden'
1119 @ 7a230b46bf61
1119 @ 7a230b46bf61
1120 |
1120 |
1121 | x 471f378eab4c
1121 | x 471f378eab4c
1122 |/ Obsfate: rewritten as 2:7a230b46bf61;
1122 |/ Obsfate: rewritten as 2:7a230b46bf61 by test;
1123 o ea207398892e
1123 o ea207398892e
1124
1124
1125
1125
@@ -1194,9 +1194,9 b' Check templates'
1194 o f897c6137566
1194 o f897c6137566
1195 |
1195 |
1196 | @ 0dec01379d3b
1196 | @ 0dec01379d3b
1197 | | Obsfate: rewritten as 3:f897c6137566; rewritten as 1:471f378eab4c;
1197 | | Obsfate: rewritten as 3:f897c6137566 by test; rewritten as 1:471f378eab4c by test;
1198 | x 471f378eab4c
1198 | x 471f378eab4c
1199 |/ Obsfate: rewritten as 2:0dec01379d3b;
1199 |/ Obsfate: rewritten as 2:0dec01379d3b by test;
1200 o ea207398892e
1200 o ea207398892e
1201
1201
1202
1202
@@ -1452,7 +1452,7 b' Check templates'
1452 | o ba2ed02b0c9a
1452 | o ba2ed02b0c9a
1453 | |
1453 | |
1454 | x 4a004186e638
1454 | x 4a004186e638
1455 |/ Obsfate: rewritten as 8:b18bc8331526; rewritten as 9:0b997eb7ceee;
1455 |/ Obsfate: rewritten as 8:b18bc8331526 by test; rewritten as 9:0b997eb7ceee by test;
1456 o dd800401bd8c
1456 o dd800401bd8c
1457 |
1457 |
1458 o f897c6137566
1458 o f897c6137566
@@ -1525,17 +1525,17 b' Check templates'
1525 | o ba2ed02b0c9a
1525 | o ba2ed02b0c9a
1526 | |
1526 | |
1527 | x 4a004186e638
1527 | x 4a004186e638
1528 |/ Obsfate: rewritten as 8:b18bc8331526; rewritten as 9:0b997eb7ceee;
1528 |/ Obsfate: rewritten as 8:b18bc8331526 by test; rewritten as 9:0b997eb7ceee by test;
1529 o dd800401bd8c
1529 o dd800401bd8c
1530 |
1530 |
1531 | x 9bd10a0775e4
1531 | x 9bd10a0775e4
1532 |/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a;
1532 |/ Obsfate: split as 5:dd800401bd8c, 6:4a004186e638, 7:ba2ed02b0c9a by test;
1533 o f897c6137566
1533 o f897c6137566
1534 |
1534 |
1535 | x 0dec01379d3b
1535 | x 0dec01379d3b
1536 | | Obsfate: rewritten as 3:f897c6137566; rewritten as 1:471f378eab4c;
1536 | | Obsfate: rewritten as 3:f897c6137566 by test; rewritten as 1:471f378eab4c by test;
1537 | x 471f378eab4c
1537 | x 471f378eab4c
1538 |/ Obsfate: rewritten as 2:0dec01379d3b;
1538 |/ Obsfate: rewritten as 2:0dec01379d3b by test;
1539 o ea207398892e
1539 o ea207398892e
1540
1540
1541 $ hg fatelogjson --hidden
1541 $ hg fatelogjson --hidden
@@ -1604,7 +1604,7 b' Check templates'
1604 o dd800401bd8c
1604 o dd800401bd8c
1605 |
1605 |
1606 | @ 9bd10a0775e4
1606 | @ 9bd10a0775e4
1607 |/ Obsfate: split as 5:dd800401bd8c, 9:0b997eb7ceee, 10:eceed8f98ffc; split as 5:dd800401bd8c, 8:b18bc8331526, 10:eceed8f98ffc;
1607 |/ Obsfate: split as 5:dd800401bd8c, 9:0b997eb7ceee, 10:eceed8f98ffc by test; split as 5:dd800401bd8c, 8:b18bc8331526, 10:eceed8f98ffc by test;
1608 o f897c6137566
1608 o f897c6137566
1609 |
1609 |
1610 o ea207398892e
1610 o ea207398892e
General Comments 0
You need to be logged in to leave comments. Login now