packages feed

eventuo11y-batteries 0.3.0.3 → 0.4.0.0

raw patch · 3 files changed

+11/−4 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Observe.Event.Servant.Client: instance (Control.Monad.IO.Class.MonadIO (em r s), Observe.Event.MonadWithEvent em) => Servant.Client.Core.RunClient.RunClient (Observe.Event.Servant.Client.ClientM em r s)
+ Observe.Event.Servant.Client: instance (Control.Monad.IO.Class.MonadIO (em r s), Observe.Event.MonadWithEvent em) => Servant.Client.Core.RunClient.RunClient (Observe.Event.Servant.Client.ClientM em s r s)
- Observe.Event.Servant.Client: runClientM :: ClientM em r s a -> ClientEnv s -> em r s (Either ClientError a)
+ Observe.Event.Servant.Client: runClientM :: ClientM em s r s' a -> ClientEnv s -> em r s' (Either ClientError a)
- Observe.Event.Servant.Client: type ClientM em r s = TransEventMonad (ReaderT (ClientEnv s)) (TransEventMonad (ExceptT ClientError) em) r s
+ Observe.Event.Servant.Client: type ClientM em s = TransEventMonad (ReaderT (ClientEnv s)) (TransEventMonad (ExceptT ClientError) em)

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # Revision history for eventuo11y-batteries +## 0.4.0.0 -- 2023-01-17++- Fix `ClientM` to be usable as an `EventMonadKind`+ ## 0.3.0.2 -- 2023-01-17  - Bump upper bound for `eventuo11y`
eventuo11y-batteries.cabal view
@@ -1,6 +1,6 @@ cabal-version:      3.0 name:               eventuo11y-batteries-version:            0.3.0.3+version:            0.4.0.0 synopsis:           Grab bag of eventuo11y-enriched functionality description:   Miscellaneous helpers for instrumenting with [eventuo11y](https://hackage.haskell.org/package/eventuo11y) and 3rd-party packages.
src/Observe/Event/Servant/Client.hs view
@@ -63,7 +63,10 @@ import Servant.Client.Core.RunClient hiding (RunRequest)  -- | A monad to use in place of 'S.ClientM' to get instrumentation on requests.-type ClientM em r s = TransEventMonad (ReaderT (ClientEnv s)) (TransEventMonad (ExceptT ClientError) em) r s+--+-- Note that 'ClientM' is only 'RunClient' when the selector of the ambient 'EventBackend' is+-- @s@, see the instance under 'ClientEnv'.+type ClientM em s = TransEventMonad (ReaderT (ClientEnv s)) (TransEventMonad (ExceptT ClientError) em)  -- | An instrumented 'S.ClientEnv' data ClientEnv s = ClientEnv@@ -71,7 +74,7 @@     injectRunRequest :: !(InjectSelector RunRequest s)   } -instance (MonadIO (em r s), MonadWithEvent em) => RunClient (ClientM em r s) where+instance (MonadIO (em r s), MonadWithEvent em) => RunClient (ClientM em s r s) where   runRequestAcceptStatus stats req = do     e <- ask     injectRunRequest e RunRequest \runReq injField -> withEvent runReq \ev -> do@@ -82,7 +85,7 @@   throwClientError = throwError  -- | Instrumented version of 'S.runClientM'-runClientM :: ClientM em r s a -> ClientEnv s -> em r s (Either ClientError a)+runClientM :: ClientM em s r s' a -> ClientEnv s -> em r s' (Either ClientError a) runClientM = coerce  -- | Selector for events in 'ClientM'