##// 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 601 else:
602 602 verb = 'split'
603 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 850 func = lambda a, b: a % b
851 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 871 @templatefunc('obsfateverb(successors)')
854 872 def obsfateverb(context, mapping, args):
855 873 """Compute obsfate related information based on successors (EXPERIMENTAL)"""
@@ -14,7 +14,8 b' Global setup'
14 14 > [templates]
15 15 > obsfatesuccessors = " as {join(successors, ", ")}"
16 16 > obsfateverb = "{obsfateverb(successors)}"
17 > obsfate = "{obsfateverb}{obsfatesuccessors}; "
17 > obsfateusers = "{if(obsfateusers(markers), " by {join(obsfateusers(markers), ", ")}")}"
18 > obsfate = "{obsfateverb}{obsfatesuccessors}{obsfateusers}; "
18 19 > [alias]
19 20 > tlog = log -G -T '{node|short}\
20 21 > {if(predecessors, "\n Predecessors: {predecessors}")}\
@@ -93,21 +94,21 b' Predecessors template should show curren'
93 94 o d004c8f274b9
94 95 |
95 96 | @ 471f378eab4c
96 |/ Obsfate: rewritten as 4:d004c8f274b9;
97 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
97 98 o ea207398892e
98 99
99 100 $ hg fatelog
100 101 o d004c8f274b9
101 102 |
102 103 | @ 471f378eab4c
103 |/ Obsfate: rewritten as 4:d004c8f274b9;
104 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
104 105 o ea207398892e
105 106
106 107 $ hg fatelog -v
107 108 o d004c8f274b9
108 109 |
109 110 | @ 471f378eab4c
110 |/ Obsfate: rewritten as 4:d004c8f274b9;
111 |/ Obsfate: rewritten as 4:d004c8f274b9 by test1, test2;
111 112 o ea207398892e
112 113
113 114 $ hg up 'desc(A1)' --hidden
@@ -130,7 +131,7 b' Predecessors template should show curren'
130 131 o d004c8f274b9
131 132 |
132 133 | @ a468dc9b3633
133 |/ Obsfate: rewritten as 4:d004c8f274b9;
134 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
134 135 o ea207398892e
135 136
136 137 Predecessors template should show all the predecessors as we force their display
@@ -161,11 +162,11 b' with --hidden'
161 162 o d004c8f274b9
162 163 |
163 164 | @ a468dc9b3633
164 |/ Obsfate: rewritten as 4:d004c8f274b9;
165 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
165 166 | x f137d23bb3e1
166 167 | |
167 168 | x 471f378eab4c
168 |/ Obsfate: rewritten as 3:a468dc9b3633;
169 |/ Obsfate: rewritten as 3:a468dc9b3633 by test1;
169 170 o ea207398892e
170 171
171 172
@@ -210,14 +211,13 b' visible.'
210 211 @ d004c8f274b9
211 212 |
212 213 | x a468dc9b3633
213 |/ Obsfate: rewritten as 4:d004c8f274b9;
214 |/ Obsfate: rewritten as 4:d004c8f274b9 by test2;
214 215 | x f137d23bb3e1
215 216 | |
216 217 | x 471f378eab4c
217 |/ Obsfate: rewritten as 3:a468dc9b3633;
218 |/ Obsfate: rewritten as 3:a468dc9b3633 by test1;
218 219 o ea207398892e
219 220
220
221 221 $ hg fatelogjson --hidden
222 222 @ d004c8f274b9
223 223 |
@@ -319,7 +319,7 b' Predecessors template should show curren'
319 319 o 337fec4d2edc
320 320 |
321 321 | @ 471597cad322
322 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a;
322 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test;
323 323 o ea207398892e
324 324
325 325 $ hg up f257fde29c7a
@@ -360,7 +360,7 b' with --hidden'
360 360 o 337fec4d2edc
361 361 |
362 362 | x 471597cad322
363 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a;
363 |/ Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a by test;
364 364 o ea207398892e
365 365
366 366 $ hg fatelogjson --hidden
@@ -461,7 +461,7 b' Predecessors template should show curren'
461 461 o eb5a0daa2192
462 462 |
463 463 | @ 471f378eab4c
464 |/ Obsfate: rewritten as 3:eb5a0daa2192;
464 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
465 465 o ea207398892e
466 466
467 467 $ hg up 'desc(B0)' --hidden
@@ -490,9 +490,9 b' displayed'
490 490 o eb5a0daa2192
491 491 |
492 492 | @ 0dec01379d3b
493 | | Obsfate: rewritten as 3:eb5a0daa2192;
493 | | Obsfate: rewritten as 3:eb5a0daa2192 by test;
494 494 | x 471f378eab4c
495 |/ Obsfate: rewritten as 3:eb5a0daa2192;
495 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
496 496 o ea207398892e
497 497
498 498 $ hg up 'desc(C0)'
@@ -528,9 +528,9 b' with --hidden'
528 528 @ eb5a0daa2192
529 529 |
530 530 | x 0dec01379d3b
531 | | Obsfate: rewritten as 3:eb5a0daa2192;
531 | | Obsfate: rewritten as 3:eb5a0daa2192 by test;
532 532 | x 471f378eab4c
533 |/ Obsfate: rewritten as 3:eb5a0daa2192;
533 |/ Obsfate: rewritten as 3:eb5a0daa2192 by test;
534 534 o ea207398892e
535 535
536 536
@@ -667,7 +667,7 b' Predecessors template should show curren'
667 667 | o fdf9bde5129a
668 668 |/
669 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 671 o ea207398892e
672 672
673 673 $ hg up 'desc(A1)'
@@ -723,11 +723,11 b' Predecessors template should the predece'
723 723 o 019fadeab383
724 724 |
725 725 | x 65b757b745b9
726 |/ Obsfate: rewritten as 4:019fadeab383;
726 |/ Obsfate: rewritten as 4:019fadeab383 by test;
727 727 | @ fdf9bde5129a
728 728 |/
729 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 731 o ea207398892e
732 732
733 733
@@ -845,7 +845,7 b' Predecessors template should show curren'
845 845 o eb5a0daa2192
846 846 |
847 847 | @ 471f378eab4c
848 |/ Obsfate: rewritten as 4:eb5a0daa2192;
848 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
849 849 o ea207398892e
850 850
851 851 $ hg up 'desc(B0)' --hidden
@@ -873,9 +873,9 b' Predecessors template should both predec'
873 873 o eb5a0daa2192
874 874 |
875 875 | @ 0dec01379d3b
876 | | Obsfate: rewritten as 4:eb5a0daa2192;
876 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
877 877 | x 471f378eab4c
878 |/ Obsfate: rewritten as 4:eb5a0daa2192;
878 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
879 879 o ea207398892e
880 880
881 881 $ hg up 'desc(B1)' --hidden
@@ -903,9 +903,9 b' Predecessors template should both predec'
903 903 o eb5a0daa2192
904 904 |
905 905 | @ b7ea6d14e664
906 | | Obsfate: rewritten as 4:eb5a0daa2192;
906 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
907 907 | x 471f378eab4c
908 |/ Obsfate: rewritten as 4:eb5a0daa2192;
908 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
909 909 o ea207398892e
910 910
911 911 $ hg up 'desc(C0)'
@@ -954,11 +954,11 b' with --hidden'
954 954 @ eb5a0daa2192
955 955 |
956 956 | x b7ea6d14e664
957 | | Obsfate: rewritten as 4:eb5a0daa2192;
957 | | Obsfate: rewritten as 4:eb5a0daa2192 by test;
958 958 | | x 0dec01379d3b
959 | |/ Obsfate: rewritten as 3:b7ea6d14e664;
959 | |/ Obsfate: rewritten as 3:b7ea6d14e664 by test;
960 960 | x 471f378eab4c
961 |/ Obsfate: rewritten as 4:eb5a0daa2192;
961 |/ Obsfate: rewritten as 4:eb5a0daa2192 by test;
962 962 o ea207398892e
963 963
964 964
@@ -1082,7 +1082,7 b' Predecessors template should show curren'
1082 1082 o 7a230b46bf61
1083 1083 |
1084 1084 | @ 471f378eab4c
1085 |/ Obsfate: rewritten as 2:7a230b46bf61;
1085 |/ Obsfate: rewritten as 2:7a230b46bf61 by test;
1086 1086 o ea207398892e
1087 1087
1088 1088 $ hg up 'desc(A2)'
@@ -1119,7 +1119,7 b' with --hidden'
1119 1119 @ 7a230b46bf61
1120 1120 |
1121 1121 | x 471f378eab4c
1122 |/ Obsfate: rewritten as 2:7a230b46bf61;
1122 |/ Obsfate: rewritten as 2:7a230b46bf61 by test;
1123 1123 o ea207398892e
1124 1124
1125 1125
@@ -1194,9 +1194,9 b' Check templates'
1194 1194 o f897c6137566
1195 1195 |
1196 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 1198 | x 471f378eab4c
1199 |/ Obsfate: rewritten as 2:0dec01379d3b;
1199 |/ Obsfate: rewritten as 2:0dec01379d3b by test;
1200 1200 o ea207398892e
1201 1201
1202 1202
@@ -1452,7 +1452,7 b' Check templates'
1452 1452 | o ba2ed02b0c9a
1453 1453 | |
1454 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 1456 o dd800401bd8c
1457 1457 |
1458 1458 o f897c6137566
@@ -1525,17 +1525,17 b' Check templates'
1525 1525 | o ba2ed02b0c9a
1526 1526 | |
1527 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 1529 o dd800401bd8c
1530 1530 |
1531 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 1533 o f897c6137566
1534 1534 |
1535 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 1537 | x 471f378eab4c
1538 |/ Obsfate: rewritten as 2:0dec01379d3b;
1538 |/ Obsfate: rewritten as 2:0dec01379d3b by test;
1539 1539 o ea207398892e
1540 1540
1541 1541 $ hg fatelogjson --hidden
@@ -1604,7 +1604,7 b' Check templates'
1604 1604 o dd800401bd8c
1605 1605 |
1606 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 1608 o f897c6137566
1609 1609 |
1610 1610 o ea207398892e
General Comments 0
You need to be logged in to leave comments. Login now