mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 07:17:55 +03:00
obsolete: move obsstore creation logic from localrepo
This code has more to do with obsolete.py than localrepo.py. Let's move it there.
This commit is contained in:
parent
a9c40085c0
commit
943d55015e
@ -524,21 +524,7 @@ class localrepository(object):
|
||||
|
||||
@storecache('obsstore')
|
||||
def obsstore(self):
|
||||
# read default format for new obsstore.
|
||||
# developer config: format.obsstore-version
|
||||
defaultformat = self.ui.configint('format', 'obsstore-version', None)
|
||||
# rely on obsstore class default when possible.
|
||||
kwargs = {}
|
||||
if defaultformat is not None:
|
||||
kwargs['defaultformat'] = defaultformat
|
||||
readonly = not obsolete.isenabled(self, obsolete.createmarkersopt)
|
||||
store = obsolete.obsstore(self.svfs, readonly=readonly,
|
||||
**kwargs)
|
||||
if store and readonly:
|
||||
self.ui.warn(
|
||||
_('obsolete feature not enabled but %i markers found!\n')
|
||||
% len(list(store)))
|
||||
return store
|
||||
return obsolete.makestore(self.ui, self)
|
||||
|
||||
@storecache('00changelog.i')
|
||||
def changelog(self):
|
||||
|
@ -753,6 +753,22 @@ class obsstore(object):
|
||||
seennodes |= pendingnodes
|
||||
return seenmarkers
|
||||
|
||||
def makestore(ui, repo):
|
||||
"""Create an obsstore instance from a repo."""
|
||||
# read default format for new obsstore.
|
||||
# developer config: format.obsstore-version
|
||||
defaultformat = ui.configint('format', 'obsstore-version', None)
|
||||
# rely on obsstore class default when possible.
|
||||
kwargs = {}
|
||||
if defaultformat is not None:
|
||||
kwargs['defaultformat'] = defaultformat
|
||||
readonly = not isenabled(repo, createmarkersopt)
|
||||
store = obsstore(repo.svfs, readonly=readonly, **kwargs)
|
||||
if store and readonly:
|
||||
ui.warn(_('obsolete feature not enabled but %i markers found!\n')
|
||||
% len(list(store)))
|
||||
return store
|
||||
|
||||
def _filterprunes(markers):
|
||||
"""return a set with no prune markers"""
|
||||
return set(m for m in markers if m[1])
|
||||
|
Loading…
Reference in New Issue
Block a user