module HaskellCI.Cabal where

import HaskellCI.Prelude

import qualified Distribution.Version as C

defaultCabalInstallVersion :: Maybe Version
defaultCabalInstallVersion :: Maybe Version
defaultCabalInstallVersion = Version -> Maybe Version
forall a. a -> Maybe a
Just ([Int] -> Version
C.mkVersion [Int
3,Int
10])

-- | Convert cabal-install version to a version ghcup understands.
cabalGhcupVersion :: Version -> Version
cabalGhcupVersion :: Version -> Version
cabalGhcupVersion Version
ver = case Version -> [Int]
C.versionNumbers Version
ver of
      [Int
3,Int
10] -> [Int] -> Version
C.mkVersion [Int
3,Int
10,Int
2,Int
0]
      [Int
3,Int
9]  -> [Int] -> Version
C.mkVersion [Int
3,Int
9,Int
0,Int
0]
      [Int
3,Int
6]  -> [Int] -> Version
C.mkVersion [Int
3,Int
6,Int
2,Int
0]
      [Int
x,Int
y]  -> [Int] -> Version
C.mkVersion [Int
x,Int
y,Int
0,Int
0]
      [Int]
_      -> Version
ver