packages feed

shh 0.1.1.0 → 0.2.0.0

raw patch · 3 files changed

+16/−6 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Shh.Internal: instance Shh.Internal.ExecArg GHC.Base.String
+ Shh: asArgFromList :: (ExecArg a, Show a) => [a] -> [String]
+ Shh.Internal: asArgFromList :: (ExecArg a, Show a) => [a] -> [String]
+ Shh.Internal: instance Shh.Internal.ExecArg GHC.Types.Char
+ Shh.Internal: instance Shh.Internal.ExecArg a => Shh.Internal.ExecArg [a]

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for execpath +## 0.2.0.0 -- 2019-01-23++* Extended the ExecArg typeclass to handle lists.+ ## 0.1.1.0 -- 2019-01-22  * Generate an IO action to check for missing dependencies at runtime.
shh.cabal view
@@ -1,5 +1,5 @@ name:                shh-version:             0.1.1.0+version:             0.2.0.0 synopsis:            Simple shell scripting from Haskell description:         Provides a shell scripting environment for Haskell. It                      helps you all external binaries, and allows you to
src/Shh/Internal.hs view
@@ -343,12 +343,18 @@     default asArg :: Show a => a -> [String]     asArg a = [show a] -instance ExecArg String where-    asArg s = [s]+    -- God, I hate that String is [Char]...+    asArgFromList :: [a] -> [String]+    default asArgFromList :: Show a => [a] -> [String]+    asArgFromList = concatMap asArg --- TODO: Determine if `Char` flags should be prepended with a '-' or not. --- instance ExecArg Char where---     asArg c = [['-', c]]+instance ExecArg Char where+    asArg s = [[s]]+    asArgFromList s = [s]++instance ExecArg a => ExecArg [a] where+    asArg = asArgFromList+    asArgFromList = concatMap asArg  instance ExecArg Int instance ExecArg Integer