Patchwork D6945: sidedatacopies: add a new requirement for storing copies into sidedata

login
register
mail settings
Submitter phabricator
Date Oct. 9, 2019, 5:47 p.m.
Message ID <ef7684bdfd40d1e4a91f34e5378fdfad@localhost.localdomain>
Download mbox | patch
Permalink /patch/42153/
State Not Applicable
Headers show

Comments

phabricator - Oct. 9, 2019, 5:47 p.m.
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

Patch

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(