freckle-app 1.13.0.0 → 1.13.0.1
raw patch · 4 files changed
+18/−5 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGELOG.md +5/−1
- freckle-app.cabal +1/−1
- library/Freckle/App/Kafka/Consumer.hs +11/−2
- package.yaml +1/−1
CHANGELOG.md view
@@ -1,4 +1,8 @@-## [_Unreleased_](https://github.com/freckle/freckle-app/compare/v1.12.0.0...main)+## [_Unreleased_](https://github.com/freckle/freckle-app/compare/v1.13.0.1...main)++## [v1.13.0.1](https://github.com/freckle/freckle-app/compare/v1.13.0.0...v1.13.0.1)++- Fixed issue with `runConsumer` synchronously committing offsets after every event ## [v1.13.0.0](https://github.com/freckle/freckle-app/compare/v1.12.0.1...v1.13.0.0)
freckle-app.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.18 name: freckle-app-version: 1.13.0.0+version: 1.13.0.1 license: MIT license-file: LICENSE maintainer: Freckle Education
library/Freckle/App/Kafka/Consumer.hs view
@@ -12,6 +12,7 @@ import Blammo.Logging import Control.Lens (Lens', view)+import Control.Monad (forever) import Data.Aeson import Data.ByteString (ByteString) import qualified Data.List.NonEmpty as NE@@ -167,7 +168,7 @@ -> (a -> m ()) -> m () runConsumer pollTimeout onMessage =- withTraceIdContext $ immortalCreate onFinish $ do+ withTraceIdContext $ immortalCreate onFinish $ forever $ do consumer <- view kafkaConsumerL flip catches handlers $ inSpan "kafka.consumer" consumerSpanArguments $ do@@ -203,7 +204,9 @@ onFinish finishResult = do consumer <- view kafkaConsumerL- logExMay "Unable to commit offsets" $ commitAllOffsets OffsetCommit consumer+ logExMay+ "Unable to commit offsets"+ (silenceNoOffsetError <$> commitAllOffsets OffsetCommit consumer) either (logEx "Unexpected finish") pure finishResult logExMay msg f = maybe (pure ()) (logEx msg) =<< f@@ -212,6 +215,12 @@ logErrorNS "kafka" . annotatedExceptionMessageFrom (const msg) . AnnotatedException []++ -- It should not be considered an error if we have no offsets to commit+ silenceNoOffsetError :: Maybe KafkaError -> Maybe KafkaError+ silenceNoOffsetError = \case+ Just (KafkaResponseError RdKafkaRespErrNoOffset) -> Nothing+ e -> e fromKafkaError :: (MonadIO m, MonadLogger m, HasCallStack)
package.yaml view
@@ -1,5 +1,5 @@ name: freckle-app-version: 1.13.0.0+version: 1.13.0.1 maintainer: Freckle Education category: Utils github: freckle/freckle-app