##// END OF EJS Templates
namespaces: add bookmarks to the names data structure...
Sean Farley -
r23558:3198aac7 default
parent child Browse files
Show More
@@ -18,6 +18,7 b' import tags as tagsmod'
18 from lock import release
18 from lock import release
19 import weakref, errno, os, time, inspect
19 import weakref, errno, os, time, inspect
20 import branchmap, pathutil
20 import branchmap, pathutil
21 import namespaces
21 propertycache = util.propertycache
22 propertycache = util.propertycache
22 filecache = scmutil.filecache
23 filecache = scmutil.filecache
23
24
@@ -297,6 +298,9 b' class localrepository(object):'
297 # - bookmark changes
298 # - bookmark changes
298 self.filteredrevcache = {}
299 self.filteredrevcache = {}
299
300
301 # generic mapping between names and nodes
302 self.names = namespaces.namespaces(self)
303
300 def close(self):
304 def close(self):
301 pass
305 pass
302
306
@@ -35,6 +35,11 b' class namespaces(object):'
35 self._names = util.sortdict()
35 self._names = util.sortdict()
36 self._repo = weakref.ref(repo)
36 self._repo = weakref.ref(repo)
37
37
38 # we need current mercurial named objects (bookmarks, tags, and
39 # branches) to be initialized somewhere, so that place is here
40 self.addnamespace("bookmarks",
41 lambda repo, name: tolist(repo._bookmarks.get(name)))
42
38 @property
43 @property
39 def repo(self):
44 def repo(self):
40 return self._repo()
45 return self._repo()
@@ -8,7 +8,7 b''
8 # GNU General Public License version 2 or any later version.
8 # GNU General Public License version 2 or any later version.
9
9
10 from i18n import _
10 from i18n import _
11 import changelog, byterange, url, error
11 import changelog, byterange, url, error, namespaces
12 import localrepo, manifest, util, scmutil, store
12 import localrepo, manifest, util, scmutil, store
13 import urllib, urllib2, errno, os
13 import urllib, urllib2, errno, os
14
14
@@ -106,6 +106,8 b' class statichttprepository(localrepo.loc'
106 self.vfs = self.opener
106 self.vfs = self.opener
107 self._phasedefaults = []
107 self._phasedefaults = []
108
108
109 self.names = namespaces.namespaces(self)
110
109 try:
111 try:
110 requirements = scmutil.readrequires(self.opener, self.supported)
112 requirements = scmutil.readrequires(self.opener, self.supported)
111 except IOError, inst:
113 except IOError, inst:
General Comments 0
You need to be logged in to leave comments. Login now