##// END OF EJS Templates
contrib/compress: use store API instead of a collector
Benoit Boissinot -
r12019:456f0fed default
parent child Browse files
Show More
@@ -7,7 +7,7 b''
7 7 # GNU General Public License version 2 or any later version.
8 8
9 9
10 from mercurial import hg, changegroup, localrepo
10 from mercurial import hg, localrepo
11 11 from mercurial.lock import release
12 12 import weakref
13 13
@@ -24,16 +24,12 b' def compress(ui, repo, dest):'
24 24
25 25 src_cl = repo.changelog
26 26 tar_cl = target.changelog
27 changedfiles = set()
28 mmfs = {}
29 collect = changegroup.collector(src_cl, mmfs, changedfiles)
30 27 total = len(repo)
31 28
32 29 for r in src_cl:
33 30 p = [src_cl.node(i) for i in src_cl.parentrevs(r)]
34 nd = tar_cl.addrevision(src_cl.revision(src_cl.node(r)), trp,
35 src_cl.linkrev(r), p[0], p[1])
36 collect(nd)
31 tar_cl.addrevision(src_cl.revision(src_cl.node(r)), trp,
32 src_cl.linkrev(r), p[0], p[1])
37 33 ui.progress(('adding changesets'), r, unit=('revisions'),
38 34 total=total)
39 35
@@ -46,8 +42,11 b' def compress(ui, repo, dest):'
46 42 ui.progress(('adding manifest'), r, unit=('revisions'),
47 43 total=total)
48 44
49 total = len(changedfiles)
50 for cnt, f in enumerate(changedfiles):
45 # only keep indexes and filter "data/" prefix and ".i" suffix
46 datafiles = [fn[5:-2] for fn, f2, size in repo.store.datafiles()
47 if size and fn.endswith('.i')]
48 total = len(datafiles)
49 for cnt, f in enumerate(datafiles):
51 50 sf = repo.file(f)
52 51 tf = target.file(f)
53 52 for r in sf:
General Comments 0
You need to be logged in to leave comments. Login now