diff --git a/exes/Main.hs b/exes/Main.hs index 2cef39fd..2e4723f1 100644 --- a/exes/Main.hs +++ b/exes/Main.hs @@ -1,4 +1,5 @@ {-# LANGUAGE CPP #-} +{-# LANGUAGE PatternSynonyms #-} {-# OPTIONS_GHC -fno-warn-incomplete-uni-patterns #-} @@ -41,7 +42,7 @@ import Network.URI ( URI(..), URIAuth(..), parseAbsoluteURI ) import Distribution.Simple.Command import Distribution.Simple.Setup - ( Flag(..), fromFlag, fromFlagOrDefault, flagToList, flagToMaybe ) + ( Flag, pattern Flag, pattern NoFlag, fromFlag, fromFlagOrDefault, flagToList, flagToMaybe ) import Data.Maybe ( isNothing ) import Data.List diff --git a/hackage-server.cabal b/hackage-server.cabal index ed28e49c..8020a9c4 100644 --- a/hackage-server.cabal +++ b/hackage-server.cabal @@ -146,8 +146,8 @@ common defaults -- other dependencies shared by most components build-depends: , aeson >= 2.1.0.0 && < 2.3 - , Cabal >= 3.14.2.0 && < 3.16 - , Cabal-syntax >= 3.14.2.0 && < 3.16 + , Cabal >= 3.14.2.0 && < 3.18 + , Cabal-syntax >= 3.14.2.0 && < 3.18 -- Cabal-syntax needs to be bound to constrain hackage-security -- see https://github.com/haskell/hackage-server/issues/1130 , fail ^>= 4.9.0 diff --git a/src/Distribution/Server/Framework/Instances.hs b/src/Distribution/Server/Framework/Instances.hs index 2e12816b..5166371c 100644 --- a/src/Distribution/Server/Framework/Instances.hs +++ b/src/Distribution/Server/Framework/Instances.hs @@ -250,7 +250,9 @@ instance SafeCopy CompilerFlavor where putCopy JHC = contain $ putWord8 7 putCopy LHC = contain $ putWord8 8 putCopy UHC = contain $ putWord8 9 +#if !MIN_VERSION_Cabal_syntax(3,16,0) putCopy (HaskellSuite s) = contain $ putWord8 10 >> safePut s +#endif putCopy GHCJS = contain $ putWord8 11 putCopy Eta = contain $ putWord8 12 #if MIN_VERSION_Cabal_syntax(3,12,1) @@ -270,7 +272,9 @@ instance SafeCopy CompilerFlavor where 7 -> return JHC 8 -> return LHC 9 -> return UHC +#if !MIN_VERSION_Cabal_syntax(3,16,0) 10 -> return HaskellSuite <*> safeGet +#endif 11 -> return GHCJS 12 -> return Eta #if MIN_VERSION_Cabal_syntax(3,12,1) @@ -411,7 +415,9 @@ instance Arbitrary CompilerFlavor where , pure JHC , pure LHC , pure UHC +#if !MIN_VERSION_Cabal_syntax(3,16,0) , pure HaskellSuite <*> vectorOf 3 (choose ('A', 'Z')) +#endif , pure GHCJS , pure Eta #if MIN_VERSION_Cabal_syntax(3,12,1)