equal
deleted
inserted
replaced
7 # GNU General Public License version 2 or any later version. |
7 # GNU General Public License version 2 or any later version. |
8 |
8 |
9 from mercurial import util |
9 from mercurial import util |
10 from mercurial import context |
10 from mercurial import context |
11 from mercurial import revset |
11 from mercurial import revset |
|
12 from mercurial import scmutil |
12 from mercurial.node import hex, bin |
13 from mercurial.node import hex, bin |
13 |
14 |
14 # Patch changectx |
15 # Patch changectx |
15 ############################# |
16 ############################# |
16 |
17 |
22 |
23 |
23 context.changectx.obsolete = obsolete |
24 context.changectx.obsolete = obsolete |
24 |
25 |
25 ohidden = context.changectx.hidden |
26 ohidden = context.changectx.hidden |
26 def hidden(ctx): |
27 def hidden(ctx): |
27 ctx._repo._obsobjrels # XXX hack to fill hiddenrevs |
28 # hack to fill hiddenrevs |
|
29 # compute hidden (XXX should move elsewhere) |
|
30 if not getattr(ctx._repo.changelog, 'hiddeninit', False): |
|
31 basicquery = 'obsolete() - (ancestors(not obsolete()))' |
|
32 for rev in scmutil.revrange(ctx._repo, [basicquery]): |
|
33 ctx._repo.changelog.hiddenrevs.add(rev) |
|
34 ctx._repo.changelog.hiddeninit = True |
|
35 |
28 return ohidden(ctx) |
36 return ohidden(ctx) |
29 context.changectx.hidden = hidden |
37 context.changectx.hidden = hidden |
30 |
38 |
31 # revset |
39 # revset |
32 ############################# |
40 ############################# |
71 #reverse sub -> objs mapping |
79 #reverse sub -> objs mapping |
72 objrels = {} |
80 objrels = {} |
73 for sub, objs in self._obssubrels.iteritems(): |
81 for sub, objs in self._obssubrels.iteritems(): |
74 for obj in objs: |
82 for obj in objs: |
75 objrels.setdefault(obj, set()).add(sub) |
83 objrels.setdefault(obj, set()).add(sub) |
76 |
|
77 # compute hidden (XXX should move elsewhere) |
|
78 for obj in objrels: |
|
79 self.changelog.hiddenrevs.add(repo[obj].rev()) |
|
80 |
84 |
81 # |
85 # |
82 return objrels |
86 return objrels |
83 |
87 |
84 @util.propertycache |
88 @util.propertycache |