template: update successors template output
Use templatekw._hybrid as return value for precursor template, it's nicer and
easier to play with than returning a formatted string.
============================================Testingobsolescencemarkerspush:CasesC.4============================================Mercurialpushesobsolescencesmarkersrelevanttothe"pushed-set",thesetofallchangesetsthatrequestedtobe"in sync"afterthepush(eveniftheyarealreadyonbothside).Thistestbelongstoaseriesoftestscheckingsuchsetisproperlycomputedandapplied.Thisdoesnottests"obsmarkers"discoverycapabilities.CategoryC:advancedcaseTestCase4:multiplesuccessors,oneisprunedC.4multiplesuccessors,oneispruned======================================..(AsimilarishsituationcanappendswithsplitmarkersseetheZsection)....{{{..A..B○⇢ø⇠⊗C.. \|/..●O..}}}....Markerexistfrom:....*`Aø⇠○B`..*`Aø⇠○C`..*C(prune)....Commandrun:....*hgpush-rO....Expectedexchange:....*`Aø⇠○C`..*C(prune)....Expectedexclude:....*`Aø⇠○B`Setup-----$.$TESTDIR/testlib/exchange-obsmarker-util.shImplementedasthenon-splitversion$setupreposC.4creatingtestrepofortestcaseC.4-pulldest-main-pushdestcdinto`main`andproceedwithenvsetup$cdmain$mkcommitA$hgupdate-q0$mkcommitBcreatednewhead$hgupdate-q0$mkcommitCcreatednewhead$hgdebugobsolete--hidden`getid'desc(A)'``getid'desc(B)'`$hgdebugobsolete--hidden`getid'desc(A)'``getid'desc(C)'`$hgprune-qd'0 0'.$hglog-G--hiddenx7f7f229b13a6(draft):C||o35b183996678(draft):B|/|xf5bc6836db60(draft):A|/@a9bdc8b26820(public):O$inspect_obsmarkersobsstorecontent================f5bc6836db60e308a17ba08bf050154ba9c4fad735b1839966785d5703a01607229eea932db42f870(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'}7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}obshashtree===========a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04a9c02d134f5b98acc74d1dc4eb28fd59f958a2bdf5bc6836db60e308a17ba08bf050154ba9c4fad7619b4d13bd9878f04d7208dcfcf1e89da826f6be35b1839966785d5703a01607229eea932db42f87ddeb7b7a87378f59cecb36d5146df0092b6b33277f7f229b13a629a5b20581c6cb723f4e2ca54bed58ef2e726c5bd89bceffb6243294b38eadbf3d60obshashrange============revnodeindexsizedepthobshash235b1839966780222a098b4a877f235b183996678112916e804c50de0a9bdc8b26820011a9c02d134f5b$cd..$cd..ActualTest-----------$dotestC.4O##RunningtestcaseC.4 # testing echange of "O" (a9bdc8b26820) ## initial state # obstore: main7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad735b1839966785d5703a01607229eea932db42f870(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'} # obstore: pushdest # obstore: pulldest ## pushing "O" from main to pushdestpushingtopushdestsearchingforchangesnochangesfoundremote:2newobsolescencemarkers##postpushstate#obstore:main7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad735b1839966785d5703a01607229eea932db42f870(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'} # obstore: pushdest7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'} # obstore: pulldest ## pulling "a9bdc8b26820" from main into pulldestpullingfrommainnochangesfound2newobsolescencemarkers##postpullstate#obstore:main7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad735b1839966785d5703a01607229eea932db42f870(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'} # obstore: pushdest7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'} # obstore: pulldest7f7f229b13a629a5b20581c6cb723f4e2ca54bed0{a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04}(ThuJan0100:00:001970+0000){'user':'test'}f5bc6836db60e308a17ba08bf050154ba9c4fad77f7f229b13a629a5b20581c6cb723f4e2ca54bed0(ThuJan0100:00:001970+0000){'user':'test'}