diff --git a/src/MicroCabal/Normalize.hs b/src/MicroCabal/Normalize.hs index bf97359..7046a9b 100644 --- a/src/MicroCabal/Normalize.hs +++ b/src/MicroCabal/Normalize.hs @@ -51,9 +51,9 @@ libName (Cabal (g@(Section _ _ gs):ss)) = Cabal $ g : map set ss reduce :: FlagInfo -> Cabal -> Cabal reduce info c = reduce' (addFlags c) c where addFlags (Cabal ss) = info{ flags = flags info ++ concatMap sect ss } - sect (Section "flag" n fs) = [(n', dflt n' fs)] where n' = map toLower n + sect (Section "flag" n fs) = [(map toLower n, dflt fs)] sect _ = [] - dflt n fs = head $ [ b | Field "default" (VBool b) <- fs ] ++ [error $ "no default for flag " ++ show n] + dflt fs = head $ [ b | Field "default" (VBool b) <- fs ] ++ [True] reduce' :: FlagInfo -> Cabal -> Cabal reduce' info = mapField red diff --git a/src/MicroCabal/Parse.hs b/src/MicroCabal/Parse.hs index bf44a90..40a8031 100644 --- a/src/MicroCabal/Parse.hs +++ b/src/MicroCabal/Parse.hs @@ -440,20 +440,21 @@ parsers = , "name" # (VItem <$> pItem) , "package-url" # (VItem <$> pItem) , "stability" # pFreeText - , "subdir" # (VItem <$> pItem) , "synopsis" # pFreeTextX , "tested-with" # pVLibs , "version" # (VVersion <$> pVersion) -- test suite fields , "main-is" # (VItem <$> pItem) , "test-module" # (VItem <$> pItem) - , "type" # (VItem <$> pItem) -- source-repository fields , "location" # (VItem <$> pItem) + , "module" # (VItem <$> pItem) + , "branch" # (VItem <$> pItem) + , "tag" # (VItem <$> pItem) + , "subdir" # (VItem <$> pItem) -- flag fields , "manual" # (VBool <$> pBoolNL) , "default" # (VBool <$> pBoolNL) - , "tag" # pFreeText ] where ( # ) = (,) -- XXX use local fixity