on master help sign in
Better flags serialization
commit78e48025c4962a04085665c5a9ef324f780fa801 authorMichael Snoyman <michael@snoyman.com> dateSun 7 Dec 2014, 12:45 (12 years ago) parent69f3a1b
2 files changed+10−6
Stackage2/BuildPlan.hs+3−2 Stackage2/CheckBuildPlan.hs+7−4
Stackage2/BuildPlan.hs+3−2
@@ -260,6 +260,7 @@ mkPackageBuild gpd = do
260260 let overrides = packageFlags name ++ defaultGlobalFlags
261261 getFlag MkFlag {..} =
262262 (flagName, fromMaybe flagDefault $ lookup flagName overrides)
263+ flags = mapFromList $ map getFlag $ genPackageFlags gpd
263264 desc <- getFlattenedComponent
264265 CheckCond
265266 { ccPackageName = name
@@ -267,7 +268,7 @@ mkPackageBuild gpd = do
267268 , ccArch = Distribution.System.X86_64
268269 , ccCompilerFlavor = Distribution.Compiler.GHC
269270 , ccCompilerVersion = ghcVerCabal
270− , ccFlags = mapFromList $ map getFlag $ genPackageFlags gpd
271+ , ccFlags = flags
271272 }
272273 (tryBuildTest name)
273274 (tryBuildBenchmark name)
@@ -277,7 +278,7 @@ mkPackageBuild gpd = do
277278 , pbMaintainer = fmap snd $ lookup name $ pcPackages defaultPackageConstraints
278279 , pbGithubPings = getGithubPings gpd
279280 , pbUsers = mempty -- must be filled in later
280− , pbFlags = packageFlags name
281+ , pbFlags = flags
281282 , pbTestState =
282283 case () of
283284 ()
Stackage2/CheckBuildPlan.hs+7−4
@@ -38,9 +38,10 @@ checkDeps allPackages (user, pb) =
3838 (dep, Just version)
3939 errMap
4040 where
41− errMap = singletonMap user range
41+ errMap = singletonMap (user, pbVersion pb) range
4242
43−newtype BadBuildPlan = BadBuildPlan (Map (PackageName, Maybe Version) (Map PackageName VersionRange)) -- FIXME add maintainer and Github ping info
43+newtype BadBuildPlan =
44+ BadBuildPlan (Map (PackageName, Maybe Version) (Map (PackageName, Version) VersionRange)) -- FIXME add maintainer and Github ping info
4445 deriving Typeable
4546instance Exception BadBuildPlan
4647instance Show BadBuildPlan where
@@ -60,10 +61,12 @@ instance Show BadBuildPlan where
6061 , " depended on by:"
6162 ]
6263
63− showUser :: (PackageName, VersionRange) -> String
64− showUser (user, range) = concat
64+ showUser :: ((PackageName, Version), VersionRange) -> String
65+ showUser ((user, version), range) = concat
6566 [ "- "
6667 , display user
68+ , "-"
69+ , display version
6770 , " ("
6871 , display range
6972 , ")"