mercurial/cmdutil.py
changeset 10607 f3ac9d6105ee
parent 10606 5868dd69fb03
child 10608 87fce8c5e29d
equal deleted inserted replaced
10606:5868dd69fb03 10607:f3ac9d6105ee
   287 
   287 
   288 def findrenames(repo, added, removed, threshold):
   288 def findrenames(repo, added, removed, threshold):
   289     '''find renamed files -- yields (before, after, score) tuples'''
   289     '''find renamed files -- yields (before, after, score) tuples'''
   290     copies = {}
   290     copies = {}
   291     ctx = repo['.']
   291     ctx = repo['.']
   292     for r in removed:
   292     for i, r in enumerate(removed):
       
   293         repo.ui.progress(_('looking for similarities'), i, total=len(removed))
   293         if r not in ctx:
   294         if r not in ctx:
   294             continue
   295             continue
   295         fctx = ctx.filectx(r)
   296         fctx = ctx.filectx(r)
   296 
   297 
   297         def score(text):
   298         def score(text):
   317         for a in added:
   318         for a in added:
   318             bestscore = copies.get(a, (None, threshold))[1]
   319             bestscore = copies.get(a, (None, threshold))[1]
   319             myscore = score(repo.wread(a))
   320             myscore = score(repo.wread(a))
   320             if myscore >= bestscore:
   321             if myscore >= bestscore:
   321                 copies[a] = (r, myscore)
   322                 copies[a] = (r, myscore)
       
   323     repo.ui.progress(_('looking for similarities'), None, total=len(removed))
   322 
   324 
   323     for dest, v in copies.iteritems():
   325     for dest, v in copies.iteritems():
   324         source, score = v
   326         source, score = v
   325         yield source, dest, score
   327         yield source, dest, score
   326 
   328