summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Magnus Therning <magnus@therning.org>2013-08-06 11:00:52 +0200
committerGravatar Joey Hess <joeyh@joeyh.name>2015-05-07 18:07:05 -0400
commit6585821a3528b29a0e75b461d429eba54dae12b5 (patch)
tree343dfa082fa968d191b8e6cdf3659326674bfe4c
parent97d7d99f528fdfd4aa7297055964f778333187d6 (diff)
Replace dataenc with sandi.
The library dataenc is unmaintained and has been superseded by sandi. Signed-off-by: Magnus Therning <magnus@therning.org>
-rw-r--r--Utility/Base64.hs13
-rw-r--r--git-annex.cabal2
2 files changed, 7 insertions, 8 deletions
diff --git a/Utility/Base64.hs b/Utility/Base64.hs
index 80cc122a1..6ab3c984f 100644
--- a/Utility/Base64.hs
+++ b/Utility/Base64.hs
@@ -1,23 +1,22 @@
{- Simple Base64 encoding of Strings
-
- - Copyright 2011 Joey Hess <id@joeyh.name>
+ - Copyright 2011, 2015 Joey Hess <id@joeyh.name>
-
- License: BSD-2-clause
-}
module Utility.Base64 (toB64, fromB64Maybe, fromB64, prop_b64_roundtrips) where
-import qualified "dataenc" Codec.Binary.Base64 as B64
-import Control.Applicative
+import qualified "sandi" Codec.Binary.Base64 as B64
import Data.Maybe
-import qualified Data.ByteString.Lazy as L
-import Data.ByteString.Lazy.UTF8 (fromString, toString)
+import Data.ByteString.UTF8 (fromString, toString)
toB64 :: String -> String
-toB64 = B64.encode . L.unpack . fromString
+toB64 = toString . B64.encode . fromString
fromB64Maybe :: String -> Maybe String
-fromB64Maybe s = toString . L.pack <$> B64.decode s
+fromB64Maybe s = either (const Nothing) (Just . toString)
+ (B64.decode $ fromString s)
fromB64 :: String -> String
fromB64 = fromMaybe bad . fromB64Maybe
diff --git a/git-annex.cabal b/git-annex.cabal
index 1f32067b2..03331eb79 100644
--- a/git-annex.cabal
+++ b/git-annex.cabal
@@ -105,7 +105,7 @@ Executable git-annex
Main-Is: git-annex.hs
Build-Depends: MissingH, hslogger, directory, filepath,
containers (>= 0.5.0.0), utf8-string, mtl (>= 2),
- bytestring, old-locale, time, dataenc, process, json,
+ bytestring, old-locale, time, sandi, process, json,
base (>= 4.5 && < 4.9), monad-control, exceptions (>= 0.6), transformers,
IfElse, text, QuickCheck >= 2.1, bloomfilter, edit-distance,
SafeSemaphore, uuid, random, dlist, unix-compat, async, stm (>= 2.3),