packages feed

omnicodec 0.7 → 0.8

raw patch · 4 files changed

+78/−83 lines, 4 filesdep ~basedep ~bytestringdep ~cmdargssetup-changed

Dependency ranges changed: base, bytestring, cmdargs, conduit, sandi, transformers

Files

− Setup.hs
@@ -1,5 +0,0 @@-#! /usr/bin/env runhaskell--import Distribution.Simple-main = defaultMain-
omnicodec.cabal view
@@ -1,46 +1,53 @@-name: omnicodec-version: 0.7-license: OtherLicense-license-file: COPYING-author: Magnus Therning-maintainer: magnus@therning.org-copyright: Magnus Therning, 2012-synopsis: data encoding and decoding command line utilities-description: Two simple command line tools built on sandi-    (http://hackage.haskell.org/package/sandi).-build-type: Simple-category: Codec-cabal-version: >= 1.6+cabal-version: 1.12 -source-repository head-    type: git-    location: https://github.com/magthe/omnicodec+-- This file has been generated from package.yaml by hpack version 0.31.1.+--+-- see: https://github.com/sol/hpack+--+-- hash: ae6d7c6f78d12539cc6fe2febc529b9aecc04f2c70f1f2a1e869819dd375d535 -source-repository this-    type: git-    location: https://github.com/magthe/omnicodec-    tag: REL_0.6+name:           omnicodec+version:        0.8+synopsis:       Data encoding and decoding command line utilities+description:    Two simple command line tools built on sandi (http://hackage.haskell.org/package/sandi).+category:       Codec+maintainer:     Magnus Therning <magnus@therning.org>+license:        OtherLicense+license-file:   COPYING+build-type:     Simple +source-repository head+  type: git+  location: https://github.com/magthe/omnicodec.git+ executable odec-    main-is: odec.hs-    hs-source-dirs: src-    build-depends:-        base ==4.6.*,-        cmdargs ==0.10.*,-        conduit ==1.0.*,-        bytestring ==0.10.*,-        sandi ==0.2.*,-        transformers ==0.3.*-    ghc-options: -Wall+  main-is: odec.hs+  other-modules:+      Paths_omnicodec+  hs-source-dirs:+      src+  ghc-options: -Wall+  build-depends:+      base <5+    , bytestring+    , cmdargs+    , conduit+    , sandi+    , transformers+  default-language: Haskell2010  executable oenc-    main-is: oenc.hs-    hs-source-dirs: src-    build-depends:-        base ==4.6.*,-        cmdargs ==0.10.*,-        conduit ==1.0.*,-        bytestring ==0.10.*,-        sandi ==0.2.*,-        transformers ==0.3.*-    ghc-options: -Wall+  main-is: oenc.hs+  other-modules:+      Paths_omnicodec+  hs-source-dirs:+      src+  ghc-options: -Wall+  build-depends:+      base <5+    , bytestring+    , cmdargs+    , conduit+    , sandi+    , transformers+  default-language: Haskell2010
src/odec.hs view
@@ -23,35 +23,32 @@  import Control.Exception import Control.Monad.IO.Class--- import Control.Monad import Data.ByteString as BS+import Data.Conduit+import Data.Conduit.Combinators (sinkHandle, sourceHandle) import Data.Maybe import Data.Version(showVersion) import System.Console.CmdArgs--- import System.Exit import System.IO as SIO-import Data.Conduit-import Data.Conduit.Binary -import qualified Data.Conduit.Codec.Base64 as B64-import qualified Data.Conduit.Codec.Base64Url as B64U+import qualified Data.Conduit.Codec.Base16 as B16 import qualified Data.Conduit.Codec.Base32 as B32 import qualified Data.Conduit.Codec.Base32Hex as B32H-import qualified Data.Conduit.Codec.Base16 as B16+import qualified Data.Conduit.Codec.Base64 as B64+import qualified Data.Conduit.Codec.Base64Url as B64U import qualified Data.Conduit.Codec.Base85 as B85 import qualified Data.Conduit.Codec.QuotedPrintable as QP import qualified Data.Conduit.Codec.Uu as Uu import qualified Data.Conduit.Codec.Xx as Xx --- {{{1 command line options ver :: String-ver = "omnicode decode (odec) " ++ (showVersion version)+ver = "omnicode decode (odec) " ++ showVersion version     ++ "\nCopyright 2012 Magnus Therning <magnus@therning.org>"  data Codec = B64 | B64U | B32 | B32H | B16 | B85 | QP | Uu | Xx     deriving(Show, Eq, Data, Typeable) -codecMap :: [(Codec, Conduit ByteString (ResourceT IO) ByteString)]+codecMap :: [(Codec, ConduitT ByteString ByteString IO ())] codecMap =     [ (B64, B64.decode)     , (B64U, B64U.decode)@@ -89,25 +86,23 @@         -- , " url  - url encoding"         ] --- {{{1 main main :: IO ()-main = do+main =     cmdArgs myArgs >>= \ a -> do-    let decFunc = lookup (argCodec a) codecMap-    withMaybeFile (argInput a) ReadMode $ \ inputFile ->+      let decFunc = lookup (argCodec a) codecMap+      withMaybeFile (argInput a) ReadMode $ \ inputFile ->         withMaybeFile (argOutput a) WriteMode $ \ outputFile ->-            runResourceT $ decodeFile (fromJust decFunc) inputFile outputFile+        runConduit $ decodeFile (fromJust decFunc) inputFile outputFile  withMaybeFile :: Maybe FilePath -> IOMode -> (Handle -> IO r) -> IO r withMaybeFile fn mode func = let         dH = if mode == ReadMode             then stdin             else stdout-    in bracket -        (maybe (return dH) (flip openFile mode) fn)+    in bracket+        (maybe (return dH) (`openFile` mode) fn)         hClose         func --- decodeFile :: (BS.ByteString -> Either a BS.ByteString) -> Handle -> Handle -> IO ()-decodeFile :: (MonadIO m) => Conduit ByteString m ByteString -> Handle -> Handle -> m ()-decodeFile decFunc inF outF = sourceHandle inF $= decFunc $$ sinkHandle outF+decodeFile :: MonadIO m => ConduitM ByteString ByteString m () -> Handle -> Handle -> ConduitM a c m ()+decodeFile decFunc inF outF = sourceHandle inF .| decFunc .| sinkHandle outF
src/oenc.hs view
@@ -22,34 +22,33 @@ import Paths_omnicodec (version)  import Control.Exception+import Control.Monad.IO.Class import Data.ByteString as BS+import Data.Conduit+import Data.Conduit.Combinators (sinkHandle, sourceHandle) import Data.Maybe import Data.Version(showVersion) import System.Console.CmdArgs import System.IO-import Data.Conduit-import Data.Conduit.Binary-import Control.Monad.IO.Class -import qualified Data.Conduit.Codec.Base64 as B64-import qualified Data.Conduit.Codec.Base64Url as B64U+import qualified Data.Conduit.Codec.Base16 as B16 import qualified Data.Conduit.Codec.Base32 as B32 import qualified Data.Conduit.Codec.Base32Hex as B32H-import qualified Data.Conduit.Codec.Base16 as B16+import qualified Data.Conduit.Codec.Base64 as B64+import qualified Data.Conduit.Codec.Base64Url as B64U import qualified Data.Conduit.Codec.Base85 as B85 import qualified Data.Conduit.Codec.QuotedPrintable as QP import qualified Data.Conduit.Codec.Uu as Uu import qualified Data.Conduit.Codec.Xx as Xx --- {{{1 command line options ver :: String-ver = "omnicode encode (oenc) " ++ (showVersion version)+ver = "omnicode encode (oenc) " ++ showVersion version     ++ "\nCopyright 2012 Magnus Therning <magnus@therning.org>"  data Codec = B64 | B64U | B32 | B32H | B16 | B85 | QP | Uu | Xx     deriving(Show, Eq, Data, Typeable) -codecMap :: [(Codec, Conduit ByteString (ResourceT IO) ByteString)]+codecMap :: [(Codec, ConduitT ByteString ByteString IO ())] codecMap =     [ (B64, B64.encode)     , (B64U, B64U.encode)@@ -85,24 +84,23 @@         -- , " url  - url encoding"         ] --- {{{1 main main :: IO ()-main = do+main =     cmdArgs myArgs >>= \ a -> do-    let encFunc = lookup (argCodec a) codecMap-    withMaybeFile (argInput a) ReadMode $ \ inputFile ->+      let encFunc = lookup (argCodec a) codecMap+      withMaybeFile (argInput a) ReadMode $ \ inputFile ->         withMaybeFile (argOutput a) WriteMode $ \ outputFile ->-            runResourceT $ encodeFile (fromJust encFunc) inputFile outputFile+        runConduit $ encodeFile (fromJust encFunc) inputFile outputFile  withMaybeFile :: Maybe FilePath -> IOMode -> (Handle -> IO r) -> IO r withMaybeFile fn mode func = let         dH = if mode == ReadMode             then stdin             else stdout-    in bracket -        (maybe (return dH) (flip openFile mode) fn)+    in bracket+        (maybe (return dH) (`openFile` mode) fn)         hClose         func -encodeFile :: (MonadIO m) => Conduit ByteString m ByteString -> Handle -> Handle -> m ()-encodeFile encFunc inF outF = sourceHandle inF $= encFunc $$ sinkHandle outF+encodeFile :: MonadIO m => ConduitM ByteString ByteString m () -> Handle -> Handle -> ConduitM a c m ()+encodeFile encFunc inF outF = sourceHandle inF .| encFunc .| sinkHandle outF