[Updated] D9483: upgrade: gather code about source checking together
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Sun Dec 6 12:15:56 UTC 2020
Closed by commit rHGa2a59cde9b9f: upgrade: gather code about source checking together (authored by marmoute).
This revision was automatically updated to reflect the committed changes.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D9483?vs=24034&id=24059
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D9483/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D9483
AFFECTED FILES
mercurial/upgrade_utils/actions.py
CHANGE DETAILS
diff --git a/mercurial/upgrade_utils/actions.py b/mercurial/upgrade_utils/actions.py
--- a/mercurial/upgrade_utils/actions.py
+++ b/mercurial/upgrade_utils/actions.py
@@ -24,38 +24,6 @@
}
-def requiredsourcerequirements(repo):
- """Obtain requirements required to be present to upgrade a repo.
-
- An upgrade will not be allowed if the repository doesn't have the
- requirements returned by this function.
- """
- return {
- # Introduced in Mercurial 0.9.2.
- b'revlogv1',
- # Introduced in Mercurial 0.9.2.
- b'store',
- }
-
-
-def blocksourcerequirements(repo):
- """Obtain requirements that will prevent an upgrade from occurring.
-
- An upgrade cannot be performed if the source repository contains a
- requirements in the returned set.
- """
- return {
- # The upgrade code does not yet support these experimental features.
- # This is an artificial limitation.
- requirements.TREEMANIFEST_REQUIREMENT,
- # This was a precursor to generaldelta and was never enabled by default.
- # It should (hopefully) not exist in the wild.
- b'parentdelta',
- # Upgrade should operate on the actual store, not the shared link.
- requirements.SHARED_REQUIREMENT,
- }
-
-
def supportremovedrequirements(repo):
"""Obtain requirements that can be removed during an upgrade.
@@ -667,6 +635,41 @@
return newactions
+### Code checking if a repository can got through the upgrade process at all. #
+
+
+def requiredsourcerequirements(repo):
+ """Obtain requirements required to be present to upgrade a repo.
+
+ An upgrade will not be allowed if the repository doesn't have the
+ requirements returned by this function.
+ """
+ return {
+ # Introduced in Mercurial 0.9.2.
+ b'revlogv1',
+ # Introduced in Mercurial 0.9.2.
+ b'store',
+ }
+
+
+def blocksourcerequirements(repo):
+ """Obtain requirements that will prevent an upgrade from occurring.
+
+ An upgrade cannot be performed if the source repository contains a
+ requirements in the returned set.
+ """
+ return {
+ # The upgrade code does not yet support these experimental features.
+ # This is an artificial limitation.
+ requirements.TREEMANIFEST_REQUIREMENT,
+ # This was a precursor to generaldelta and was never enabled by default.
+ # It should (hopefully) not exist in the wild.
+ b'parentdelta',
+ # Upgrade should operate on the actual store, not the shared link.
+ requirements.SHARED_REQUIREMENT,
+ }
+
+
def check_source_requirements(repo):
"""Ensure that no existing requirements prevent the repository upgrade"""
To: marmoute, #hg-reviewers, pulkit
Cc: mercurial-patches
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-patches/attachments/20201206/6a0655b2/attachment-0002.html>
More information about the Mercurial-patches
mailing list