hs-aws-lambda 0.1.0.2 → 0.1.0.3
raw patch · 2 files changed
+137/−37 lines, 2 files
Files
- hs-aws-lambda.cabal +106/−4
- src/AWS/Lambda/RuntimeAPI/Types.hs +31/−33
hs-aws-lambda.cabal view
@@ -1,11 +1,11 @@ cabal-version: 2.0 --- This file has been generated from package.yaml by hpack version 0.34.3.+-- This file has been generated from package.yaml by hpack version 0.34.4. -- -- see: https://github.com/sol/hpack name: hs-aws-lambda-version: 0.1.0.2+version: 0.1.0.3 synopsis: A modern and easy-to-use wrapper for Docker-based Lambda implementations description: Please see the README on GitHub at <https://github.com/RobertFischer/hs-aws-lambda#readme> category: AWS@@ -35,7 +35,58 @@ Paths_hs_aws_lambda hs-source-dirs: src- default-extensions: BangPatterns BinaryLiterals CPP ConstraintKinds DataKinds DefaultSignatures DeriveAnyClass DeriveDataTypeable DeriveFoldable DeriveFunctor DeriveGeneric DeriveLift DeriveTraversable DoAndIfThenElse EmptyDataDecls ExistentialQuantification ExtendedDefaultRules FlexibleContexts FlexibleInstances ForeignFunctionInterface FunctionalDependencies GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MagicHash MultiParamTypeClasses MultiWayIf NamedFieldPuns OverloadedLists OverloadedStrings PackageImports PartialTypeSignatures PatternGuards PolyKinds QuasiQuotes RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving StaticPointers TemplateHaskell TupleSections TypeFamilies TypeOperators TypeSynonymInstances UnboxedTuples UnliftedFFITypes ViewPatterns TypeFamilyDependencies+ default-extensions:+ BangPatterns+ BinaryLiterals+ CPP+ ConstraintKinds+ DataKinds+ DefaultSignatures+ DeriveAnyClass+ DeriveDataTypeable+ DeriveFoldable+ DeriveFunctor+ DeriveGeneric+ DeriveLift+ DeriveTraversable+ DoAndIfThenElse+ EmptyDataDecls+ ExistentialQuantification+ ExtendedDefaultRules+ FlexibleContexts+ FlexibleInstances+ ForeignFunctionInterface+ FunctionalDependencies+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ KindSignatures+ LambdaCase+ MagicHash+ MultiParamTypeClasses+ MultiWayIf+ NamedFieldPuns+ OverloadedLists+ OverloadedStrings+ PackageImports+ PartialTypeSignatures+ PatternGuards+ PolyKinds+ QuasiQuotes+ RankNTypes+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ StaticPointers+ TemplateHaskell+ TupleSections+ TypeFamilies+ TypeOperators+ TypeSynonymInstances+ UnboxedTuples+ UnliftedFFITypes+ ViewPatterns+ TypeFamilyDependencies ghc-options: -Wall -Wincomplete-record-updates -Wincomplete-uni-patterns -fprint-expanded-synonyms -fprint-explicit-coercions -fprint-equality-relations -fprint-typechecker-elaboration -freverse-errors -funclutter-valid-hole-fits -fhelpful-errors -fshow-warning-groups -fPIC -fno-warn-tabs -fno-warn-type-defaults -Werror=compat -Werror=partial-fields -Werror=missing-fields -Werror=incomplete-patterns -Werror=overlapping-patterns -Werror=redundant-constraints -Werror=missing-methods -feager-blackholing -fexcess-precision -flate-dmd-anal -fmax-inline-alloc-size=1024 -fmax-simplifier-iterations=16 -fsimplifier-phases=8 -fspec-constr-keen -fspec-constr-count=12 -fspecialise-aggressively -flate-specialise -fstatic-argument-transformation build-depends: aeson@@ -58,7 +109,58 @@ Paths_hs_aws_lambda hs-source-dirs: test- default-extensions: BangPatterns BinaryLiterals CPP ConstraintKinds DataKinds DefaultSignatures DeriveAnyClass DeriveDataTypeable DeriveFoldable DeriveFunctor DeriveGeneric DeriveLift DeriveTraversable DoAndIfThenElse EmptyDataDecls ExistentialQuantification ExtendedDefaultRules FlexibleContexts FlexibleInstances ForeignFunctionInterface FunctionalDependencies GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MagicHash MultiParamTypeClasses MultiWayIf NamedFieldPuns OverloadedLists OverloadedStrings PackageImports PartialTypeSignatures PatternGuards PolyKinds QuasiQuotes RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving StaticPointers TemplateHaskell TupleSections TypeFamilies TypeOperators TypeSynonymInstances UnboxedTuples UnliftedFFITypes ViewPatterns TypeFamilyDependencies+ default-extensions:+ BangPatterns+ BinaryLiterals+ CPP+ ConstraintKinds+ DataKinds+ DefaultSignatures+ DeriveAnyClass+ DeriveDataTypeable+ DeriveFoldable+ DeriveFunctor+ DeriveGeneric+ DeriveLift+ DeriveTraversable+ DoAndIfThenElse+ EmptyDataDecls+ ExistentialQuantification+ ExtendedDefaultRules+ FlexibleContexts+ FlexibleInstances+ ForeignFunctionInterface+ FunctionalDependencies+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ KindSignatures+ LambdaCase+ MagicHash+ MultiParamTypeClasses+ MultiWayIf+ NamedFieldPuns+ OverloadedLists+ OverloadedStrings+ PackageImports+ PartialTypeSignatures+ PatternGuards+ PolyKinds+ QuasiQuotes+ RankNTypes+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ StaticPointers+ TemplateHaskell+ TupleSections+ TypeFamilies+ TypeOperators+ TypeSynonymInstances+ UnboxedTuples+ UnliftedFFITypes+ ViewPatterns+ TypeFamilyDependencies ghc-options: -Wall -Wincomplete-record-updates -Wincomplete-uni-patterns -fprint-expanded-synonyms -fprint-explicit-coercions -fprint-equality-relations -fprint-typechecker-elaboration -freverse-errors -funclutter-valid-hole-fits -fhelpful-errors -fshow-warning-groups -fPIC -fno-warn-tabs -fno-warn-type-defaults -Werror=compat -Werror=partial-fields -Werror=missing-fields -Werror=incomplete-patterns -Werror=overlapping-patterns -Werror=redundant-constraints -Werror=missing-methods -threaded -rtsopts -with-rtsopts=-N build-depends: base >=4.7 && <5
src/AWS/Lambda/RuntimeAPI/Types.hs view
@@ -3,31 +3,25 @@ , LambdaResult(..) , LambdaExecutionContext(..) , MobileInvocationMetadata(..)- , Text- , module Control.DeepSeq- , module Control.Exception.Safe- , module Control.Monad- , module Data.Aeson- , module Data.Function- , module Data.String- , module Data.Typeable- , module Data.Word- , module GHC.Generics+ , ErrorType+ , ErrorMessage+ , ErrorInfo ) where -import Control.Exception.Safe (throw, MonadThrow)-import Control.Monad ( void, forever )-import Data.Aeson (ToJSON, FromJSON, Options, FromJSON1, ToJSON1)-import Data.Function ( (&) )-import Data.String ( fromString, IsString(..) )-import Data.Text (Text)-import Data.Typeable (typeOf)-import Data.Word (Word64)-import GHC.Generics-import Control.DeepSeq ( NFData, NFData1 )-import qualified Data.Aeson as JSON-import qualified Data.Char as Char-import qualified Network.HTTP.Client as HTTP+import Control.DeepSeq (NFData, NFData1)+import Control.Exception.Safe (MonadThrow, throw)+import Control.Monad (forever, void)+import Data.Aeson (FromJSON, FromJSON1, Options, ToJSON,+ ToJSON1)+import qualified Data.Aeson as JSON+import qualified Data.Char as Char+import Data.Function ((&))+import Data.String (IsString (..), fromString)+import Data.Text (Text)+import Data.Typeable (typeOf)+import Data.Word (Word64)+import GHC.Generics+import qualified Network.HTTP.Client as HTTP -- | Our implementation of how to map the field names to JSON labels modifyFieldLabel :: String -> String@@ -53,8 +47,8 @@ -- -- (Pull requests very welcome.) data MobileInvocationMetadata = MobileInvocationMetadata- { mimClientContext :: Text -- ^ the client's execution context- , mimCognitoIdentity :: Text -- ^ the client's identity+ { mimClientContext :: Text -- ^ the client's execution context+ , mimCognitoIdentity :: Text-- ^ the client's identity } deriving (Show, Eq, Generic, NFData) instance ToJSON MobileInvocationMetadata where@@ -66,12 +60,14 @@ -- | Represents the data provided to an invocation of the lambda data LambdaInvocation payload = LambdaInvocation- { liAwsRequestId :: Text -- ^ The unique ID for this request- , liDeadlineMs :: Word64 -- ^ The timetsamp of the deadline in Unix time- , liInvokedFunctionArn :: Text -- ^ This function's ARN- , liTraceId :: Text -- ^ The details about this AWS X-Ray trace- , liMobileMetadata :: Maybe MobileInvocationMetadata -- ^ The mobile data if the Lambda was called from the AWS Mobile SDK- , liPayload :: payload -- ^ The input to the Lambda+ { liAwsRequestId :: Text -- ^ The unique ID for this request+ , liDeadlineMs :: Word 64 -- ^ The timetsamp of the deadline in Unix time+ , liInvokedFunctionArn :: Text-- ^ This function's ARN+ , liTraceId :: Text -- ^ The details about this AWS X-Ray trace+ , liMobileMetadata+ :: Maybe MobileInvocationMetadata -- ^ The mobile data if the Lambda was called from the AWS Mobile SDK+ , liPayload+ :: payload -- ^ The input to the Lambda } deriving (Show, Eq, Generic, ToJSON, FromJSON, Generic1, ToJSON1, FromJSON1) instance (NFData payload) => NFData (LambdaInvocation payload)@@ -92,7 +88,9 @@ instance NFData1 LambdaResult data LambdaExecutionContext a m b = LambdaExecutionContext- { lecApiPrefix :: String+ { lecApiPrefix+ :: String , lecHttpManager :: HTTP.Manager- , lecHandler :: LambdaInvocation a -> m (LambdaResult b)+ , lecHandler+ :: LambdaInvocation a -> m (LambdaResult b) }