##// END OF EJS Templates
hg log: Move filtering implicit parents to own method and use it in templater....
Thomas Arendsen Hein -
r4825:3cf94964 default
parent child Browse files
Show More
@@ -758,14 +758,8 b' class changeset_printer(object):'
758 758
759 759 hexfunc = self.ui.debugflag and hex or short
760 760
761 parents = log.parentrevs(rev)
762 if not self.ui.debugflag:
763 if parents[1] == nullrev:
764 if parents[0] >= rev - 1:
765 parents = []
766 else:
767 parents = [parents[0]]
768 parents = [(p, hexfunc(log.node(p))) for p in parents]
761 parents = [(p, hexfunc(log.node(p)))
762 for p in self._meaningful_parentrevs(log, rev)]
769 763
770 764 self.ui.write(_("changeset: %d:%s\n") % (rev, hexfunc(changenode)))
771 765
@@ -823,6 +817,22 b' class changeset_printer(object):'
823 817 opts=patch.diffopts(self.ui))
824 818 self.ui.write("\n")
825 819
820 def _meaningful_parentrevs(self, log, rev):
821 """Return list of meaningful (or all if debug) parentrevs for rev.
822
823 For merges (two non-nullrev revisions) both parents are meaningful.
824 Otherwise the first parent revision is considered meaningful if it
825 is not the preceding revision.
826 """
827 parents = log.parentrevs(rev)
828 if not self.ui.debugflag and parents[1] == nullrev:
829 if parents[0] >= rev - 1:
830 parents = []
831 else:
832 parents = [parents[0]]
833 return parents
834
835
826 836 class changeset_templater(changeset_printer):
827 837 '''format changeset information.'''
828 838
@@ -919,12 +929,8 b' class changeset_templater(changeset_prin'
919 929 return showlist('branch', [branch], plural='branches', **args)
920 930
921 931 def showparents(**args):
922 parents = [[('rev', log.rev(p)), ('node', hex(p))]
923 for p in log.parents(changenode)
924 if self.ui.debugflag or p != nullid]
925 if (not self.ui.debugflag and len(parents) == 1 and
926 parents[0][0][1] == rev - 1):
927 return
932 parents = [[('rev', p), ('node', hex(log.node(p)))]
933 for p in self._meaningful_parentrevs(log, rev)]
928 934 return showlist('parent', parents, **args)
929 935
930 936 def showtags(**args):
@@ -25,6 +25,11 b' hg add d'
25 25 hg commit -m 'new head' -d '1500000 0' -u 'person'
26 26 hg merge -q
27 27 hg commit -m 'merge' -d '1500001 0' -u 'person'
28 # second branch starting at nullrev
29 hg update null
30 echo second > second
31 hg add second
32 hg commit -m second -d '1000000 0' -u 'User Name <user@hostname>'
28 33
29 34 # make sure user/global hgrc does not affect tests
30 35 echo '[ui]' > .hg/hgrc
@@ -1,3 +1,4 b''
1 0 files updated, 0 files merged, 4 files removed, 0 files unresolved
1 2 # default style is like normal output
2 3 # normal
3 4 # verbose
@@ -5,7 +6,10 b''
5 6 # revision with no copies (used to print a traceback)
6 7
7 8 # compact style works
8 6[tip]:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
9 7[tip]:-1 29114dbae42b 1970-01-12 13:46 +0000 user
10 second
11
12 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
9 13 merge
10 14
11 15 5:3 13207e5a10d9 1970-01-18 08:40 +0000 person
@@ -26,7 +30,10 b' 1 b608e9d1a3f0 1970-01-13 17:33 +000'
26 30 0 1e4e1b8f71e0 1970-01-12 13:46 +0000 user
27 31 line 1
28 32
29 6[tip]:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
33 7[tip]:-1 29114dbae42b 1970-01-12 13:46 +0000 user
34 second
35
36 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
30 37 merge
31 38
32 39 5:3 13207e5a10d9 1970-01-18 08:40 +0000 person
@@ -47,7 +54,10 b' 1 b608e9d1a3f0 1970-01-13 17:33 +000'
47 54 0 1e4e1b8f71e0 1970-01-12 13:46 +0000 user
48 55 line 1
49 56
50 6[tip]:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
57 7[tip]:-1,-1 29114dbae42b 1970-01-12 13:46 +0000 user
58 second
59
60 6:5,4 c7b487c6c50e 1970-01-18 08:40 +0000 person
51 61 merge
52 62
53 63 5:3,-1 13207e5a10d9 1970-01-18 08:40 +0000 person
@@ -77,6 +87,7 b" abort: ./t: no key named 'changeset'"
77 87 # error if include fails
78 88 abort: template file ./q: Permission denied
79 89 # include works
90 7
80 91 6
81 92 5
82 93 4
@@ -85,6 +96,7 b' 2'
85 96 1
86 97 0
87 98 # ui.style works
99 7
88 100 6
89 101 5
90 102 4
@@ -93,10 +105,16 b' 2'
93 105 1
94 106 0
95 107 # issue338
108 1970-01-12 User Name <user@hostname>
109
110 * second:
111 second
112 [29114dbae42b] [tip]
113
96 114 1970-01-18 person <person>
97 115
98 116 * merge
99 [c7b487c6c50e] [tip]
117 [c7b487c6c50e]
100 118
101 119 * d:
102 120 new head
@@ -134,6 +152,7 b' 1970-01-12 User Name <user@hostname>'
134 152 [1e4e1b8f71e0]
135 153
136 154 # keys work
155 author: User Name <user@hostname>
137 156 author: person
138 157 author: person
139 158 author: person
@@ -141,6 +160,7 b' author: person'
141 160 author: other@place
142 161 author: A. N. Other <other@place>
143 162 author: User Name <user@hostname>
163 author--verbose: User Name <user@hostname>
144 164 author--verbose: person
145 165 author--verbose: person
146 166 author--verbose: person
@@ -148,6 +168,7 b' author--verbose: person'
148 168 author--verbose: other@place
149 169 author--verbose: A. N. Other <other@place>
150 170 author--verbose: User Name <user@hostname>
171 author--debug: User Name <user@hostname>
151 172 author--debug: person
152 173 author--debug: person
153 174 author--debug: person
@@ -157,6 +178,7 b' author--debug: A. N. Other <other@place>'
157 178 author--debug: User Name <user@hostname>
158 179 branches:
159 180 branches:
181 branches:
160 182 branches: foo
161 183 branches:
162 184 branches:
@@ -164,6 +186,7 b' branches:'
164 186 branches:
165 187 branches--verbose:
166 188 branches--verbose:
189 branches--verbose:
167 190 branches--verbose: foo
168 191 branches--verbose:
169 192 branches--verbose:
@@ -171,11 +194,13 b' branches--verbose:'
171 194 branches--verbose:
172 195 branches--debug:
173 196 branches--debug:
197 branches--debug:
174 198 branches--debug: foo
175 199 branches--debug:
176 200 branches--debug:
177 201 branches--debug:
178 202 branches--debug:
203 date: 1000000.00
179 204 date: 1500001.00
180 205 date: 1500000.00
181 206 date: 1400000.00
@@ -183,6 +208,7 b' date: 1300000.00'
183 208 date: 1200000.00
184 209 date: 1100000.00
185 210 date: 1000000.00
211 date--verbose: 1000000.00
186 212 date--verbose: 1500001.00
187 213 date--verbose: 1500000.00
188 214 date--verbose: 1400000.00
@@ -190,6 +216,7 b' date--verbose: 1300000.00'
190 216 date--verbose: 1200000.00
191 217 date--verbose: 1100000.00
192 218 date--verbose: 1000000.00
219 date--debug: 1000000.00
193 220 date--debug: 1500001.00
194 221 date--debug: 1500000.00
195 222 date--debug: 1400000.00
@@ -197,6 +224,7 b' date--debug: 1300000.00'
197 224 date--debug: 1200000.00
198 225 date--debug: 1100000.00
199 226 date--debug: 1000000.00
227 desc: second
200 228 desc: merge
201 229 desc: new head
202 230 desc: new branch
@@ -208,6 +236,7 b' other 2'
208 236 other 3
209 237 desc: line 1
210 238 line 2
239 desc--verbose: second
211 240 desc--verbose: merge
212 241 desc--verbose: new head
213 242 desc--verbose: new branch
@@ -219,6 +248,7 b' other 2'
219 248 other 3
220 249 desc--verbose: line 1
221 250 line 2
251 desc--debug: second
222 252 desc--debug: merge
223 253 desc--debug: new head
224 254 desc--debug: new branch
@@ -237,6 +267,8 b' file_adds:'
237 267 file_adds:
238 268 file_adds:
239 269 file_adds:
270 file_adds:
271 file_adds--verbose:
240 272 file_adds--verbose:
241 273 file_adds--verbose:
242 274 file_adds--verbose:
@@ -244,6 +276,7 b' file_adds--verbose:'
244 276 file_adds--verbose:
245 277 file_adds--verbose:
246 278 file_adds--verbose:
279 file_adds--debug: second
247 280 file_adds--debug:
248 281 file_adds--debug: d
249 282 file_adds--debug:
@@ -258,6 +291,7 b' file_dels:'
258 291 file_dels:
259 292 file_dels:
260 293 file_dels:
294 file_dels:
261 295 file_dels--verbose:
262 296 file_dels--verbose:
263 297 file_dels--verbose:
@@ -265,6 +299,8 b' file_dels--verbose:'
265 299 file_dels--verbose:
266 300 file_dels--verbose:
267 301 file_dels--verbose:
302 file_dels--verbose:
303 file_dels--debug:
268 304 file_dels--debug:
269 305 file_dels--debug:
270 306 file_dels--debug:
@@ -272,6 +308,7 b' file_dels--debug:'
272 308 file_dels--debug:
273 309 file_dels--debug:
274 310 file_dels--debug:
311 files: second
275 312 files:
276 313 files: d
277 314 files:
@@ -279,6 +316,7 b' files: c'
279 316 files: c
280 317 files: b
281 318 files: a
319 files--verbose: second
282 320 files--verbose:
283 321 files--verbose: d
284 322 files--verbose:
@@ -289,6 +327,7 b' files--verbose: a'
289 327 files--debug:
290 328 files--debug:
291 329 files--debug:
330 files--debug:
292 331 files--debug: c
293 332 files--debug:
294 333 files--debug:
@@ -300,6 +339,7 b' manifest:'
300 339 manifest:
301 340 manifest:
302 341 manifest:
342 manifest:
303 343 manifest--verbose:
304 344 manifest--verbose:
305 345 manifest--verbose:
@@ -307,6 +347,8 b' manifest--verbose:'
307 347 manifest--verbose:
308 348 manifest--verbose:
309 349 manifest--verbose:
350 manifest--verbose:
351 manifest--debug: 7:f2dbc354b94e5ec0b4f10680ee0cee816101d0bf
310 352 manifest--debug: 6:91015e9dbdd76a6791085d12b0a0ec7fcd22ffbf
311 353 manifest--debug: 5:4dc3def4f9b4c6e8de820f6ee74737f91e96a216
312 354 manifest--debug: 4:90ae8dda64e1a876c792bccb9af66284f6018363
@@ -314,6 +356,7 b' manifest--debug: 3:cb5a1327723bada42f117'
314 356 manifest--debug: 2:6e0e82995c35d0d57a52aca8da4e56139e06b4b1
315 357 manifest--debug: 1:4e8d705b1e53e3f9375e0e60dc7b525d8211fe55
316 358 manifest--debug: 0:a0c8bcbbb45c63b90b70ad007bf38961f64f2af0
359 node: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
317 360 node: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
318 361 node: 13207e5a10d9fd28ec424934298e176197f2c67f
319 362 node: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
@@ -321,6 +364,7 b' node: 10e46f2dcbf4823578cf180f33ecf0b957'
321 364 node: 97054abb4ab824450e9164180baf491ae0078465
322 365 node: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
323 366 node: 1e4e1b8f71e05681d422154f5421e385fec3454f
367 node--verbose: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
324 368 node--verbose: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
325 369 node--verbose: 13207e5a10d9fd28ec424934298e176197f2c67f
326 370 node--verbose: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
@@ -328,6 +372,7 b' node--verbose: 10e46f2dcbf4823578cf180f3'
328 372 node--verbose: 97054abb4ab824450e9164180baf491ae0078465
329 373 node--verbose: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
330 374 node--verbose: 1e4e1b8f71e05681d422154f5421e385fec3454f
375 node--debug: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
331 376 node--debug: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
332 377 node--debug: 13207e5a10d9fd28ec424934298e176197f2c67f
333 378 node--debug: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
@@ -335,6 +380,7 b' node--debug: 10e46f2dcbf4823578cf180f33e'
335 380 node--debug: 97054abb4ab824450e9164180baf491ae0078465
336 381 node--debug: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
337 382 node--debug: 1e4e1b8f71e05681d422154f5421e385fec3454f
383 parents: -1:000000000000
338 384 parents: 5:13207e5a10d9 4:32a18f097fcc
339 385 parents: 3:10e46f2dcbf4
340 386 parents:
@@ -342,6 +388,7 b' parents:'
342 388 parents:
343 389 parents:
344 390 parents:
391 parents--verbose: -1:000000000000
345 392 parents--verbose: 5:13207e5a10d9 4:32a18f097fcc
346 393 parents--verbose: 3:10e46f2dcbf4
347 394 parents--verbose:
@@ -349,6 +396,7 b' parents--verbose:'
349 396 parents--verbose:
350 397 parents--verbose:
351 398 parents--verbose:
399 parents--debug: -1:0000000000000000000000000000000000000000 -1:0000000000000000000000000000000000000000
352 400 parents--debug: 5:13207e5a10d9fd28ec424934298e176197f2c67f 4:32a18f097fcccf76ef282f62f8a85b3adf8d13c4
353 401 parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000
354 402 parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000
@@ -356,6 +404,7 b' parents--debug: 2:97054abb4ab824450e9164'
356 404 parents--debug: 1:b608e9d1a3f0273ccf70fb85fd6866b3482bf965 -1:0000000000000000000000000000000000000000
357 405 parents--debug: 0:1e4e1b8f71e05681d422154f5421e385fec3454f -1:0000000000000000000000000000000000000000
358 406 parents--debug: -1:0000000000000000000000000000000000000000 -1:0000000000000000000000000000000000000000
407 rev: 7
359 408 rev: 6
360 409 rev: 5
361 410 rev: 4
@@ -363,6 +412,7 b' rev: 3'
363 412 rev: 2
364 413 rev: 1
365 414 rev: 0
415 rev--verbose: 7
366 416 rev--verbose: 6
367 417 rev--verbose: 5
368 418 rev--verbose: 4
@@ -370,6 +420,7 b' rev--verbose: 3'
370 420 rev--verbose: 2
371 421 rev--verbose: 1
372 422 rev--verbose: 0
423 rev--debug: 7
373 424 rev--debug: 6
374 425 rev--debug: 5
375 426 rev--debug: 4
@@ -384,6 +435,7 b' tags:'
384 435 tags:
385 436 tags:
386 437 tags:
438 tags:
387 439 tags--verbose: tip
388 440 tags--verbose:
389 441 tags--verbose:
@@ -391,6 +443,7 b' tags--verbose:'
391 443 tags--verbose:
392 444 tags--verbose:
393 445 tags--verbose:
446 tags--verbose:
394 447 tags--debug: tip
395 448 tags--debug:
396 449 tags--debug:
@@ -398,7 +451,9 b' tags--debug:'
398 451 tags--debug:
399 452 tags--debug:
400 453 tags--debug:
454 tags--debug:
401 455 # filters work
456 hostname
402 457
403 458
404 459
@@ -406,6 +461,7 b' tags--debug:'
406 461 place
407 462 place
408 463 hostname
464 User Name
409 465 person
410 466 person
411 467 person
@@ -413,6 +469,7 b' person'
413 469 other
414 470 A. N. Other
415 471 User Name
472 user
416 473 person
417 474 person
418 475 person
@@ -420,6 +477,7 b' person'
420 477 other
421 478 other
422 479 user
480 Mon Jan 12 13:46:40 1970 +0000
423 481 Sun Jan 18 08:40:01 1970 +0000
424 482 Sun Jan 18 08:40:00 1970 +0000
425 483 Sat Jan 17 04:53:20 1970 +0000
@@ -427,6 +485,7 b' Fri Jan 16 01:06:40 1970 +0000'
427 485 Wed Jan 14 21:20:00 1970 +0000
428 486 Tue Jan 13 17:33:20 1970 +0000
429 487 Mon Jan 12 13:46:40 1970 +0000
488 1970-01-12 13:46 +0000
430 489 1970-01-18 08:40 +0000
431 490 1970-01-18 08:40 +0000
432 491 1970-01-17 04:53 +0000
@@ -434,6 +493,7 b' 1970-01-16 01:06 +0000'
434 493 1970-01-14 21:20 +0000
435 494 1970-01-13 17:33 +0000
436 495 1970-01-12 13:46 +0000
496 Mon, 12 Jan 1970 13:46:40 +0000
437 497 Sun, 18 Jan 1970 08:40:01 +0000
438 498 Sun, 18 Jan 1970 08:40:00 +0000
439 499 Sat, 17 Jan 1970 04:53:20 +0000
@@ -441,6 +501,7 b' Fri, 16 Jan 1970 01:06:40 +0000'
441 501 Wed, 14 Jan 1970 21:20:00 +0000
442 502 Tue, 13 Jan 1970 17:33:20 +0000
443 503 Mon, 12 Jan 1970 13:46:40 +0000
504 second
444 505 merge
445 506 new head
446 507 new branch
@@ -448,6 +509,7 b' no user, no domain'
448 509 no person
449 510 other 1
450 511 line 1
512 29114dbae42b
451 513 c7b487c6c50e
452 514 13207e5a10d9
453 515 32a18f097fcc
General Comments 0
You need to be logged in to leave comments. Login now