git.iko.soy/typeable/mandrill
on master help sign in
avoid deprecated API
cfc5c7dAlfredo Di Napoli
src/Network/API/Mandrill/Types.hs+11−3
@@ -13,10 +13,11 @@ import Data.Char
13import Data.Maybe
13import Data.Maybe
14import Data.Time
14import Data.Time
15import Control.Applicative
15import Control.Applicative
16+import Data.Time (ParseTime)
16#if MIN_VERSION_time(1,5,0)
17#if MIN_VERSION_time(1,5,0)
17−import Data.Time.Format (defaultTimeLocale)
18+import Data.Time.Format (TimeLocale, defaultTimeLocale)
18#else
19#else
19−import System.Locale (defaultTimeLocale)
20+import System.Locale (TimeLocale, defaultTimeLocale)
20#endif
21#endif
21import qualified Data.ByteString as B
22import qualified Data.ByteString as B
22import qualified Data.ByteString.Base64 as Base64
23import qualified Data.ByteString.Base64 as Base64
@@ -32,6 +33,13 @@ import qualified Text.Blaze.Html as Blaze
32import qualified Text.Blaze.Html.Renderer.Text as Blaze
33import qualified Text.Blaze.Html.Renderer.Text as Blaze
33
34
34
35
36+timeParse :: ParseTime t => TimeLocale -> String -> String -> Maybe t
37+#if MIN_VERSION_time(1,5,0)
38+timeParse = parseTimeM True
39+#else
40+timeParse = parseTime
41+#endif
42+
35--------------------------------------------------------------------------------
43--------------------------------------------------------------------------------
36data MandrillError = MandrillError {
44data MandrillError = MandrillError {
37 _merr_status :: !T.Text
45 _merr_status :: !T.Text
@@ -334,6 +342,6 @@ instance ToJSON MandrillDate where
334
342
335instance FromJSON MandrillDate where
343instance FromJSON MandrillDate where
336 parseJSON = withText "MandrillDate" $ \t ->
344 parseJSON = withText "MandrillDate" $ \t ->
337− case parseTimeM True defaultTimeLocale "%Y-%m-%d %I:%M:%S%Q" (T.unpack t) of
345+ case timeParse defaultTimeLocale "%Y-%m-%d %I:%M:%S%Q" (T.unpack t) of
338 Just d -> pure $ MandrillDate d
346 Just d -> pure $ MandrillDate d
339 _ -> fail "could not parse Mandrill date"
347 _ -> fail "could not parse Mandrill date"