packages feed

ats-pkg 1.1.0.1 → 1.1.0.2

raw patch · 6 files changed

+36/−32 lines, 6 filesdep ~shake-extPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: shake-ext

API changes (from Hackage documentation)

- Language.ATS.Package.Type: printConfig :: IO ()
+ Language.ATS.Package: instance GHC.Classes.Eq Language.ATS.Package.Version
+ Language.ATS.Package.Type: [compiler] :: Pkg -> [Integer]
- Language.ATS.Package.Type: Pkg :: [Bin] -> [Bin] -> Maybe Text -> [Integer] -> [Dependency] -> Pkg
+ Language.ATS.Package.Type: Pkg :: [Bin] -> [Bin] -> Maybe Text -> [Integer] -> [Integer] -> [Dependency] -> Pkg

Files

ats-pkg.cabal view
@@ -1,5 +1,5 @@ name:                ats-pkg-version:             1.1.0.1+version:             1.1.0.2 synopsis:            Package manager for ATS description:         A collection of scripts to make building ATS projects easy. homepage:            https://github.com/vmchale/ats-pkg#readme@@ -43,7 +43,7 @@                      , unix                      , lens                      , dhall-                     , shake-ext >= 1.1.0.0+                     , shake-ext >= 1.2.0.0                      , composition-prelude >= 1.1.0.1   default-language:    Haskell2010   if flag(development)
src/Language/ATS/Package.hs view
@@ -29,6 +29,7 @@         (removeDirectoryRecursive =<< compilerDir v)  newtype Version = Version [Integer]+    deriving (Eq)  instance Show Version where     show (Version is) = intercalate "." (show <$> is)@@ -56,7 +57,7 @@          putStrLn "Fetching compiler..."         manager <- newManager tlsManagerSettings-        initialRequest <- parseRequest $ pkgUrl v -- "https://github.com/vmchale/fastcat/releases/download/0.1.5/ATS2-Postiats-0.3.8.tar.gz"+        initialRequest <- parseRequest $ pkgUrl v         response <- responseBody <$> httpLbs (initialRequest { method = "GET" }) manager          putStrLn "Unpacking compiler..."
src/Language/ATS/Package/Dependency.hs view
@@ -26,16 +26,12 @@                              }     deriving (Eq, Show, Generic, Interpret) --- https://github.com/vmchale/polyglot/archive/0.3.27.tar.gz- fetchDeps :: [Dependency] -> IO ()-fetchDeps deps = do--    putStrLn "Setting up ATS dependencies..."--    let libs = fmap buildHelper deps--    parallel_ libs >> stopGlobalPool+fetchDeps deps =+    unless (null deps) $ do+        putStrLn "Setting up ATS dependencies..."+        let libs = fmap buildHelper deps+        parallel_ libs >> stopGlobalPool  buildHelper :: Dependency -> IO () buildHelper (Dependency lib' dirName' url'') = do
src/Language/ATS/Package/Exec.hs view
@@ -1,8 +1,12 @@+{-# LANGUAGE OverloadedStrings #-}+ module Language.ATS.Package.Exec ( exec                                  , buildAll                                  ) where +import           Control.Composition import           Data.Bool                 (bool)+import           Dhall                     hiding (bool) import           Language.ATS.Package import           Language.ATS.Package.Type import           System.Directory          (doesFileExist)@@ -11,15 +15,14 @@ check :: IO Bool check = do     home <- getEnv "HOME"-    doesFileExist (home ++ "/.atspkg/0.3.8/bin/patscc") -- FIXME version+    v <- want+    doesFileExist (home ++ "/.atspkg/" ++ show v ++ "/bin/patscc")  exec :: IO () exec = bool (buildAll >> mkPkg) mkPkg =<< check -latest :: Version-latest = Version [0,3,8]+want :: IO Version+want = Version . compiler <$> input auto "./atspkg.dhall"  buildAll :: IO ()-buildAll =-    fetchCompiler latest >>-    setupCompiler latest+buildAll = on (>>) (=<< want) fetchCompiler setupCompiler
src/Language/ATS/Package/Type.hs view
@@ -4,7 +4,6 @@  module Language.ATS.Package.Type ( Pkg (..)                                  , Bin (..)-                                 , printConfig                                  , pkgToAction                                  , mkPkg                                  , mkManpage@@ -56,7 +55,7 @@         bins <- fmap (TL.unpack . target) . bin <$> getConfig         need bins         home <- fromMaybe "" <$> getEnv "HOME"-        let binDest = fmap (((home <> "/.local/bin/") <>) . takeBaseName) bins+        let binDest = ((home <> "/.local/bin/") <>) . takeBaseName <$> bins         void $ zipWithM copyFile' bins binDest         case man config of             Just mt -> do@@ -82,7 +81,8 @@         mapM_ cmd_ tests  pkgToAction :: Pkg -> Rules ()-pkgToAction (Pkg bs ts mt v _) = do+pkgToAction (Pkg bs ts mt v v' ds) = do+    liftIO $ fetchDeps ds     action (need ["atspkg.dhall"])     mapM_ g (bs ++ ts)     let bins = TL.unpack . target <$> bs@@ -90,15 +90,19 @@         (Just m) -> want (manTarget m : bins)         Nothing  -> want bins -    where g (Bin s t ls gc') = atsBin (Version v) gc' (TL.unpack <$> ls) (TL.unpack s) (TL.unpack t)--data Bin = Bin { src :: Text, target :: Text, libs :: [Text], gc :: Bool }-    deriving (Show, Eq, Generic, Interpret)+    where g (Bin s t ls gc') = atsBin (Version v) (Version v') gc' (TL.unpack <$> ls) (TL.unpack s) (TL.unpack t) -data Pkg = Pkg { bin :: [Bin], test :: [Bin], man :: Maybe Text, version :: [Integer], dependencies :: [Dependency] }-    deriving (Show, Eq, Generic, Interpret)+data Bin = Bin { src    :: Text -- ^ Source file (should end with @.dats@)+               , target :: Text -- ^ Binary to be built+               , libs   :: [Text] -- ^ Libraries to link against (e.g. @[ "pthread" ]@)+               , gc     :: Bool } -- ^ Whether to use the garbage collector+         deriving (Show, Eq, Generic, Interpret) -printConfig :: IO ()-printConfig = do-    x <- input auto "./atspkg.dhall"-    print (x :: Pkg)+data Pkg = Pkg { bin          :: [Bin] -- ^ List of binaries to be built+               , test         :: [Bin] -- ^ List of test suites+               , man          :: Maybe Text -- ^ Optional (markdown) manpages to be converted using @pandoc@.+               , version      :: [Integer] -- ^ Library version+               , compiler     :: [Integer] -- ^ Compiler version+               , dependencies :: [Dependency] -- ^ List of dependencies+               }+         deriving (Show, Eq, Generic, Interpret)
stack.yaml view
@@ -3,7 +3,7 @@ packages:   - '.' extra-deps:-  - shake-ext-1.1.0.0+  - shake-ext-1.2.0.0   - composition-prelude-1.1.0.1   - language-ats-0.1.0.3 flags: