Comments
Patch
@@ -280,36 +280,38 @@ class localrepository(object):
else:
self.supported = self._basesupported
if not self.vfs.isdir():
if create:
if not self.wvfs.exists():
self.wvfs.makedirs()
self.vfs.makedir(notindexed=True)
- self.requirements.update(self._baserequirements(create))
+ requirements = set(self._baserequirements(create))
if self.ui.configbool('format', 'usestore', True):
self.vfs.mkdir("store")
- self.requirements.add("store")
+ requirements.add("store")
if self.ui.configbool('format', 'usefncache', True):
- self.requirements.add("fncache")
+ requirements.add("fncache")
if self.ui.configbool('format', 'dotencode', True):
- self.requirements.add('dotencode')
+ requirements.add('dotencode')
# create an invalid changelog
self.vfs.append(
"00changelog.i",
'\0\0\0\2' # represents revlogv2
' dummy changelog to prevent using the old repo layout'
)
if scmutil.gdinitconfig(self.ui):
- self.requirements.add("generaldelta")
+ requirements.add("generaldelta")
if self.ui.configbool('experimental', 'treemanifest', False):
- self.requirements.add("treemanifest")
+ requirements.add("treemanifest")
if self.ui.configbool('experimental', 'manifestv2', False):
- self.requirements.add("manifestv2")
+ requirements.add("manifestv2")
+
+ self.requirements = requirements
else:
raise error.RepoError(_("repository %s not found") % path)
elif create:
raise error.RepoError(_("repository %s already exists") % path)
else:
try:
self.requirements = scmutil.readrequires(
self.vfs, self.supported)