HSH 2.0.3 → 2.0.4
raw patch · 2 files changed
+23/−10 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- HSH.Command: instance [overlap ok] (ShellCommand a, ShellCommand b) => Show (PipeCommand a b)
- HSH.Command: instance [overlap ok] ShellCommand a => Show (EnvironCommand a)
+ HSH.Command: instance [overlap ok] Show (EnvironCommand a)
+ HSH.Command: instance [overlap ok] Show (PipeCommand a b)
- HSH.Command: data (ShellCommand a, ShellCommand b) => PipeCommand a b
+ HSH.Command: data PipeCommand a b
Files
- HSH.cabal +3/−3
- HSH/Command.hs +20/−7
HSH.cabal view
@@ -1,5 +1,5 @@ Name: HSH-Version: 2.0.3+Version: 2.0.4 License: LGPL Maintainer: John Goerzen <jgoerzen@complete.org> Author: John Goerzen@@ -27,7 +27,7 @@ Exposed-Modules: HSH, HSH.Command, HSH.ShellEquivs, HSH.Channel Extensions: ExistentialQuantification, OverlappingInstances, UndecidableInstances, FlexibleContexts, CPP- Build-Depends: base >= 4 && < 5, process, mtl, regex-compat, MissingH>=1.0.0,+ Build-Depends: base >= 4 && < 5, mtl, process, regex-compat, MissingH>=1.0.0, hslogger, filepath, regex-base, regex-posix, directory, bytestring if !os(windows)@@ -37,7 +37,7 @@ Executable runtests if flag(buildtests) Buildable: True- Build-Depends: base >= 4 && < 5, process, mtl, regex-compat,+ Build-Depends: base >= 4 && < 5, mtl, process, regex-compat, MissingH>=1.0.0, hslogger, filepath, regex-base, regex-posix, directory, bytestring, HUnit, testpack
HSH/Command.hs view
@@ -1,4 +1,4 @@-{-# OPTIONS_GHC -XFlexibleInstances -XTypeSynonymInstances #-}+{-# OPTIONS_GHC -XFlexibleInstances -XTypeSynonymInstances -XStandaloneDeriving #-} {- Commands for HSH Copyright (C) 2004-2008 John Goerzen <jgoerzen@complete.org>@@ -292,7 +292,13 @@ std_in = UseHandle ih, std_out = CreatePipe, std_err = Inherit,- close_fds = True}+ close_fds = True+#if MIN_VERSION_process(1,1,0)+-- Or use GHC version as a proxy: __GLASGOW_HASKELL__ >= 720+ -- Added field in process 1.1.0.0:+ , create_group = False+#endif+ } in do (_, oh', _, ph) <- createProcess cp let oh = fromJust oh' return (ChanHandle oh, [(printCmdSpec c, waitForProcess ph)])@@ -303,7 +309,12 @@ std_in = CreatePipe, std_out = CreatePipe, std_err = Inherit,- close_fds = True}+ close_fds = True+#if MIN_VERSION_process(1,1,0)+ -- Added field in process 1.1.0.0:+ , create_group = False+#endif+ } in do (ih', oh', _, ph) <- createProcess cp let ih = fromJust ih' let oh = fromJust oh'@@ -318,9 +329,10 @@ -- Pipes ------------------------------------------------------------ -data (ShellCommand a, ShellCommand b) => PipeCommand a b = PipeCommand a b- deriving Show+data PipeCommand a b = (ShellCommand a, ShellCommand b) => PipeCommand a b +deriving instance Show (PipeCommand a b)+ {- | An instance of 'ShellCommand' represeting a pipeline. -} instance (ShellCommand a, ShellCommand b) => ShellCommand (PipeCommand a b) where fdInvoke (PipeCommand cmd1 cmd2) env ichan =@@ -573,8 +585,9 @@ This is a low-level interface; see 'setenv' and 'unsetenv' for more convenient interfaces. -}-data (ShellCommand a) => EnvironCommand a = EnvironCommand EnvironFilter a- deriving Show+data EnvironCommand a = (ShellCommand a) => EnvironCommand EnvironFilter a++deriving instance Show (EnvironCommand a) instance (ShellCommand a) => ShellCommand (EnvironCommand a) where fdInvoke (EnvironCommand efilter cmd) Nothing ichan =