comparison mercurial/hgweb.py @ 536:c15b4bc0a11c

Refactor diffrevs/diffdir into changes -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Refactor diffrevs/diffdir into changes Add dirstate.changes to replace most of diffdir Add localrepository.changes to replace diffrevs/diffdir This code can now efficiently check for changes in single files, and often without consulting the manifest. This should eventually make 'hg diff Makefile' in a large project much faster. This also fixes a bug where 'hg diff -r tip' failed to account for files that had been added but not committed yet. manifest hash: 20fde5d4b4cee49a76bcfe50f2dacf58b1f2258b -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCxMxpywK+sNU5EO8RAhzOAJ9VLQJoC+hiRYQtTSPbDhXBEJfQZwCgpDx9 GAwQ9jZHNsgXckBfXNCkJV8= =hMuc -----END PGP SIGNATURE-----
author mpm@selenic.com
date Thu, 30 Jun 2005 20:54:01 -0800
parents ab0d1bfeee7c
children 7140bc781655
comparison
equal deleted inserted replaced
535:fba26990604a 536:c15b4bc0a11c
192 mmap1 = mf.read(change1[0]) 192 mmap1 = mf.read(change1[0])
193 mmap2 = mf.read(change2[0]) 193 mmap2 = mf.read(change2[0])
194 date1 = self.date(change1) 194 date1 = self.date(change1)
195 date2 = self.date(change2) 195 date2 = self.date(change2)
196 196
197 c, a, d = r.diffrevs(node1, node2) 197 c, a, d = r.changes(node1, node2)
198 c, a, d = map(lambda x: filterfiles(x, files), (c, a, d)) 198 c, a, d = map(lambda x: filterfiles(x, files), (c, a, d))
199 199
200 for f in c: 200 for f in c:
201 to = r.file(f).read(mmap1[f]) 201 to = r.file(f).read(mmap1[f])
202 tn = r.file(f).read(mmap2[f]) 202 tn = r.file(f).read(mmap2[f])