From patchwork Wed Oct 9 17:47:38 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: D6945: sidedatacopies: add a new requirement for storing copies into sidedata From: phabricator X-Patchwork-Id: 42153 Message-Id: To: Phabricator Cc: mercurial-devel@mercurial-scm.org Date: Wed, 9 Oct 2019 17:47:38 +0000 Closed by commit rHG5f95ad19482a: sidedatacopies: add a new requirement for storing copies into sidedata (authored by marmoute). This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state "Needs Review". REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D6945?vs=16949&id=17000 CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D6945/new/ REVISION DETAIL https://phab.mercurial-scm.org/D6945 AFFECTED FILES mercurial/configitems.py mercurial/localrepo.py CHANGE DETAILS To: marmoute, #hg-reviewers Cc: mercurial-devel diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -440,6 +440,10 @@ # information for revision without altering their original hashes. SIDEDATA_REQUIREMENT = b'exp-sidedata-flag' +# A repository with the the copies-sidedata-changeset requirement will store +# copies related information in changeset's sidedata. +COPIESSDC_REQUIREMENT = b'exp-copies-sidedata-changeset' + # Functions receiving (ui, features) that extensions can register to impact # the ability to load repositories with custom requirements. Only # functions defined in loaded extensions are called. @@ -997,6 +1001,7 @@ b'revlogv1', b'generaldelta', b'treemanifest', + COPIESSDC_REQUIREMENT, REVLOGV2_REQUIREMENT, SIDEDATA_REQUIREMENT, SPARSEREVLOG_REQUIREMENT, @@ -3512,6 +3517,10 @@ # experimental config: format.use-side-data if ui.configbool(b'format', b'use-side-data'): requirements.add(SIDEDATA_REQUIREMENT) + # experimental config: format.exp-use-copies-side-data-changeset + if ui.configbool(b'format', b'exp-use-copies-side-data-changeset'): + requirements.add(SIDEDATA_REQUIREMENT) + requirements.add(COPIESSDC_REQUIREMENT) if ui.configbool(b'experimental', b'treemanifest'): requirements.add(b'treemanifest') diff --git a/mercurial/configitems.py b/mercurial/configitems.py --- a/mercurial/configitems.py +++ b/mercurial/configitems.py @@ -748,6 +748,12 @@ b'format', b'usestore', default=True, ) coreconfigitem( + b'format', + b'exp-use-copies-side-data-changeset', + default=False, + experimental=True, +) +coreconfigitem( b'format', b'use-side-data', default=False, experimental=True, ) coreconfigitem(