comparison mercurial/localrepo.py @ 8189:d2899a856f9f

ui: replace parentui mechanism with repo.baseui
author Matt Mackall <mpm@selenic.com>
date Sun, 26 Apr 2009 16:50:43 -0500
parents 9fd0822c2ec3
children a1a5a57efe90
comparison
equal deleted inserted replaced
8188:f3abe032fc89 8189:d2899a856f9f
18 18
19 class localrepository(repo.repository): 19 class localrepository(repo.repository):
20 capabilities = set(('lookup', 'changegroupsubset')) 20 capabilities = set(('lookup', 'changegroupsubset'))
21 supported = ('revlogv1', 'store', 'fncache') 21 supported = ('revlogv1', 'store', 'fncache')
22 22
23 def __init__(self, parentui, path=None, create=0): 23 def __init__(self, baseui, path=None, create=0):
24 repo.repository.__init__(self) 24 repo.repository.__init__(self)
25 self.root = os.path.realpath(path) 25 self.root = os.path.realpath(path)
26 self.path = os.path.join(self.root, ".hg") 26 self.path = os.path.join(self.root, ".hg")
27 self.origroot = path 27 self.origroot = path
28 self.opener = util.opener(self.path) 28 self.opener = util.opener(self.path)
32 if create: 32 if create:
33 if not os.path.exists(path): 33 if not os.path.exists(path):
34 os.mkdir(path) 34 os.mkdir(path)
35 os.mkdir(self.path) 35 os.mkdir(self.path)
36 requirements = ["revlogv1"] 36 requirements = ["revlogv1"]
37 if parentui.configbool('format', 'usestore', True): 37 if baseui.configbool('format', 'usestore', True):
38 os.mkdir(os.path.join(self.path, "store")) 38 os.mkdir(os.path.join(self.path, "store"))
39 requirements.append("store") 39 requirements.append("store")
40 if parentui.configbool('format', 'usefncache', True): 40 if baseui.configbool('format', 'usefncache', True):
41 requirements.append("fncache") 41 requirements.append("fncache")
42 # create an invalid changelog 42 # create an invalid changelog
43 self.opener("00changelog.i", "a").write( 43 self.opener("00changelog.i", "a").write(
44 '\0\0\0\2' # represents revlogv2 44 '\0\0\0\2' # represents revlogv2
45 ' dummy changelog to prevent using the old repo layout' 45 ' dummy changelog to prevent using the old repo layout'
68 self.spath = self.store.path 68 self.spath = self.store.path
69 self.sopener = self.store.opener 69 self.sopener = self.store.opener
70 self.sjoin = self.store.join 70 self.sjoin = self.store.join
71 self.opener.createmode = self.store.createmode 71 self.opener.createmode = self.store.createmode
72 72
73 self.ui = ui.ui(parentui=parentui) 73 self.baseui = baseui
74 self.ui = baseui.copy()
74 try: 75 try:
75 self.ui.readconfig(self.join("hgrc"), self.root) 76 self.ui.readconfig(self.join("hgrc"), self.root)
76 extensions.loadall(self.ui) 77 extensions.loadall(self.ui)
77 except IOError: 78 except IOError:
78 pass 79 pass