comparison hgext/convert/__init__.py @ 5373:6aba1835a7b3

convert: pass the order of the revmapfile to the converter_source The entries in this file are supposed to be topologically sorted and this may be useful for a converter_source.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Thu, 04 Oct 2007 23:21:37 -0300
parents 6b6104430964
children e710874247d1
comparison
equal deleted inserted replaced
5372:6f6aa7f3bc1c 5373:6aba1835a7b3
51 self.revmapfilefd = None 51 self.revmapfilefd = None
52 self.authors = {} 52 self.authors = {}
53 self.authorfile = None 53 self.authorfile = None
54 self.mapfile = filemapper 54 self.mapfile = filemapper
55 55
56 self.maporder = []
56 self.map = {} 57 self.map = {}
57 try: 58 try:
58 origrevmapfile = open(self.revmapfile, 'r') 59 origrevmapfile = open(self.revmapfile, 'r')
59 for l in origrevmapfile: 60 for l in origrevmapfile:
60 sv, dv = l[:-1].split() 61 sv, dv = l[:-1].split()
62 if sv not in self.map:
63 self.maporder.append(sv)
61 self.map[sv] = dv 64 self.map[sv] = dv
62 origrevmapfile.close() 65 origrevmapfile.close()
63 except IOError: 66 except IOError:
64 pass 67 pass
65 68
236 239
237 def convert(self): 240 def convert(self):
238 try: 241 try:
239 self.source.before() 242 self.source.before()
240 self.dest.before() 243 self.dest.before()
241 self.source.setrevmap(self.map) 244 self.source.setrevmap(self.map, self.maporder)
242 self.ui.status("scanning source...\n") 245 self.ui.status("scanning source...\n")
243 heads = self.source.getheads() 246 heads = self.source.getheads()
244 parents = self.walktree(heads) 247 parents = self.walktree(heads)
245 self.ui.status("sorting...\n") 248 self.ui.status("sorting...\n")
246 t = self.toposort(parents) 249 t = self.toposort(parents)