summaryrefslogtreecommitdiff
path: root/Annex/Version.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Annex/Version.hs')
-rw-r--r--Annex/Version.hs26
1 files changed, 22 insertions, 4 deletions
diff --git a/Annex/Version.hs b/Annex/Version.hs
index d08f994e9..b54fb68e0 100644
--- a/Annex/Version.hs
+++ b/Annex/Version.hs
@@ -15,14 +15,20 @@ import qualified Annex
type Version = String
-supportedVersion :: Version
-supportedVersion = "5"
+defaultVersion :: Version
+defaultVersion = "5"
+
+latestVersion :: Version
+latestVersion = "6"
+
+supportedVersions :: [Version]
+supportedVersions = ["5", "6"]
upgradableVersions :: [Version]
#ifndef mingw32_HOST_OS
-upgradableVersions = ["0", "1", "2", "4"]
+upgradableVersions = ["0", "1", "2", "4", "5"]
#else
-upgradableVersions = ["2", "3", "4"]
+upgradableVersions = ["2", "3", "4", "5"]
#endif
autoUpgradeableVersions :: [Version]
@@ -34,6 +40,18 @@ versionField = annexConfig "version"
getVersion :: Annex (Maybe Version)
getVersion = annexVersion <$> Annex.getGitConfig
+versionSupportsDirectMode :: Annex Bool
+versionSupportsDirectMode = go <$> getVersion
+ where
+ go (Just "6") = False
+ go _ = True
+
+versionSupportsUnlockedPointers :: Annex Bool
+versionSupportsUnlockedPointers = go <$> getVersion
+ where
+ go (Just "6") = True
+ go _ = False
+
setVersion :: Version -> Annex ()
setVersion = setConfig versionField