topic: use self instead of repo in topicrepo methods
Referring to repo here was somehow preventing it from being garbage-collected
(important in hgweb, where currently every request gets a new repo).
============================================Testingobsolescencemarkerspush:CasesB.3============================================Mercurialpushesobsolescencesmarkersrelevanttothe"pushed-set",thesetofallchangesetsthatrequestedtobe"in sync"afterthepush(eveniftheyarealreadyonbothside).Thistestbelongstoaseriesoftestscheckingsuchsetisproperlycomputedandapplied.Thisdoesnottests"obsmarkers"discoverycapabilities.CategoryB:pruningcaseTestCase3:Prunedchangesetonnon-pushedpartofthehistoryB.3Prunedchangesetonnon-pushedpartofthehistory======================================================..{{{..⊗C..|..○B..|◔A..|/..●O..}}}....Markerexistsfrom:....*C(prune)....Commandsrun:....*hgpush-rA....Expectedexchange:....*ø....Expectedexclude:....*chainfromBSetup-----$.$TESTDIR/testlib/exchange-obsmarker-util.shinitial$setupreposB.3creatingtestrepofortestcaseB.3-pulldest-main-pushdestcdinto`main`andproceedwithenvsetup$cdmain$mkcommitA$hgup--quiet0$mkcommitBcreatednewhead$mkcommitC$hgprune-qd'0 0'.$hglog-G--hiddenxe56289ab6378(draft):C|@35b183996678(draft):B||of5bc6836db60(draft):A|/oa9bdc8b26820(public):O$inspect_obsmarkersobsstorecontent================e56289ab6378dc752fd7965f8bf66b58bda740bd0{35b1839966785d5703a01607229eea932db42f87}(ThuJan0100:00:001970+0000){'ef1':'0','operation':'prune','user':'test'}obshashtree===========a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc040000000000000000000000000000000000000000f5bc6836db60e308a17ba08bf050154ba9c4fad7000000000000000000000000000000000000000035b1839966785d5703a01607229eea932db42f873bb8cd8ac8f52487f2ef21e0bdf795a5cd293351e56289ab6378dc752fd7965f8bf66b58bda740bdb62eedd8d9194225136e5908c492ab03569079daobshashrange============revnodeindexsizedepthobshash235b1839966780223bb8cd8ac8f51f5bc6836db60022000000000000235b1839966781123bb8cd8ac8f50a9bdc8b268200110000000000001f5bc6836db60112000000000000$cd..$cd..ActualTest-----------------------------------$dotestB.3A##RunningtestcaseB.3 # testing echange of "A" (f5bc6836db60) ## initial state # obstore: maine56289ab6378dc752fd7965f8bf66b58bda740bd0{35b1839966785d5703a01607229eea932db42f87}(ThuJan0100:00:001970+0000){'ef1':'0','operation':'prune','user':'test'} # obstore: pushdest # obstore: pulldest ## pushing "A" from main to pushdestpushingtopushdestsearchingforchangesremote:addingchangesetsremote:addingmanifestsremote:addingfilechangesremote:added1changesetswith1changesto1files##postpushstate#obstore:maine56289ab6378dc752fd7965f8bf66b58bda740bd0{35b1839966785d5703a01607229eea932db42f87}(ThuJan0100:00:001970+0000){'ef1':'0','operation':'prune','user':'test'} # obstore: pushdest # obstore: pulldest ## pulling "f5bc6836db60" from main into pulldestpullingfrommainsearchingforchangesaddingchangesetsaddingmanifestsaddingfilechangesadded1changesetswith1changesto1filesnewchangesetsf5bc6836db60(run'hg update'togetaworkingcopy) ## post pull state # obstore: maine56289ab6378dc752fd7965f8bf66b58bda740bd0{35b1839966785d5703a01607229eea932db42f87}(ThuJan0100:00:001970+0000){'ef1':'0','operation':'prune','user':'test'} # obstore: pushdest # obstore: pulldest