packages feed

vcswrapper 0.0.1 → 0.0.3

raw patch · 8 files changed

+64/−38 lines, 8 filesdep −haddockdep −haskell98dep ~MissingHdep ~basedep ~directory

Dependencies removed: haddock, haskell98

Dependency ranges changed: MissingH, base, directory, filepath, hxt, mtl, process

Files

src/VCSWrapper/Common.hs view
@@ -14,9 +14,11 @@  module VCSWrapper.Common (     module VCSWrapper.Common.Types-    ,module VCSWrapper.Common.Process+  , module VCSWrapper.Common.VCSMonad+  , module VCSWrapper.Common.Process ) where import VCSWrapper.Common.Types+import VCSWrapper.Common.VCSMonad import VCSWrapper.Common.Process  
src/VCSWrapper/Common/Process.hs view
@@ -8,7 +8,7 @@ -- Stability   : -- Portability : ----- | Functions to execute external processes and run VCS.+-- | Functions to execute external processes. -- ----------------------------------------------------------------------------- @@ -16,25 +16,16 @@     vcsExec     ,vcsExecThrowingOnError     ,exec-    ,runVcs ) where  import System.Process import System.Exit import System.IO (Handle, hFlush, hClose, hGetContents, hPutStr) import Control.Concurrent-import Control.Monad.Reader+import Control.Monad.Reader (ask, liftIO, when) import qualified Control.Exception as Exc import VCSWrapper.Common.Types import Data.Maybe--{-|-    Run a VCS 'Ctx' from a 'Config' and returns the result- -}-runVcs :: Config -- ^ 'Config' for a VCS-       -> Ctx t -- ^ An operation running in 'Ctx'-       -> IO t-runVcs config (Ctx a) = runReaderT a config  -- | Internal function to execute a VCS command. Throws an exception if the command fails. vcsExecThrowingOnError :: String -- ^ VCS shell-command, e.g. git
src/VCSWrapper/Common/TemporaryFiles.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE ScopedTypeVariables #-} ----------------------------------------------------------------------------- -- -- Module      :  VCSWrapper.Common.TemporaryFiles@@ -18,8 +19,7 @@  import System.IO import System.Directory(getTemporaryDirectory, removeFile)-import System.IO.Error(catch)-import Control.Exception(finally)+import Control.Exception as E (catch, finally, SomeException)  {- |     Executes given function using a tempory file.@@ -31,7 +31,7 @@              -> IO a withTempFile pattern func =     do-       tempdir <- catch (getTemporaryDirectory) (\_ -> return ".")+       tempdir <- E.catch (getTemporaryDirectory) (\(_ :: SomeException) -> return ".")        putStrLn $ "Obtained temporary directory: "++tempdir        (file, handle) <- openTempFile tempdir pattern        putStrLn $ "Opened file: "++file++", handle: "++show handle
+ src/VCSWrapper/Common/VCSMonad.hs view
@@ -0,0 +1,29 @@+-----------------------------------------------------------------------------+--+-- Module      :  VCSWrapper.Common.VCSMonad+-- Copyright   :  2011 Stephan Fortelny, Harald Jagenteufel+-- License     :  GPL+--+-- Maintainer  :  stephanfortelny at gmail.com, h.jagenteufel at gmail.com+-- Stability   :+-- Portability :+--+-- | Functions to work with the 'Ctx' monad.+--+-----------------------------------------------------------------------------++module VCSWrapper.Common.VCSMonad (+    runVcs+) where++import VCSWrapper.Common.Types (Config (..), Ctx (..))++import Control.Monad.Reader (runReaderT)++{-|+    Run a VCS 'Ctx' from a 'Config' and returns the result+ -}+runVcs :: Config -- ^ 'Config' for a VCS+       -> Ctx t -- ^ An operation running in 'Ctx'+       -> IO t+runVcs config (Ctx a) = runReaderT a config
src/VCSWrapper/Git.hs view
@@ -46,6 +46,8 @@ import VCSWrapper.Git.Process import VCSWrapper.Git.Types +import VCSWrapper.Common.VCSMonad (runVcs)+ import Data.Maybe import qualified Data.List import Data.String.Utils (strip)
src/VCSWrapper/Mercurial.hs view
@@ -32,9 +32,11 @@ import VCSWrapper.Mercurial.Types import VCSWrapper.Common.TemporaryFiles +import VCSWrapper.Common.VCSMonad (runVcs)+ import System.IO import Control.Monad.Reader-import Maybe+import Data.Maybe  {- |     Add all new files, delete all missing files. Executes @hg addremove@.
src/VCSWrapper/Svn.hs view
@@ -40,13 +40,15 @@ import VCSWrapper.Svn.Process import VCSWrapper.Svn.Types +import VCSWrapper.Common.VCSMonad (runVcs)+ import VCSWrapper.Common.TemporaryFiles import Control.Monad.Reader-import Maybe+import Data.Maybe import System.IO  import Data.List.Utils(startswith)-import Monad (filterM)+import Control.Monad (filterM) import System.Directory(doesFileExist, getDirectoryContents) import System.FilePath(combine, splitFileName) 
vcswrapper.cabal view
@@ -1,5 +1,5 @@ name: vcswrapper-version: 0.0.1+version: 0.0.3 cabal-version: >= 1.8 build-type: Simple license: GPL@@ -16,41 +16,38 @@ author: Stephan Fortelny, Harald Jagenteufel tested-with: GHC == 7.0 data-files: LICENSE README-data-dir: ""+data-dir: .  library-    build-depends: MissingH >=1.1.0.3 && <1.2,-               base >=4.0.0.0 && <4.5,-               directory >=1.1.0.0 && <1.2,-               haddock >=2.9.0 && <2.10,-               haskell98 >=1.1.0.1 && <2.1,-               hxt >=9.1.2 && <9.2,-               mtl >=2.0.1.0 && <2.1,+    build-depends: MissingH >=1.1.0.3 && <1.3,+               base >=4.0.0.0 && <4.8,+               directory >=1.1.0.0 && <1.3,+               hxt >=9.1.2 && <9.4,+               mtl >=2.0.1.0 && <2.2,                parsec >=3.1.1 && <3.2,-               process >=1.0.1.5 && <1.2,-               filepath >=1.2.0.0 && < 1.3+               process >=1.0.1.5 && <1.3,+               filepath >=1.2.0.0 && < 1.4     exposed-modules: VCSWrapper.Common VCSWrapper.Git VCSWrapper.Svn VCSWrapper.Mercurial     other-modules:                 VCSWrapper.Svn.Types VCSWrapper.Svn.Process VCSWrapper.Svn.Parsers                 VCSWrapper.Git.Types VCSWrapper.Git.Parsers VCSWrapper.Common.Types VCSWrapper.Git.Process                VCSWrapper.Mercurial.Process VCSWrapper.Mercurial.Types VCSWrapper.Mercurial.Parsers                VCSWrapper.Common.Process VCSWrapper.Common.TemporaryFiles+               VCSWrapper.Common.VCSMonad     exposed: True     buildable: True     hs-source-dirs: src  executable vcswrapper     main-is: Main.hs-    build-depends: MissingH >=1.1.0.3 && <1.2,-               base >=4.0.0.0 && <4.5,-               directory >=1.1.0.0 && <1.2,-               haddock >=2.9.0 && <2.10,-               haskell98 >=1.1.0.1 && <2.1,-               hxt >=9.1.2 && <9.2,-               mtl >=2.0.1.0 && <2.1,+    build-depends: MissingH >=1.1.0.3 && <1.3,+               base >=4.0.0.0 && <4.8,+               directory >=1.1.0.0 && <1.3,+               hxt >=9.1.2 && <9.4,+               mtl >=2.0.1.0 && <2.2,                parsec >=3.1.1 && <3.2,-               process >=1.0.1.5 && <1.2,-               filepath >=1.2.0.0 && < 1.3+               process >=1.0.1.5 && <1.3,+               filepath >=1.2.0.0 && < 1.4     buildable: True     hs-source-dirs: src     other-modules:@@ -58,3 +55,4 @@                VCSWrapper.Git.Types VCSWrapper.Git.Parsers VCSWrapper.Common.Types                VCSWrapper.Mercurial.Process VCSWrapper.Mercurial.Types VCSWrapper.Mercurial.Parsers                VCSWrapper.Common.Process VCSWrapper.Common.TemporaryFiles+               VCSWrapper.Common.VCSMonad