equal
deleted
inserted
replaced
19 propertycache = util.propertycache |
19 propertycache = util.propertycache |
20 |
20 |
21 class localrepository(repo.repository): |
21 class localrepository(repo.repository): |
22 capabilities = set(('lookup', 'changegroupsubset', 'branchmap', 'pushkey', |
22 capabilities = set(('lookup', 'changegroupsubset', 'branchmap', 'pushkey', |
23 'known', 'getbundle')) |
23 'known', 'getbundle')) |
24 supportedformats = set(('revlogv1',)) |
24 supportedformats = set(('revlogv1', 'generaldelta')) |
25 supported = supportedformats | set(('store', 'fncache', 'shared', |
25 supported = supportedformats | set(('store', 'fncache', 'shared', |
26 'dotencode')) |
26 'dotencode')) |
27 |
27 |
28 def __init__(self, baseui, path=None, create=0): |
28 def __init__(self, baseui, path=None, create=0): |
29 repo.repository.__init__(self) |
29 repo.repository.__init__(self) |
59 self.opener.append( |
59 self.opener.append( |
60 "00changelog.i", |
60 "00changelog.i", |
61 '\0\0\0\2' # represents revlogv2 |
61 '\0\0\0\2' # represents revlogv2 |
62 ' dummy changelog to prevent using the old repo layout' |
62 ' dummy changelog to prevent using the old repo layout' |
63 ) |
63 ) |
|
64 if self.ui.configbool('format', 'generaldelta', False): |
|
65 requirements.append("generaldelta") |
64 else: |
66 else: |
65 raise error.RepoError(_("repository %s not found") % path) |
67 raise error.RepoError(_("repository %s not found") % path) |
66 elif create: |
68 elif create: |
67 raise error.RepoError(_("repository %s already exists") % path) |
69 raise error.RepoError(_("repository %s already exists") % path) |
68 else: |
70 else: |
113 self._transref = self._lockref = self._wlockref = None |
115 self._transref = self._lockref = self._wlockref = None |
114 |
116 |
115 def _applyrequirements(self, requirements): |
117 def _applyrequirements(self, requirements): |
116 self.requirements = requirements |
118 self.requirements = requirements |
117 self.sopener.options = {} |
119 self.sopener.options = {} |
|
120 if 'generaldelta' in requirements: |
|
121 self.sopener.options['generaldelta'] = 1 |
118 |
122 |
119 def _writerequirements(self): |
123 def _writerequirements(self): |
120 reqfile = self.opener("requires", "w") |
124 reqfile = self.opener("requires", "w") |
121 for r in self.requirements: |
125 for r in self.requirements: |
122 reqfile.write("%s\n" % r) |
126 reqfile.write("%s\n" % r) |