packages feed

shellmet 0.0.0 → 0.0.1

raw patch · 3 files changed

+9/−5 lines, 3 files

Files

CHANGELOG.md view
@@ -3,8 +3,12 @@ `shellmet` uses [PVP Versioning][1]. The changelog is available [on GitHub][2]. -0.0.0-=====+## 0.0.1 — Apr 9, 2019++* Generalise the type of the `$?` operator to allow returning values on+  shell-command failuires.++## 0.0.0  * Initially created. 
shellmet.cabal view
@@ -1,6 +1,6 @@ cabal-version:       2.0 name:                shellmet-version:             0.0.0+version:             0.0.1 synopsis:            Out of the shell solution for scripting in Haskell description:         Shellmet provides easy and convenient way to call shell commands from Haskell programs homepage:            https://github.com/kowainik/shellmet
src/Shellmet.hs view
@@ -56,7 +56,7 @@ ($|) :: FilePath -> [Text] -> IO Text cmd $| args = T.strip . T.pack <$> readProcess cmd (map T.unpack args) "" -{- | Do some IO actions when processed failed with error.+{- | Do some IO actions when process failed with 'IOError'.  >>> "exit" ["0"] $? putStrLn "Command failed" ⚙  exit 0@@ -66,5 +66,5 @@ Command failed -} infixl 4 $?-($?) :: IO () -> IO () -> IO ()+($?) :: IO a -> IO a -> IO a action $? handler = action `catch` \(_ :: IOError) -> handler