diff --git a/nri-env-parser/nri-env-parser.cabal b/nri-env-parser/nri-env-parser.cabal index c7b0be94..7f11f793 100644 --- a/nri-env-parser/nri-env-parser.cabal +++ b/nri-env-parser/nri-env-parser.cabal @@ -53,7 +53,7 @@ library base >=4.18 && <4.22 , modern-uri >=0.3.1.0 && <0.4 , network-uri >=2.6.2.0 && <2.8 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , text >=1.2.3.1 && <2.2 default-language: Haskell2010 @@ -86,6 +86,6 @@ test-suite tests base >=4.18 && <4.22 , modern-uri >=0.3.1.0 && <0.4 , network-uri >=2.6.2.0 && <2.8 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , text >=1.2.3.1 && <2.2 default-language: Haskell2010 diff --git a/nri-env-parser/package.yaml b/nri-env-parser/package.yaml index ad7e094c..a6d13416 100644 --- a/nri-env-parser/package.yaml +++ b/nri-env-parser/package.yaml @@ -16,7 +16,7 @@ extra-doc-files: library: dependencies: &dependencies - base >= 4.18 && < 4.22 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - modern-uri >= 0.3.1.0 && < 0.4 - network-uri >= 2.6.2.0 && < 2.8 - text >= 1.2.3.1 && < 2.2 diff --git a/nri-http/nri-http.cabal b/nri-http/nri-http.cabal index 3dd910d9..a828cf46 100644 --- a/nri-http/nri-http.cabal +++ b/nri-http/nri-http.cabal @@ -65,7 +65,7 @@ library , mime-types >=0.1.0.0 && <0.2 , network-uri >=2.6.0.0 && <2.8 , nri-observability >=0.1.0.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , text >=1.2.3.1 && <2.2 default-language: Haskell2010 @@ -111,7 +111,7 @@ test-suite spec , mime-types >=0.1.0.0 && <0.2 , network-uri >=2.6.0.0 && <2.8 , nri-observability >=0.1.0.0 && <0.4 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , text >=1.2.3.1 && <2.2 , wai >=3.2.0 && <3.3 diff --git a/nri-http/package.yaml b/nri-http/package.yaml index 28d8708d..64eb437f 100644 --- a/nri-http/package.yaml +++ b/nri-http/package.yaml @@ -17,7 +17,7 @@ library: - aeson >= 2.0 && < 2.3 - base >= 4.18 && < 4.22 - bytestring >= 0.10.8.2 && < 0.13 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - nri-observability >= 0.1.0.0 && < 0.5 - conduit >= 1.3.0 && < 1.4 - case-insensitive >= 1.1 && < 2.0 @@ -38,7 +38,7 @@ tests: - aeson >= 2.0 && < 2.3 - base >= 4.18 && < 4.22 - bytestring >= 0.10.8.2 && < 0.13 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - nri-observability >= 0.1.0.0 && < 0.4 - conduit >= 1.3.0 && < 1.4 - case-insensitive >= 1.1 && < 2.0 diff --git a/nri-http/test/Main.hs b/nri-http/test/Main.hs index 4855aba4..47e03eb5 100644 --- a/nri-http/test/Main.hs +++ b/nri-http/test/Main.hs @@ -233,6 +233,7 @@ spanForTask task = do Expect.fromIO <| do Platform.rootTracingSpanIO "test-request" + Platform.silentTrack (MVar.putMVar spanVar) "test-root" (\log -> Task.attempt log task) diff --git a/nri-kafka/nri-kafka.cabal b/nri-kafka/nri-kafka.cabal index 97899901..d59de942 100644 --- a/nri-kafka/nri-kafka.cabal +++ b/nri-kafka/nri-kafka.cabal @@ -76,7 +76,7 @@ library , hw-kafka-client >=4.0.3 && <5.0 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.1.1 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 , text >=1.2.3.1 && <2.2 @@ -121,7 +121,7 @@ executable pause-resume-bug-consumer , nri-env-parser >=0.1.0.0 && <0.5 , nri-kafka , nri-observability >=0.1.1.1 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 , text >=1.2.3.1 && <2.2 @@ -170,7 +170,7 @@ executable pause-resume-bug-producer , nri-env-parser >=0.1.0.0 && <0.5 , nri-kafka , nri-observability >=0.1.1.1 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 , text >=1.2.3.1 && <2.2 @@ -233,7 +233,7 @@ test-suite tests , hw-kafka-client >=4.0.3 && <5.0 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.1.1 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 , text >=1.2.3.1 && <2.2 diff --git a/nri-kafka/package.yaml b/nri-kafka/package.yaml index 639a9ac0..b298504f 100644 --- a/nri-kafka/package.yaml +++ b/nri-kafka/package.yaml @@ -23,7 +23,7 @@ dependencies: - hw-kafka-client >=4.0.3 && < 5.0 - nri-env-parser >= 0.1.0.0 && < 0.5 - nri-observability >= 0.1.1.1 && < 0.5 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - safe-exceptions >= 0.1.7.0 && < 1.3 - stm >= 2.4 && < 2.6 - text >= 1.2.3.1 && < 2.2 diff --git a/nri-kafka/src/Kafka/Worker/Internal.hs b/nri-kafka/src/Kafka/Worker/Internal.hs index b6d0ff40..5fee1a12 100644 --- a/nri-kafka/src/Kafka/Worker/Internal.hs +++ b/nri-kafka/src/Kafka/Worker/Internal.hs @@ -456,6 +456,7 @@ cleanUp observabilityHandler rebalanceInfo stopping maybeException consumer = do -- at some point, k8s should report system crashes. In the mean time, we'll do it. Platform.rootTracingSpanIO requestId + Platform.silentTrack (Observability.report observabilityHandler requestId) "Kafka consumer shutting down" <| \log -> do diff --git a/nri-kafka/src/Kafka/Worker/Partition.hs b/nri-kafka/src/Kafka/Worker/Partition.hs index 206c4353..9a3d3130 100644 --- a/nri-kafka/src/Kafka/Worker/Partition.hs +++ b/nri-kafka/src/Kafka/Worker/Partition.hs @@ -248,6 +248,7 @@ processMsgLoop skipOrNot messageFormat commitOffsets observabilityHandler state (RequestId requestId, details) <- getTracingDetails (analytics state) processAttempts record Platform.rootTracingSpanIO requestId + Platform.silentTrack (Observability.report observabilityHandler requestId) "Assigned Kafka message" ( \log -> do diff --git a/nri-log-explorer/nri-log-explorer.cabal b/nri-log-explorer/nri-log-explorer.cabal index 68dc3402..99ab547b 100644 --- a/nri-log-explorer/nri-log-explorer.cabal +++ b/nri-log-explorer/nri-log-explorer.cabal @@ -59,7 +59,7 @@ executable log-explorer , fuzzy >=0.1.0.0 && <0.2 , io-streams >=1.5.0.0 && <1.6 , microlens >=0.4.11.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , pcre-light >=0.4.1.0 && <0.4.2 , process >=1.6.0.0 && <1.7 , safe-exceptions >=0.1.7.0 && <1.3 diff --git a/nri-log-explorer/package.yaml b/nri-log-explorer/package.yaml index a543821a..ad88fc83 100644 --- a/nri-log-explorer/package.yaml +++ b/nri-log-explorer/package.yaml @@ -28,7 +28,7 @@ executables: - pcre-light >= 0.4.1.0 && < 0.4.2 - unordered-containers >= 0.2.0.0 && < 0.3 - microlens >= 0.4.11.0 && < 0.5 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - process >= 1.6.0.0 && < 1.7 - safe-exceptions >= 0.1.7.0 && < 1.3 - text >= 1.2.3.1 && < 2.2 diff --git a/nri-observability/nri-observability.cabal b/nri-observability/nri-observability.cabal index 57647282..a9fc96dd 100644 --- a/nri-observability/nri-observability.cabal +++ b/nri-observability/nri-observability.cabal @@ -77,7 +77,7 @@ library , http-client >=0.6.0 && <0.8 , http-client-tls >=0.3.0 && <0.4 , nri-env-parser >=0.1.0.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , random >=1.1 && <1.3 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 @@ -123,7 +123,7 @@ executable memory-leak-test , http-client-tls >=0.3.0 && <0.4 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , random >=1.1 && <1.3 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 @@ -194,7 +194,7 @@ test-suite tests , http-client >=0.6.0 && <0.8 , http-client-tls >=0.3.0 && <0.4 , nri-env-parser >=0.1.0.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , random >=1.1 && <1.3 , safe-exceptions >=0.1.7.0 && <1.3 , stm >=2.4 && <2.6 diff --git a/nri-observability/package.yaml b/nri-observability/package.yaml index b5e329be..04e2daff 100644 --- a/nri-observability/package.yaml +++ b/nri-observability/package.yaml @@ -26,7 +26,7 @@ dependencies: - http-client-tls >= 0.3.0 && < 0.4 - hostname >= 1.0 && < 1.1 - nri-env-parser >= 0.1.0.0 && < 0.5 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - random >= 1.1 && < 1.3 - unordered-containers >= 0.2.0.0 && < 0.3 - safe-exceptions >= 0.1.7.0 && < 1.3 diff --git a/nri-observability/scripts/memory-leak-test/Main.hs b/nri-observability/scripts/memory-leak-test/Main.hs index ead5c1ad..91d201d0 100644 --- a/nri-observability/scripts/memory-leak-test/Main.hs +++ b/nri-observability/scripts/memory-leak-test/Main.hs @@ -35,6 +35,7 @@ runRequests handler = ( \requestId -> do Platform.rootTracingSpanIO requestId + Platform.silentTrack (handler.report requestId) ("Running task" ++ requestId) ( \log -> do diff --git a/nri-postgresql/nri-postgresql.cabal b/nri-postgresql/nri-postgresql.cabal index 30dd14b8..1edca8dd 100644 --- a/nri-postgresql/nri-postgresql.cabal +++ b/nri-postgresql/nri-postgresql.cabal @@ -68,7 +68,7 @@ library , network >=3.1.0.0 && <3.3 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.0.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , postgresql-typed ==0.6.* , resource-pool >=0.2.0.0 && <0.5 , resourcet >=1.2.0 && <1.4 @@ -126,7 +126,7 @@ test-suite tests , network >=3.1.0.0 && <3.3 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.0.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , postgresql-typed ==0.6.* , resource-pool >=0.2.0.0 && <0.5 , resourcet >=1.2.0 && <1.4 diff --git a/nri-postgresql/package.yaml b/nri-postgresql/package.yaml index a29614a3..e8ec7c95 100644 --- a/nri-postgresql/package.yaml +++ b/nri-postgresql/package.yaml @@ -23,7 +23,7 @@ dependencies: - network >= 3.1.0.0 && < 3.3 - nri-env-parser >= 0.1.0.0 && < 0.5 - nri-observability >= 0.1.0.0 && < 0.5 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - postgresql-typed >= 0.6 && < 0.7 - resource-pool >= 0.2.0.0 && < 0.5 - resourcet >= 1.2.0 && < 1.4 diff --git a/nri-postgresql/test/ObservabilitySpec.hs b/nri-postgresql/test/ObservabilitySpec.hs index 00cc2881..ee96a301 100644 --- a/nri-postgresql/test/ObservabilitySpec.hs +++ b/nri-postgresql/test/ObservabilitySpec.hs @@ -53,6 +53,7 @@ spanForTask task = res <- Platform.rootTracingSpanIO "test-request" + Platform.silentTrack (MVar.putMVar spanVar) "test-root" (\log -> Task.attempt log task) diff --git a/nri-prelude/CHANGELOG.md b/nri-prelude/CHANGELOG.md index 5d688acd..badea395 100644 --- a/nri-prelude/CHANGELOG.md +++ b/nri-prelude/CHANGELOG.md @@ -1,3 +1,10 @@ +# 0.7.0.0 + +- **Breaking:** `Platform.rootTracingSpanIO` and the internal `mkHandler` now take an additional `Aeson.Value -> IO ()` callback for analytics event delivery. Existing callers should pass `Platform.silentTrack` to preserve previous behavior. +- New: `Platform.Analytics.Internal.trackEvent`. The `.Internal` suffix is intentional — wrap it in your own typed `track` API. This module is NOT re-exported from `Platform`. +- New: `Platform.silentTrack` (a no-op `Aeson.Value -> IO ()`). +- New: `LogHandler.trackAnalyticsEventIO` field. `nullHandler` defaults this to `silentTrack`. + # Unreleased - Drop support for GHC 8.10.7, GHC 9.2.x, GHC 9.4.x, `aeson-1.x` diff --git a/nri-prelude/nri-prelude.cabal b/nri-prelude/nri-prelude.cabal index 3ccd3026..73276f4e 100644 --- a/nri-prelude/nri-prelude.cabal +++ b/nri-prelude/nri-prelude.cabal @@ -5,7 +5,7 @@ cabal-version: 1.18 -- see: https://github.com/sol/hpack name: nri-prelude -version: 0.6.1.2 +version: 0.7.0.0 synopsis: A Prelude inspired by the Elm programming language description: Please see the README at . category: Web @@ -45,6 +45,7 @@ library NriPrelude NriPrelude.Plugin Platform + Platform.Analytics.Internal Process Result Set @@ -146,6 +147,7 @@ test-suite tests NriPrelude.Plugin NriPrelude.Plugin.GhcVersionDependent Platform + Platform.Analytics.Internal Platform.DevLog Platform.DoAnything Platform.Internal diff --git a/nri-prelude/package.yaml b/nri-prelude/package.yaml index f3d28375..cd21b863 100644 --- a/nri-prelude/package.yaml +++ b/nri-prelude/package.yaml @@ -3,7 +3,7 @@ synopsis: A Prelude inspired by the Elm programming language description: Please see the README at . homepage: https://github.com/NoRedInk/haskell-libraries/tree/trunk/nri-prelude#readme author: NoRedInk -version: 0.6.1.2 +version: 0.7.0.0 maintainer: haskell-open-source@noredink.com copyright: 2024 NoRedInk Corp. github: NoRedInk/haskell-libraries/nri-prelude @@ -57,6 +57,7 @@ library: - NriPrelude - NriPrelude.Plugin - Platform + - Platform.Analytics.Internal - Process - Result - Set diff --git a/nri-prelude/src/Platform.hs b/nri-prelude/src/Platform.hs index 9da52d00..d3caf61f 100644 --- a/nri-prelude/src/Platform.hs +++ b/nri-prelude/src/Platform.hs @@ -13,6 +13,7 @@ module Platform logHandler, requestId, silentHandler, + Internal.silentTrack, -- * Creating custom tracingSpans in libraries Internal.tracingSpan, diff --git a/nri-prelude/src/Platform/Analytics/Internal.hs b/nri-prelude/src/Platform/Analytics/Internal.hs new file mode 100644 index 00000000..46b32a28 --- /dev/null +++ b/nri-prelude/src/Platform/Analytics/Internal.hs @@ -0,0 +1,44 @@ +{-# LANGUAGE FlexibleInstances #-} + +-- | Internal entry point for emitting analytics events from `Task` code. +-- +-- This module is intentionally `.Internal`. It is NOT re-exported from +-- the prelude's public `Platform` module. Higher layers (NoRedInk's +-- `Analytics.track`) wrap this and own the user-facing API; downstream +-- code that imports `Platform.Analytics.Internal` directly is bypassing +-- the closed event dictionary and should be flagged in review. +module Platform.Analytics.Internal + ( trackEvent, + AnalyticsEventDetails, + ) +where + +import qualified Data.Aeson as Aeson +import NriPrelude +import qualified Platform +import qualified Platform.Internal as Internal +import Task (Task) +import qualified Prelude + +-- | Send an analytics event. Opens a child tracing span named +-- @analytics.track@, attaches the JSON payload as the span's details, +-- and synchronously invokes the `LogHandler`'s analytics callback. +trackEvent :: (Aeson.ToJSON e) => e -> Task err () +trackEvent event = + let value = Aeson.toJSON event + in Platform.tracingSpan "analytics.track" <| do + Platform.setTracingSpanDetails (AnalyticsEventDetails value) + Internal.Task + ( \handler -> do + Internal.trackAnalyticsEventIO handler value + Prelude.pure (Ok ()) + ) + +-- | A `TracingSpanDetails` wrapper around the analytics event payload, so +-- that the JSON we send to the analytics backend is also attached to the +-- @analytics.track@ span and visible in the existing observability +-- reporters. +newtype AnalyticsEventDetails = AnalyticsEventDetails Aeson.Value + deriving (Aeson.ToJSON) + +instance Internal.TracingSpanDetails AnalyticsEventDetails diff --git a/nri-prelude/src/Platform/Internal.hs b/nri-prelude/src/Platform/Internal.hs index d39554b7..213bd5dc 100644 --- a/nri-prelude/src/Platform/Internal.hs +++ b/nri-prelude/src/Platform/Internal.hs @@ -573,9 +573,20 @@ data LogHandler = LogHandler -- platform(s) are used. Once we're done collecting data for child -- tracingSpans we'll want to add the "completed" child tracingSpan to -- its parent. - finishTracingSpan :: Maybe Exception.SomeException -> IO () + finishTracingSpan :: Maybe Exception.SomeException -> IO (), + -- | Deliver an analytics event payload to the configured analytics + -- backend. The prelude knows nothing about the backend; it only + -- threads this opaque callback from `rootTracingSpanIO` through + -- every child `LogHandler`. See `Platform.Analytics.Internal.trackEvent` + -- for the user-facing wrapper. Default: `silentTrack`. + trackAnalyticsEventIO :: Aeson.Value -> IO () } +-- | A no-op analytics callback. Used as the default for `nullHandler` +-- and for platforms that have not opted in to analytics tracking yet. +silentTrack :: Aeson.Value -> IO () +silentTrack _ = pure () + -- | Helper that creates one of the handler's above. This is intended for -- internal use in this library only and not for exposing. Outside of this -- library the @rootTracingSpanIO@ is the more user-friendly way to get hands @@ -584,13 +595,15 @@ mkHandler :: (Stack.HasCallStack) => Text -> Clock -> + -- | Analytics callback, propagated to every descendant `LogHandler`. + (Aeson.Value -> IO ()) -> -- Finalizer for this loghandler (TracingSpan -> IO ()) -> -- Root finalizer Maybe (TracingSpan -> IO ()) -> Text -> IO LogHandler -mkHandler requestId clock onFinish onFinishRoot' name' = do +mkHandler requestId clock trackEventIO onFinish onFinishRoot' name' = do let onFinishRoot = Maybe.withDefault onFinish onFinishRoot' tracingSpanRef <- Stack.withFrozenCallStack startTracingSpan clock name' @@ -599,8 +612,8 @@ mkHandler requestId clock onFinish onFinishRoot' name' = do pure LogHandler { requestId, - startChildTracingSpan = mkHandler requestId clock (appendTracingSpanToParent tracingSpanRef) (Just onFinishRoot), - startNewRoot = mkHandler requestId clock onFinishRoot Nothing, + startChildTracingSpan = mkHandler requestId clock trackEventIO (appendTracingSpanToParent tracingSpanRef) (Just onFinishRoot), + startNewRoot = mkHandler requestId clock trackEventIO onFinishRoot Nothing, setTracingSpanDetailsIO = \details' -> updateIORef tracingSpanRef @@ -613,7 +626,8 @@ mkHandler requestId clock onFinish onFinishRoot' name' = do updateIORef tracingSpanRef (\tracingSpan' -> tracingSpan' {succeeded = succeeded tracingSpan' ++ Failed, containsFailures = True}), - finishTracingSpan = finalizeTracingSpan clock allocationCounterStartVal tracingSpanRef >> andThen onFinish + finishTracingSpan = finalizeTracingSpan clock allocationCounterStartVal tracingSpanRef >> andThen onFinish, + trackAnalyticsEventIO = trackEventIO } -- | Helper that creates a handler that does nothing. This is intended to power @@ -632,7 +646,8 @@ nullHandler = do setTracingSpanDetailsIO = \_ -> pure (), setTracingSpanSummaryIO = \_ -> pure (), markTracingSpanFailedIO = pure (), - finishTracingSpan = \_ -> pure () + finishTracingSpan = \_ -> pure (), + trackAnalyticsEventIO = silentTrack } -- | Set the details for a tracingSpan created using the @tracingSpan@ @@ -842,14 +857,22 @@ newRootIO handler name run = do -- Instead of taking a parent handler it takes a continuation that will be -- called with this root tracingSpan after it has run. -- --- > rootTracingSpanIO "request-23" Prelude.print "incoming request" <| \handler -> +-- > rootTracingSpanIO "request-23" silentTrack Prelude.print "incoming request" <| \handler -> -- > handleRequest -- > |> Task.perform handler -rootTracingSpanIO :: (Stack.HasCallStack) => Text -> (TracingSpan -> IO ()) -> Text -> (LogHandler -> IO a) -> IO a -rootTracingSpanIO requestId onFinish name runIO = do +rootTracingSpanIO :: + (Stack.HasCallStack) => + Text -> + -- | Analytics callback. Pass `silentTrack` for platforms that don't track. + (Aeson.Value -> IO ()) -> + (TracingSpan -> IO ()) -> + Text -> + (LogHandler -> IO a) -> + IO a +rootTracingSpanIO requestId trackEventIO onFinish name runIO = do clock' <- mkClock Exception.bracketWithError - (Stack.withFrozenCallStack mkHandler requestId clock' onFinish Nothing name) + (Stack.withFrozenCallStack mkHandler requestId clock' trackEventIO onFinish Nothing name) (Prelude.flip finishTracingSpan) runIO diff --git a/nri-prelude/src/Test/Internal.hs b/nri-prelude/src/Test/Internal.hs index a51f79a7..0379f399 100644 --- a/nri-prelude/src/Test/Internal.hs +++ b/nri-prelude/src/Test/Internal.hs @@ -533,6 +533,7 @@ runSingle test' = res <- Platform.Internal.rootTracingSpanIO "" + Platform.Internal.silentTrack ( \span -> do when (Platform.Internal.name span == spanName) <| MVar.putMVar spanVar span diff --git a/nri-prelude/tests/LogSpec.hs b/nri-prelude/tests/LogSpec.hs index 8cc12820..d75d4c8f 100644 --- a/nri-prelude/tests/LogSpec.hs +++ b/nri-prelude/tests/LogSpec.hs @@ -195,6 +195,7 @@ newHandler = do Internal.mkHandler "" (Internal.Clock (Prelude.pure 0)) + Internal.silentTrack (\span -> IORef.modifyIORef recordedTracingSpans (\cs -> cs ++ Internal.children span)) Nothing "" diff --git a/nri-prelude/tests/PlatformSpec.hs b/nri-prelude/tests/PlatformSpec.hs index 37a70a1a..2908dffb 100644 --- a/nri-prelude/tests/PlatformSpec.hs +++ b/nri-prelude/tests/PlatformSpec.hs @@ -3,10 +3,13 @@ module PlatformSpec (tests) where import qualified Control.Concurrent.MVar as MVar import Control.Monad.Catch (catchAll) import Data.Aeson as Aeson +import qualified Data.IORef as IORef import qualified Expect import qualified Log import NriPrelude import qualified Platform +import qualified Platform.Analytics.Internal +import qualified Platform.Internal import Task import Test (Test, describe, test) import qualified Prelude @@ -31,7 +34,33 @@ tests = runTaskAndExpectTacingSpan <| Log.error "error" [] Expect.true (isSucceeded span) - Expect.true (Platform.containsFailures span) + Expect.true (Platform.containsFailures span), + test "trackAnalyticsEventIO threaded by rootTracingSpanIO is invoked from a child span" <| \_ -> do + ref <- Expect.fromIO (IORef.newIORef []) + let track v = IORef.atomicModifyIORef' ref (\xs -> (v : xs, ())) + Expect.fromIO + <| Platform.rootTracingSpanIO "test-req" track (\_ -> Prelude.pure ()) "root" + <| \log -> do + child <- Platform.Internal.startChildTracingSpan log "child-span" + Platform.Internal.trackAnalyticsEventIO child (Aeson.toJSON ("hello" :: Text)) + observed <- Expect.fromIO (IORef.readIORef ref) + observed |> Expect.equal [Aeson.toJSON ("hello" :: Text)], + test "nullHandler.trackAnalyticsEventIO is a silent no-op" <| \_ -> + Expect.fromIO + <| Platform.Internal.trackAnalyticsEventIO Platform.Internal.nullHandler Aeson.Null, + test "Platform.Analytics.Internal.trackEvent invokes the current LogHandler's analytics callback with toJSON of the event" <| \_ -> do + ref <- Expect.fromIO (IORef.newIORef []) + let track v = IORef.atomicModifyIORef' ref (\xs -> (v : xs, ())) + let event = Aeson.object ["kind" Aeson..= ("LessonStarted" :: Text)] + result <- + Expect.fromIO + <| Platform.rootTracingSpanIO "test-req" track (\_ -> Prelude.pure ()) "root" + <| \log -> Task.attempt log (Platform.Analytics.Internal.trackEvent event) + case result of + Ok () -> Expect.pass + Err _ -> Expect.fail "trackEvent task failed" + observed <- Expect.fromIO (IORef.readIORef ref) + observed |> Expect.equal [event] ] newtype CustomTracingSpanDetails = CustomTracingSpanDetails Text @@ -48,6 +77,7 @@ runTaskAndExpectTacingSpan task = catchAll ( Platform.rootTracingSpanIO "" + Platform.silentTrack (MVar.putMVar spanVar) "test" (\log -> Task.attempt log task) diff --git a/nri-prelude/tests/golden-results-9.10/debug b/nri-prelude/tests/golden-results-9.10/debug index a2629768..6b3bcde9 100644 --- a/nri-prelude/tests/golden-results-9.10/debug +++ b/nri-prelude/tests/golden-results-9.10/debug @@ -6,7 +6,7 @@ Just ( "debug" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 40 diff --git a/nri-prelude/tests/golden-results-9.10/debug-todo-stacktrace b/nri-prelude/tests/golden-results-9.10/debug-todo-stacktrace index bfe57c72..544c8666 100644 --- a/nri-prelude/tests/golden-results-9.10/debug-todo-stacktrace +++ b/nri-prelude/tests/golden-results-9.10/debug-todo-stacktrace @@ -1,6 +1,6 @@ foo CallStack (from HasCallStack): - todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.6.1.2-inplace-tests:TestSpec + todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.7.0.0-inplace-tests:TestSpec HasCallStack backtrace: - todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.6.1.2-inplace-tests:TestSpec + todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.7.0.0-inplace-tests:TestSpec diff --git a/nri-prelude/tests/golden-results-9.10/error b/nri-prelude/tests/golden-results-9.10/error index 4b550b43..0ccd5662 100644 --- a/nri-prelude/tests/golden-results-9.10/error +++ b/nri-prelude/tests/golden-results-9.10/error @@ -6,7 +6,7 @@ Just ( "error" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 66 diff --git a/nri-prelude/tests/golden-results-9.10/log-async-exceptions b/nri-prelude/tests/golden-results-9.10/log-async-exceptions index 9960f182..fb749c61 100644 --- a/nri-prelude/tests/golden-results-9.10/log-async-exceptions +++ b/nri-prelude/tests/golden-results-9.10/log-async-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 113 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 112 diff --git a/nri-prelude/tests/golden-results-9.10/log-info b/nri-prelude/tests/golden-results-9.10/log-info index 9bc7042a..2d8e3184 100644 --- a/nri-prelude/tests/golden-results-9.10/log-info +++ b/nri-prelude/tests/golden-results-9.10/log-info @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 30 diff --git a/nri-prelude/tests/golden-results-9.10/log-nested-spans b/nri-prelude/tests/golden-results-9.10/log-nested-spans index 5bee1860..9a2ea38d 100644 --- a/nri-prelude/tests/golden-results-9.10/log-nested-spans +++ b/nri-prelude/tests/golden-results-9.10/log-nested-spans @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 81 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 80 @@ -52,7 +52,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 79 diff --git a/nri-prelude/tests/golden-results-9.10/log-new-root b/nri-prelude/tests/golden-results-9.10/log-new-root index 0547be4d..f08dcf87 100644 --- a/nri-prelude/tests/golden-results-9.10/log-new-root +++ b/nri-prelude/tests/golden-results-9.10/log-new-root @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 174 @@ -30,7 +30,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 177 @@ -54,7 +54,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 176 @@ -78,7 +78,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 @@ -101,7 +101,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 diff --git a/nri-prelude/tests/golden-results-9.10/log-unexpected-exceptions b/nri-prelude/tests/golden-results-9.10/log-unexpected-exceptions index 94fa4f8f..9deeb593 100644 --- a/nri-prelude/tests/golden-results-9.10/log-unexpected-exceptions +++ b/nri-prelude/tests/golden-results-9.10/log-unexpected-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 94 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 93 diff --git a/nri-prelude/tests/golden-results-9.10/test-report-logfile-all-passed b/nri-prelude/tests/golden-results-9.10/test-report-logfile-all-passed index 085c55b8..d752330c 100644 --- a/nri-prelude/tests/golden-results-9.10/test-report-logfile-all-passed +++ b/nri-prelude/tests/golden-results-9.10/test-report-logfile-all-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 430 }, diff --git a/nri-prelude/tests/golden-results-9.10/test-report-logfile-no-tests-in-suite b/nri-prelude/tests/golden-results-9.10/test-report-logfile-no-tests-in-suite index 4fb70627..214949fd 100644 --- a/nri-prelude/tests/golden-results-9.10/test-report-logfile-no-tests-in-suite +++ b/nri-prelude/tests/golden-results-9.10/test-report-logfile-no-tests-in-suite @@ -10,7 +10,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 469 }, diff --git a/nri-prelude/tests/golden-results-9.10/test-report-logfile-onlys-passed b/nri-prelude/tests/golden-results-9.10/test-report-logfile-onlys-passed index 9025a273..d4b4788c 100644 --- a/nri-prelude/tests/golden-results-9.10/test-report-logfile-onlys-passed +++ b/nri-prelude/tests/golden-results-9.10/test-report-logfile-onlys-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 445 }, diff --git a/nri-prelude/tests/golden-results-9.10/test-report-logfile-passed-with-skipped b/nri-prelude/tests/golden-results-9.10/test-report-logfile-passed-with-skipped index 4d09310e..674a9cf4 100644 --- a/nri-prelude/tests/golden-results-9.10/test-report-logfile-passed-with-skipped +++ b/nri-prelude/tests/golden-results-9.10/test-report-logfile-passed-with-skipped @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 460 }, diff --git a/nri-prelude/tests/golden-results-9.10/test-report-logfile-tests-failed b/nri-prelude/tests/golden-results-9.10/test-report-logfile-tests-failed index 20a66ae9..e622f4ff 100644 --- a/nri-prelude/tests/golden-results-9.10/test-report-logfile-tests-failed +++ b/nri-prelude/tests/golden-results-9.10/test-report-logfile-tests-failed @@ -109,7 +109,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 489 }, diff --git a/nri-prelude/tests/golden-results-9.10/warn b/nri-prelude/tests/golden-results-9.10/warn index aaf7b246..43d7930e 100644 --- a/nri-prelude/tests/golden-results-9.10/warn +++ b/nri-prelude/tests/golden-results-9.10/warn @@ -6,7 +6,7 @@ Just ( "warn" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 53 diff --git a/nri-prelude/tests/golden-results-9.12/debug b/nri-prelude/tests/golden-results-9.12/debug index a2629768..6b3bcde9 100644 --- a/nri-prelude/tests/golden-results-9.12/debug +++ b/nri-prelude/tests/golden-results-9.12/debug @@ -6,7 +6,7 @@ Just ( "debug" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 40 diff --git a/nri-prelude/tests/golden-results-9.12/error b/nri-prelude/tests/golden-results-9.12/error index 4b550b43..0ccd5662 100644 --- a/nri-prelude/tests/golden-results-9.12/error +++ b/nri-prelude/tests/golden-results-9.12/error @@ -6,7 +6,7 @@ Just ( "error" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 66 diff --git a/nri-prelude/tests/golden-results-9.12/log-async-exceptions b/nri-prelude/tests/golden-results-9.12/log-async-exceptions index 9960f182..fb749c61 100644 --- a/nri-prelude/tests/golden-results-9.12/log-async-exceptions +++ b/nri-prelude/tests/golden-results-9.12/log-async-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 113 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 112 diff --git a/nri-prelude/tests/golden-results-9.12/log-info b/nri-prelude/tests/golden-results-9.12/log-info index 9bc7042a..2d8e3184 100644 --- a/nri-prelude/tests/golden-results-9.12/log-info +++ b/nri-prelude/tests/golden-results-9.12/log-info @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 30 diff --git a/nri-prelude/tests/golden-results-9.12/log-nested-spans b/nri-prelude/tests/golden-results-9.12/log-nested-spans index 5bee1860..9a2ea38d 100644 --- a/nri-prelude/tests/golden-results-9.12/log-nested-spans +++ b/nri-prelude/tests/golden-results-9.12/log-nested-spans @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 81 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 80 @@ -52,7 +52,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 79 diff --git a/nri-prelude/tests/golden-results-9.12/log-new-root b/nri-prelude/tests/golden-results-9.12/log-new-root index 0547be4d..f08dcf87 100644 --- a/nri-prelude/tests/golden-results-9.12/log-new-root +++ b/nri-prelude/tests/golden-results-9.12/log-new-root @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 174 @@ -30,7 +30,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 177 @@ -54,7 +54,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 176 @@ -78,7 +78,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 @@ -101,7 +101,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 diff --git a/nri-prelude/tests/golden-results-9.12/log-unexpected-exceptions b/nri-prelude/tests/golden-results-9.12/log-unexpected-exceptions index 94fa4f8f..9deeb593 100644 --- a/nri-prelude/tests/golden-results-9.12/log-unexpected-exceptions +++ b/nri-prelude/tests/golden-results-9.12/log-unexpected-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 94 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 93 diff --git a/nri-prelude/tests/golden-results-9.12/test-report-logfile-all-passed b/nri-prelude/tests/golden-results-9.12/test-report-logfile-all-passed index 085c55b8..d752330c 100644 --- a/nri-prelude/tests/golden-results-9.12/test-report-logfile-all-passed +++ b/nri-prelude/tests/golden-results-9.12/test-report-logfile-all-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 430 }, diff --git a/nri-prelude/tests/golden-results-9.12/test-report-logfile-no-tests-in-suite b/nri-prelude/tests/golden-results-9.12/test-report-logfile-no-tests-in-suite index 4fb70627..214949fd 100644 --- a/nri-prelude/tests/golden-results-9.12/test-report-logfile-no-tests-in-suite +++ b/nri-prelude/tests/golden-results-9.12/test-report-logfile-no-tests-in-suite @@ -10,7 +10,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 469 }, diff --git a/nri-prelude/tests/golden-results-9.12/test-report-logfile-onlys-passed b/nri-prelude/tests/golden-results-9.12/test-report-logfile-onlys-passed index 9025a273..d4b4788c 100644 --- a/nri-prelude/tests/golden-results-9.12/test-report-logfile-onlys-passed +++ b/nri-prelude/tests/golden-results-9.12/test-report-logfile-onlys-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 445 }, diff --git a/nri-prelude/tests/golden-results-9.12/test-report-logfile-passed-with-skipped b/nri-prelude/tests/golden-results-9.12/test-report-logfile-passed-with-skipped index 4d09310e..674a9cf4 100644 --- a/nri-prelude/tests/golden-results-9.12/test-report-logfile-passed-with-skipped +++ b/nri-prelude/tests/golden-results-9.12/test-report-logfile-passed-with-skipped @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 460 }, diff --git a/nri-prelude/tests/golden-results-9.12/test-report-logfile-tests-failed b/nri-prelude/tests/golden-results-9.12/test-report-logfile-tests-failed index 20a66ae9..e622f4ff 100644 --- a/nri-prelude/tests/golden-results-9.12/test-report-logfile-tests-failed +++ b/nri-prelude/tests/golden-results-9.12/test-report-logfile-tests-failed @@ -109,7 +109,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 489 }, diff --git a/nri-prelude/tests/golden-results-9.12/warn b/nri-prelude/tests/golden-results-9.12/warn index aaf7b246..43d7930e 100644 --- a/nri-prelude/tests/golden-results-9.12/warn +++ b/nri-prelude/tests/golden-results-9.12/warn @@ -6,7 +6,7 @@ Just ( "warn" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 53 diff --git a/nri-prelude/tests/golden-results-9.8/debug b/nri-prelude/tests/golden-results-9.8/debug index a2629768..6b3bcde9 100644 --- a/nri-prelude/tests/golden-results-9.8/debug +++ b/nri-prelude/tests/golden-results-9.8/debug @@ -6,7 +6,7 @@ Just ( "debug" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 40 diff --git a/nri-prelude/tests/golden-results-9.8/debug-todo-stacktrace b/nri-prelude/tests/golden-results-9.8/debug-todo-stacktrace index c493c9d1..b3913453 100644 --- a/nri-prelude/tests/golden-results-9.8/debug-todo-stacktrace +++ b/nri-prelude/tests/golden-results-9.8/debug-todo-stacktrace @@ -1,3 +1,3 @@ foo CallStack (from HasCallStack): - todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.6.1.2-inplace-tests:TestSpec \ No newline at end of file + todo, called at tests/TestSpec.hs:177:20 in nri-prelude-0.7.0.0-inplace-tests:TestSpec \ No newline at end of file diff --git a/nri-prelude/tests/golden-results-9.8/error b/nri-prelude/tests/golden-results-9.8/error index 4b550b43..0ccd5662 100644 --- a/nri-prelude/tests/golden-results-9.8/error +++ b/nri-prelude/tests/golden-results-9.8/error @@ -6,7 +6,7 @@ Just ( "error" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 66 diff --git a/nri-prelude/tests/golden-results-9.8/log-async-exceptions b/nri-prelude/tests/golden-results-9.8/log-async-exceptions index 9960f182..fb749c61 100644 --- a/nri-prelude/tests/golden-results-9.8/log-async-exceptions +++ b/nri-prelude/tests/golden-results-9.8/log-async-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 113 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 112 diff --git a/nri-prelude/tests/golden-results-9.8/log-info b/nri-prelude/tests/golden-results-9.8/log-info index 9bc7042a..2d8e3184 100644 --- a/nri-prelude/tests/golden-results-9.8/log-info +++ b/nri-prelude/tests/golden-results-9.8/log-info @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 30 diff --git a/nri-prelude/tests/golden-results-9.8/log-nested-spans b/nri-prelude/tests/golden-results-9.8/log-nested-spans index 5bee1860..9a2ea38d 100644 --- a/nri-prelude/tests/golden-results-9.8/log-nested-spans +++ b/nri-prelude/tests/golden-results-9.8/log-nested-spans @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 81 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 80 @@ -52,7 +52,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 79 diff --git a/nri-prelude/tests/golden-results-9.8/log-new-root b/nri-prelude/tests/golden-results-9.8/log-new-root index 0547be4d..f08dcf87 100644 --- a/nri-prelude/tests/golden-results-9.8/log-new-root +++ b/nri-prelude/tests/golden-results-9.8/log-new-root @@ -6,7 +6,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 174 @@ -30,7 +30,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 177 @@ -54,7 +54,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 176 @@ -78,7 +78,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 @@ -101,7 +101,7 @@ Just ( "info" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 173 diff --git a/nri-prelude/tests/golden-results-9.8/log-unexpected-exceptions b/nri-prelude/tests/golden-results-9.8/log-unexpected-exceptions index 94fa4f8f..9deeb593 100644 --- a/nri-prelude/tests/golden-results-9.8/log-unexpected-exceptions +++ b/nri-prelude/tests/golden-results-9.8/log-unexpected-exceptions @@ -6,7 +6,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 94 @@ -29,7 +29,7 @@ Just ( "withContext" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 93 diff --git a/nri-prelude/tests/golden-results-9.8/test-report-logfile-all-passed b/nri-prelude/tests/golden-results-9.8/test-report-logfile-all-passed index 085c55b8..d752330c 100644 --- a/nri-prelude/tests/golden-results-9.8/test-report-logfile-all-passed +++ b/nri-prelude/tests/golden-results-9.8/test-report-logfile-all-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 430 }, diff --git a/nri-prelude/tests/golden-results-9.8/test-report-logfile-no-tests-in-suite b/nri-prelude/tests/golden-results-9.8/test-report-logfile-no-tests-in-suite index 4fb70627..214949fd 100644 --- a/nri-prelude/tests/golden-results-9.8/test-report-logfile-no-tests-in-suite +++ b/nri-prelude/tests/golden-results-9.8/test-report-logfile-no-tests-in-suite @@ -10,7 +10,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 469 }, diff --git a/nri-prelude/tests/golden-results-9.8/test-report-logfile-onlys-passed b/nri-prelude/tests/golden-results-9.8/test-report-logfile-onlys-passed index 9025a273..d4b4788c 100644 --- a/nri-prelude/tests/golden-results-9.8/test-report-logfile-onlys-passed +++ b/nri-prelude/tests/golden-results-9.8/test-report-logfile-onlys-passed @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 445 }, diff --git a/nri-prelude/tests/golden-results-9.8/test-report-logfile-passed-with-skipped b/nri-prelude/tests/golden-results-9.8/test-report-logfile-passed-with-skipped index 4d09310e..674a9cf4 100644 --- a/nri-prelude/tests/golden-results-9.8/test-report-logfile-passed-with-skipped +++ b/nri-prelude/tests/golden-results-9.8/test-report-logfile-passed-with-skipped @@ -61,7 +61,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 460 }, diff --git a/nri-prelude/tests/golden-results-9.8/test-report-logfile-tests-failed b/nri-prelude/tests/golden-results-9.8/test-report-logfile-tests-failed index 20a66ae9..e622f4ff 100644 --- a/nri-prelude/tests/golden-results-9.8/test-report-logfile-tests-failed +++ b/nri-prelude/tests/golden-results-9.8/test-report-logfile-tests-failed @@ -109,7 +109,7 @@ "file": "tests/TestSpec.hs", "module": "TestSpec", "name": "report", - "package": "nri-prelude-0.6.1.2-inplace-tests", + "package": "nri-prelude-0.7.0.0-inplace-tests", "startCol": 22, "startLine": 489 }, diff --git a/nri-prelude/tests/golden-results-9.8/warn b/nri-prelude/tests/golden-results-9.8/warn index aaf7b246..43d7930e 100644 --- a/nri-prelude/tests/golden-results-9.8/warn +++ b/nri-prelude/tests/golden-results-9.8/warn @@ -6,7 +6,7 @@ Just ( "warn" , SrcLoc - { srcLocPackage = "nri-prelude-0.6.1.2-inplace-tests" + { srcLocPackage = "nri-prelude-0.7.0.0-inplace-tests" , srcLocModule = "LogSpec" , srcLocFile = "tests/LogSpec.hs" , srcLocStartLine = 53 diff --git a/nri-redis/nri-redis.cabal b/nri-redis/nri-redis.cabal index 8d358c1c..6a3d72f3 100644 --- a/nri-redis/nri-redis.cabal +++ b/nri-redis/nri-redis.cabal @@ -76,7 +76,7 @@ library , modern-uri >=0.3.1.0 && <0.4 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , pcre-light >=0.4.1.0 && <0.4.2 , resourcet >=1.2.0 && <1.4 , safe-exceptions >=0.1.7.0 && <1.3 @@ -141,7 +141,7 @@ test-suite tests , modern-uri >=0.3.1.0 && <0.4 , nri-env-parser >=0.1.0.0 && <0.5 , nri-observability >=0.1.0 && <0.5 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , pcre-light >=0.4.1.0 && <0.4.2 , resourcet >=1.2.0 && <1.4 , safe-exceptions >=0.1.7.0 && <1.3 diff --git a/nri-redis/package.yaml b/nri-redis/package.yaml index 4edb35e4..568ca854 100644 --- a/nri-redis/package.yaml +++ b/nri-redis/package.yaml @@ -28,7 +28,7 @@ dependencies: - modern-uri >= 0.3.1.0 && < 0.4 - nri-env-parser >= 0.1.0.0 && < 0.5 - nri-observability >= 0.1.0 && < 0.5 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - pcre-light >= 0.4.1.0 && < 0.4.2 - resourcet >= 1.2.0 && < 1.4 - safe-exceptions >= 0.1.7.0 && < 1.3 diff --git a/nri-redis/test/Spec/Redis.hs b/nri-redis/test/Spec/Redis.hs index 85ffca1a..4e7af3d8 100644 --- a/nri-redis/test/Spec/Redis.hs +++ b/nri-redis/test/Spec/Redis.hs @@ -30,6 +30,7 @@ spanForTask task = res <- Platform.rootTracingSpanIO "test-request" + Platform.silentTrack (MVar.putMVar spanVar) "test-root" (\log -> Task.attempt log task) @@ -46,6 +47,7 @@ spanForFailingTask task = res <- Platform.rootTracingSpanIO "test-request" + Platform.silentTrack (MVar.putMVar spanVar) "test-root" (\log -> Task.attempt log task) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-query b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-query index e9620149..d5d16f2f 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-query +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-query @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 123 + , srcLocStartLine = 126 , srcLocStartCol = 9 - , srcLocEndLine = 123 + , srcLocEndLine = 126 , srcLocEndCol = 28 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-transaction b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-transaction index c427f9ef..34b12e88 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-transaction +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-counter-transaction @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 130 + , srcLocStartLine = 133 , srcLocStartCol = 9 - , srcLocEndLine = 130 + , srcLocEndLine = 133 , srcLocEndCol = 34 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-query b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-query index 815a8cc1..91063a79 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-query +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-query @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 95 + , srcLocStartLine = 98 , srcLocStartCol = 9 - , srcLocEndLine = 95 + , srcLocEndLine = 98 , srcLocEndCol = 25 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-transaction b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-transaction index 855e7dab..1ebb7f23 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-transaction +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-hash-transaction @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 102 + , srcLocStartLine = 105 , srcLocStartCol = 9 - , srcLocEndLine = 102 + , srcLocEndLine = 105 , srcLocEndCol = 31 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-query b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-query index c72dc687..ac0f4246 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-query +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-query @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 109 + , srcLocStartLine = 112 , srcLocStartCol = 9 - , srcLocEndLine = 109 + , srcLocEndLine = 112 , srcLocEndCol = 25 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-transaction b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-transaction index a1277106..22e5baec 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-transaction +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-list-transaction @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 116 + , srcLocStartLine = 119 , srcLocStartCol = 9 - , srcLocEndLine = 116 + , srcLocEndLine = 119 , srcLocEndCol = 31 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query index 82151fb2..d39abd36 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 81 + , srcLocStartLine = 84 , srcLocStartCol = 9 - , srcLocEndLine = 81 + , srcLocEndLine = 84 , srcLocEndCol = 20 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query-timeout b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query-timeout index 7758d5ab..d64236b1 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query-timeout +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-query-timeout @@ -9,9 +9,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 47 + , srcLocStartLine = 48 , srcLocStartCol = 7 - , srcLocEndLine = 47 + , srcLocEndLine = 48 , srcLocEndCol = 33 } ) @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 140 + , srcLocStartLine = 143 , srcLocStartCol = 13 - , srcLocEndLine = 140 + , srcLocEndLine = 143 , srcLocEndCol = 24 } ) diff --git a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-transaction b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-transaction index 97d38dc2..4d816aab 100644 --- a/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-transaction +++ b/nri-redis/test/golden-results-9.8/observability-spec-reporting-redis-transaction @@ -32,9 +32,9 @@ TracingSpan { srcLocPackage = "nri-redis-0.4.0.0-inplace-tests" , srcLocModule = "Spec.Redis" , srcLocFile = "test/Spec/Redis.hs" - , srcLocStartLine = 88 + , srcLocStartLine = 91 , srcLocStartCol = 9 - , srcLocEndLine = 88 + , srcLocEndLine = 91 , srcLocEndCol = 26 } ) diff --git a/nri-test-encoding/nri-test-encoding.cabal b/nri-test-encoding/nri-test-encoding.cabal index dc1b25a3..3a3f710d 100644 --- a/nri-test-encoding/nri-test-encoding.cabal +++ b/nri-test-encoding/nri-test-encoding.cabal @@ -58,7 +58,7 @@ library , base >=4.18 && <4.22 , bytestring >=0.10.8.2 && <0.13 , filepath >=1.4.2.1 && <1.6 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , nri-redis >=0.1.0.0 && <0.5 , servant >=0.20.2 && <0.21 , servant-auth-server >=0.4.9.0 && <0.5 @@ -99,7 +99,7 @@ test-suite tests , base >=4.18 && <4.22 , bytestring >=0.10.8.2 && <0.13 , filepath >=1.4.2.1 && <1.6 - , nri-prelude >=0.1.0.0 && <0.7 + , nri-prelude >=0.1.0.0 && <0.8 , nri-redis >=0.1.0.0 && <0.5 , servant >=0.20.2 && <0.21 , servant-auth-server >=0.4.9.0 && <0.5 diff --git a/nri-test-encoding/package.yaml b/nri-test-encoding/package.yaml index 3278281a..89d64d3b 100644 --- a/nri-test-encoding/package.yaml +++ b/nri-test-encoding/package.yaml @@ -23,7 +23,7 @@ dependencies: - servant-auth-server >= 0.4.9.0 && < 0.5 - servant-server >= 0.20.2 && < 0.21 - text >= 1.2.3.1 && < 2.2 - - nri-prelude >= 0.1.0.0 && < 0.7 + - nri-prelude >= 0.1.0.0 && < 0.8 - nri-redis >= 0.1.0.0 && < 0.5 library: exposed-modules: