comparison mercurial/localrepo.py @ 48295:bf11ff22a9af

dirstate-v2: freeze the on-disk format It seems the format as reached a good balance. With a core of new capabilities that motivated it initially and enough new feature and room for future improvement to be a clear progress we can set a milestone for. Having the format frozen will help the feature to get real life testing, outside of the test suite. The feature itself stay experimental but the config gains a new name to avoid people enable non-frozen version by default. If too many bugs are reported during the RC we might move the format back to experimental and drop its support in future version (in favor of a new one) Differential Revision: https://phab.mercurial-scm.org/D11709
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 20 Oct 2021 00:57:02 +0200
parents 5c567aca080d
children 7964a2dbde12 f7086f6173f8
comparison
equal deleted inserted replaced
48294:e2836d08c88c 48295:bf11ff22a9af
1187 msg = _( 1187 msg = _(
1188 b"accessing `dirstate-v2` repository without associated " 1188 b"accessing `dirstate-v2` repository without associated "
1189 b"fast implementation." 1189 b"fast implementation."
1190 ) 1190 )
1191 hint = _( 1191 hint = _(
1192 b"check `hg help config.format.exp-dirstate-v2` " b"for details" 1192 b"check `hg help config.format.exp-rc-dirstate-v2` " b"for details"
1193 ) 1193 )
1194 if not dirstate.HAS_FAST_DIRSTATE_V2: 1194 if not dirstate.HAS_FAST_DIRSTATE_V2:
1195 if slow_path == b'warn': 1195 if slow_path == b'warn':
1196 msg = b"warning: " + msg + b'\n' 1196 msg = b"warning: " + msg + b'\n'
1197 ui.warn(msg) 1197 ui.warn(msg)
3628 if scmutil.gdinitconfig(ui): 3628 if scmutil.gdinitconfig(ui):
3629 requirements.add(requirementsmod.GENERALDELTA_REQUIREMENT) 3629 requirements.add(requirementsmod.GENERALDELTA_REQUIREMENT)
3630 if ui.configbool(b'format', b'sparse-revlog'): 3630 if ui.configbool(b'format', b'sparse-revlog'):
3631 requirements.add(requirementsmod.SPARSEREVLOG_REQUIREMENT) 3631 requirements.add(requirementsmod.SPARSEREVLOG_REQUIREMENT)
3632 3632
3633 # experimental config: format.exp-dirstate-v2 3633 # experimental config: format.exp-rc-dirstate-v2
3634 # Keep this logic in sync with `has_dirstate_v2()` in `tests/hghave.py` 3634 # Keep this logic in sync with `has_dirstate_v2()` in `tests/hghave.py`
3635 if ui.configbool(b'format', b'exp-dirstate-v2'): 3635 if ui.configbool(b'format', b'exp-rc-dirstate-v2'):
3636 requirements.add(requirementsmod.DIRSTATE_V2_REQUIREMENT) 3636 requirements.add(requirementsmod.DIRSTATE_V2_REQUIREMENT)
3637 3637
3638 # experimental config: format.exp-use-copies-side-data-changeset 3638 # experimental config: format.exp-use-copies-side-data-changeset
3639 if ui.configbool(b'format', b'exp-use-copies-side-data-changeset'): 3639 if ui.configbool(b'format', b'exp-use-copies-side-data-changeset'):
3640 requirements.add(requirementsmod.CHANGELOGV2_REQUIREMENT) 3640 requirements.add(requirementsmod.CHANGELOGV2_REQUIREMENT)