packages feed

hw-polysemy 0.2.14.0 → 0.2.14.1

raw patch · 2 files changed

+33/−4 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

amazonka/HaskellWorks/Polysemy/Amazonka.hs view
@@ -2,6 +2,8 @@ {-# LANGUAGE GADTs            #-} {-# LANGUAGE TypeApplications #-} +{- HLINT ignore "Use let" -}+ module HaskellWorks.Polysemy.Amazonka   ( AwsLogEntry(..),     runReaderAwsEnvDiscover,@@ -26,6 +28,7 @@ import qualified Data.Text.Lazy                                    as LT import qualified Data.Text.Lazy.Encoding                           as LT import           HaskellWorks.Polysemy.Control.Concurrent.STM.TVar+import           HaskellWorks.Polysemy.System.Environment import           HaskellWorks.Prelude import           Polysemy import           Polysemy.Error@@ -35,6 +38,9 @@ import           Polysemy.Reader import           Polysemy.Resource import qualified System.IO                                         as IO+import qualified Data.Text as T+import qualified Data.Text.Encoding as T+import Text.Read  data AwsLogEntry = AwsLogEntry   { logLevel :: AWS.LogLevel@@ -42,14 +48,37 @@   }   deriving (Generic, Show, Typeable) +maybeSetEndpoint :: ()+  => Maybe (String, String)+  -> (AWS.Service -> AWS.Service)+  -> AWS.Service+  -> AWS.Service+maybeSetEndpoint = \case+  Just (host, portString) ->+    case readMaybe portString of+      Just port -> (. AWS.setEndpoint False (T.encodeUtf8 (T.pack host)) port)+      Nothing -> id+  Nothing           -> id+ runReaderAwsEnvDiscover :: ()   => Member (Embed IO) r   => Sem (Reader AWS.Env : r) a   -> Sem r a runReaderAwsEnvDiscover f = do   logger' <- embed $ AWS.newLogger AWS.Debug IO.stdout++  mLocalStackHost <- lookupEnv "AWS_LOCALSTACK_HOST"+  mLocalStackPort <- lookupEnv "AWS_LOCALSTACK_PORT"+  mLocalStackEndpoint <- pure $ (,)+    <$> mLocalStackHost+    <*> mLocalStackPort+   discoveredAwsEnv <- embed $ AWS.newEnv AWS.discover-  let awsEnv = discoveredAwsEnv { AWS.logger = logger' }++  awsEnv <- pure $ discoveredAwsEnv+    & the @"logger" .~ logger'+    & the @"overrides" %~ maybeSetEndpoint mLocalStackEndpoint+   runReader awsEnv f  sendAws :: ()
hw-polysemy.cabal view
@@ -1,6 +1,6 @@ cabal-version:          3.4 name:                   hw-polysemy-version:                0.2.14.0+version:                0.2.14.1 synopsis:               Opinionated polysemy library description:            Opinionated polysemy library. license:                Apache-2.0@@ -39,9 +39,9 @@ common lens                       { build-depends: lens                                        < 5.4    } common mtl                        { build-depends: mtl                                         < 5.4    } common polysemy                   { build-depends: polysemy                                    < 2      }-common polysemy-log               { build-depends: polysemy-log                                < 0.11   }+common polysemy-log               { build-depends: polysemy-log               >= 0.11       && < 1      } common polysemy-plugin            { build-depends: polysemy-plugin                             < 0.5    }-common polysemy-time              { build-depends: polysemy-time                               < 0.7    }+common polysemy-time              { build-depends: polysemy-time                               < 1      } common prettyprinter              { build-depends: prettyprinter                               < 1.8    } common process                    { build-depends: process                                     < 1.7    } common resourcet                  { build-depends: resourcet                                   < 1.4    }