packages feed

amazonka-core 0.3.0 → 0.3.1

raw patch · 4 files changed

+41/−32 lines, 4 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Network.AWS.Data: extractRoot :: Text -> [Node] -> Maybe Element
- Network.AWS.Data: class ToXML a where toXML = (: []) . NodeElement . toXMLRoot
+ Network.AWS.Data: class ToXML a where toXML = maybeToList . fmap NodeElement . toXMLRoot
- Network.AWS.Data: namespaced :: Text -> Text -> [Node] -> Element
+ Network.AWS.Data: namespaced :: Text -> Text -> [Node] -> Maybe Element
- Network.AWS.Data: toXMLRoot :: ToXMLRoot a => a -> Element
+ Network.AWS.Data: toXMLRoot :: ToXMLRoot a => a -> Maybe Element
- Network.AWS.Types: _Errors :: Prism' (ServiceError a_az0m) [ServiceError a_az0m]
+ Network.AWS.Types: _Errors :: Prism' (ServiceError a_az6f) [ServiceError a_az6f]
- Network.AWS.Types: _HttpError :: Prism' (ServiceError a_az0m) HttpException
+ Network.AWS.Types: _HttpError :: Prism' (ServiceError a_az6f) HttpException
- Network.AWS.Types: _SerializerError :: Prism' (ServiceError a_az0m) (Abbrev, String)
+ Network.AWS.Types: _SerializerError :: Prism' (ServiceError a_az6f) (Abbrev, String)
- Network.AWS.Types: _ServiceError :: Prism' (ServiceError a_az0m) (Abbrev, Status, a_az0m)
+ Network.AWS.Types: _ServiceError :: Prism' (ServiceError a_az6f) (Abbrev, Status, a_az6f)
- Network.AWS.Types: rqBody :: Lens (Request a_ayZN) (Request a_aA8j) RqBody RqBody
+ Network.AWS.Types: rqBody :: Lens (Request a_az5G) (Request a_aAec) RqBody RqBody
- Network.AWS.Types: rqHeaders :: Lens (Request a_ayZN) (Request a_aA8k) [Header] [Header]
+ Network.AWS.Types: rqHeaders :: Lens (Request a_az5G) (Request a_aAed) [Header] [Header]
- Network.AWS.Types: rqMethod :: Lens (Request a_ayZN) (Request a_aA8l) StdMethod StdMethod
+ Network.AWS.Types: rqMethod :: Lens (Request a_az5G) (Request a_aAee) StdMethod StdMethod
- Network.AWS.Types: rqPath :: Lens (Request a_ayZN) (Request a_aA8m) ByteString ByteString
+ Network.AWS.Types: rqPath :: Lens (Request a_az5G) (Request a_aAef) ByteString ByteString
- Network.AWS.Types: rqQuery :: Lens (Request a_ayZN) (Request a_aA8n) Query Query
+ Network.AWS.Types: rqQuery :: Lens (Request a_az5G) (Request a_aAeg) Query Query

Files

