@@ -17,18 +17,19 @@ import System.Process (readProcessWithExitCode)
17data Mismatch = OnlyDryRun String | OnlySimpleList String
17data Mismatch = OnlyDryRun String | OnlySimpleList String
18 deriving Show
18 deriving Show
20−checkPlan :: BuildPlan -> IO ()
20+checkPlan :: BuildSettings -> BuildPlan -> IO ()
21−checkPlan bp = do
21+checkPlan settings bp = do
22 _ <- checkCabalVersion
22 _ <- checkCabalVersion
24 putStrLn "Checking build plan"
24 putStrLn "Checking build plan"
25+ packages <- mapM (replaceTarball $ tarballDir settings) (bpPackageList bp)
25 (ec, dryRun', stderr) <- readProcessWithExitCode "cabal"
26 (ec, dryRun', stderr) <- readProcessWithExitCode "cabal"
26 ( addCabalArgsOnlyGlobal
27 ( addCabalArgsOnlyGlobal
27 $ "install"
28 $ "install"
28 : "--dry-run"
29 : "--dry-run"
29 : "--max-backjumps=-1"
30 : "--max-backjumps=-1"
30 : "--reorder-goals"
31 : "--reorder-goals"
31− : bpPackageList bp
32+ : packages
33 when (ec /= ExitSuccess || "Warning:" `isPrefixOf` stderr) $ do
34 when (ec /= ExitSuccess || "Warning:" `isPrefixOf` stderr) $ do
34 putStr stderr
35 putStr stderr