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 +4/−0
- shh.cabal +1/−1
- src/Shh/Internal.hs +11/−5
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