amazonka-core.cabal view
@@ -1,5 +1,5 @@ name:                  amazonka-core-version:               0.3.0+version:               0.3.1 synopsis:              Core functionality and data types for Amazonka libraries. homepage:              https://github.com/brendanhay/amazonka license:               OtherLicense
src/Network/AWS/Data/Internal/Text.hs view
@@ -59,11 +59,11 @@  instance FromText Text       where parser = AText.takeText instance FromText ByteString where parser = Text.encodeUtf8 <$> AText.takeText-instance FromText Int        where parser = AText.decimal-instance FromText Integer    where parser = AText.decimal-instance FromText Scientific where parser = AText.scientific+instance FromText Int        where parser = AText.signed AText.decimal+instance FromText Integer    where parser = AText.signed AText.decimal+instance FromText Scientific where parser = AText.signed AText.scientific instance FromText Natural    where parser = AText.decimal-instance FromText Double     where parser = AText.rational+instance FromText Double     where parser = AText.signed AText.rational  instance FromText Bool where     parser = matchCI "false" False <|> matchCI "true" True
src/Network/AWS/Data/Internal/XML.hs view
@@ -37,19 +37,20 @@     , element     , nodes     , (=@)+    , extractRoot     , unsafeToXML     ) where -import Control.Applicative-import Control.Monad-import Data.Default.Class-import Data.Maybe-import Data.Monoid-import Data.Text                            (Text)-import Network.AWS.Data.Internal.ByteString-import Network.AWS.Data.Internal.Text-import Numeric.Natural-import Text.XML+import           Control.Applicative+import           Control.Monad+import           Data.Default.Class+import           Data.Maybe+import           Data.Monoid+import           Data.Text                            (Text)+import           Network.AWS.Data.Internal.ByteString+import           Network.AWS.Data.Internal.Text+import           Numeric.Natural+import           Text.XML  decodeXML :: LazyByteString -> Either String [Node] decodeXML = either failure success . parseLBS def@@ -58,11 +59,11 @@     success = Right . elementNodes . documentRoot  encodeXML :: ToXMLRoot a => a -> LazyByteString-encodeXML x = renderLBS def d+encodeXML = maybe mempty (renderLBS def . d) . toXMLRoot   where-    d = Document+    d x = Document         { documentPrologue = p-        , documentRoot     = toXMLRoot x+        , documentRoot     = x         , documentEpilogue = []         } @@ -92,8 +93,8 @@ (.!@) :: Either String (Maybe a) -> a -> Either String a f .!@ x = fromMaybe x <$> f -namespaced :: Text -> Text -> [Node] -> Element-namespaced g l = element (Name l (Just g) Nothing)+namespaced :: Text -> Text -> [Node] -> Maybe Element+namespaced g l = Just . element (Name l (Just g) Nothing)  element :: Name -> [Node] -> Element element n = Element n mempty@@ -104,9 +105,18 @@ (=@) :: ToXML a => Name -> a -> Node n =@ x = NodeElement (element n (toXML x)) +extractRoot :: Text -> [Node] -> Maybe Element+extractRoot g ns =+    case ns of+        [NodeElement x] -> Just x { elementName = rename x }+        _               -> Nothing+  where+    rename x = (elementName x) { nameNamespace = Just g }+ -- | /Caution:/ This is for use with types which are 'flattened' in--- AWS service model terminology. It is applied by the generator/templating--- in safe contexts only.+-- AWS service model terminology.+--+-- It is applied by the generator/templating in safe contexts only. unsafeToXML :: (Show a, ToXML a) => a -> Node unsafeToXML x =     fromMaybe (error $ "Failed to unflatten node-list for: " ++ show x)@@ -169,13 +179,13 @@ instance FromXML Bool    where parseXML = parseXMLText "Bool"  class ToXMLRoot a where-    toXMLRoot :: a -> Element+    toXMLRoot :: a -> Maybe Element  class ToXML a where     toXML :: a -> [Node]      default toXML :: ToXMLRoot a => a -> [Node]-    toXML = (:[]) . NodeElement . toXMLRoot+    toXML = maybeToList . fmap NodeElement . toXMLRoot  instance ToXML a => ToXML (Maybe a) where     toXML (Just x) = toXML x
src/Network/AWS/Waiters.hs view
@@ -2,7 +2,6 @@ {-# LANGUAGE LambdaCase        #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RankNTypes        #-}-{-# LANGUAGE ViewPatterns      #-}  -- Module      : Network.AWS.Waiters -- Copyright   : (c) 2013-2015 Brendan Hay <brendan.g.hay@gmail.com>@@ -34,13 +33,13 @@     , module Control.Lens     ) where -import Control.Lens-import Data.ByteString    (ByteString)-import Data.Maybe-import Network.AWS.Data-import Network.AWS.Error-import Network.AWS.Types-import Network.HTTP.Types+import           Control.Lens+import           Data.ByteString    (ByteString)+import           Data.Maybe+import           Network.AWS.Data+import           Network.AWS.Error+import           Network.AWS.Types+import           Network.HTTP.Types  type Acceptor a = Request a -> Response' a -> Maybe Accept