ats-pkg 2.0.0.10 → 2.0.0.11
raw patch · 3 files changed
+20/−15 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- ats-pkg.cabal +1/−1
- src/Language/ATS/Package/Build.hs +12/−11
- src/Language/ATS/Package/Exec.hs +7/−3
ats-pkg.cabal view
@@ -1,5 +1,5 @@ name: ats-pkg-version: 2.0.0.10+version: 2.0.0.11 synopsis: Package manager for ATS description: A collection of scripts to make building ATS projects easy. homepage: https://github.com/vmchale/ats-pkg#readme
src/Language/ATS/Package/Build.hs view
@@ -47,7 +47,7 @@ -- | Build a set of targets build :: [String] -- ^ Targets -> IO ()-build rs = bool (mkPkg [buildAll Nothing] rs) (mkPkg mempty rs) =<< check Nothing+build rs = bool (mkPkg False [buildAll Nothing] rs) (mkPkg False mempty rs) =<< check Nothing -- TODO clean generated ATS mkClean :: Rules ()@@ -108,22 +108,23 @@ need tests mapM_ cmd_ tests -options :: ShakeOptions-options = shakeOptions { shakeFiles = ".atspkg"- , shakeThreads = 4- , shakeProgress = progressSimple- , shakeLint = Just LintBasic- , shakeColor = True- , shakeVersion = showVersion version- }+options :: Bool -> ShakeOptions+options rb = shakeOptions { shakeFiles = ".atspkg"+ , shakeThreads = 4+ , shakeProgress = progressSimple+ , shakeLint = Just LintBasic+ , shakeColor = True+ , shakeVersion = showVersion version+ , shakeRebuild = bool mempty [(RebuildNow, ".atspkg/config")] rb+ } cleanConfig :: (MonadIO m) => [String] -> m Pkg cleanConfig ["clean"] = pure undefined cleanConfig _ = getConfig Nothing -- TODO verbosity & coloring?-mkPkg :: [IO ()] -> [String] -> IO ()-mkPkg setup rs = shake options $+mkPkg :: Bool -> [IO ()] -> [String] -> IO ()+mkPkg rb setup rs = shake (options rb) $ want rs >> mkClean >> (pkgToAction setup rs =<< cleanConfig rs)
src/Language/ATS/Package/Exec.hs view
@@ -54,6 +54,7 @@ <> help "Targets to build")) <*> switch (long "no-cache"+ <> short 'c' <> help "Turn off configuration caching") fetch :: Parser Command@@ -75,7 +76,7 @@ fetchDeps True mempty [Dependency lib dirName url' undefined] [] True ps <- getSubdirs p pkgDir <- fromMaybe p <$> findFile (p:ps) "atspkg.dhall"- let a = withCurrentDirectory (takeDirectory pkgDir) (mkPkg mempty ["install"])+ let a = withCurrentDirectory (takeDirectory pkgDir) (mkPkg False mempty ["install"]) bool (buildAll (Just pkgDir) >> a) a =<< check (Just pkgDir) exec :: IO ()@@ -84,10 +85,13 @@ run :: Command -> IO () run Nuke = cleanAll run (Fetch u) = fetchPkg u-run Clean = mkPkg mempty ["clean"]-run c = bool (mkPkg [buildAll Nothing] rs) (mkPkg mempty rs) =<< check Nothing+run Clean = mkPkg False mempty ["clean"]+run c = bool (mkPkg rb [buildAll Nothing] rs) (mkPkg rb mempty rs) =<< check Nothing where rs = g c g Install = ["install"] g (Build ts _) = ts g Test = ["test"] g _ = undefined+ rb = h c+ h (Build _ True) = True+ h _ = False