kafka-effectful-0.3.0.0: kafka-effectful.cabal
cabal-version: 3.4
name: kafka-effectful
version: 0.3.0.0
synopsis: Effectful effects for hw-kafka-client
description:
Effectful effects and interpreters for hw-kafka-client, a Haskell
binding to Apache Kafka via librdkafka. Provides typed, composable
KafkaProducer and KafkaConsumer effects.
license: MIT
license-file: LICENSE
author: Nadeem Bitar
maintainer: Nadeem Bitar
category: Network, Messaging
build-type: Simple
extra-doc-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://github.com/shinzui/kafka-effectful.git
flag examples
description: Build example executables
manual: True
default: False
common warnings
ghc-options:
-Wall -Wcompat -Widentities -Wincomplete-uni-patterns
-Wincomplete-record-updates -Wredundant-constraints
-fhide-source-paths -Wmissing-export-lists -Wpartial-fields
-Wmissing-deriving-strategies
library
import: warnings
exposed-modules:
Kafka.Effectful
Kafka.Effectful.Consumer
Kafka.Effectful.Consumer.Effect
Kafka.Effectful.Consumer.Interpreter
Kafka.Effectful.OpenTelemetry
Kafka.Effectful.OpenTelemetry.Consumer.Interpreter
Kafka.Effectful.OpenTelemetry.Producer.Interpreter
Kafka.Effectful.OpenTelemetry.Propagation
Kafka.Effectful.OpenTelemetry.Semantic
Kafka.Effectful.Producer
Kafka.Effectful.Producer.Effect
Kafka.Effectful.Producer.Interpreter
Kafka.Effectful.Producer.Transaction
build-depends:
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, case-insensitive >=1.2 && <1.3
, containers >=0.6 && <0.8
, effectful-core >=2.5 && <2.7
, hs-opentelemetry-api ^>=1.0
, hs-opentelemetry-semantic-conventions >=1.40 && <2
, http-types >=0.12 && <0.13
, hw-kafka-client >=5.3 && <6
, text >=2.0 && <2.2
, unliftio-core >=0.2 && <0.3
, unordered-containers >=0.2 && <0.3
hs-source-dirs: src
default-language: GHC2024
default-extensions:
DataKinds
DuplicateRecordFields
GADTs
GeneralisedNewtypeDeriving
ImportQualifiedPost
LambdaCase
NoFieldSelectors
OverloadedRecordDot
OverloadedStrings
TypeFamilies
TypeOperators
executable example-sync-publish
import: warnings
main-is: SyncPublish.hs
hs-source-dirs: examples
default-language: GHC2024
default-extensions:
ImportQualifiedPost
LambdaCase
OverloadedStrings
TypeApplications
if !flag(examples)
buildable: False
build-depends:
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, effectful-core >=2.5 && <2.7
, hw-kafka-client >=5.3 && <6
, kafka-effectful
executable example-transactional-etl
import: warnings
main-is: TransactionalEtl.hs
hs-source-dirs: examples
default-language: GHC2024
default-extensions:
ImportQualifiedPost
LambdaCase
OverloadedStrings
TypeApplications
if !flag(examples)
buildable: False
build-depends:
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, containers >=0.6 && <0.8
, effectful-core >=2.5 && <2.7
, hw-kafka-client >=5.3 && <6
, kafka-effectful
executable example-otel-tracing
import: warnings
main-is: OtelTracing.hs
hs-source-dirs: examples
-- The hs-opentelemetry batch span processor requires the threaded
-- runtime; without it, initializeGlobalTracerProvider raises at
-- runtime.
ghc-options: -threaded
default-language: GHC2024
default-extensions:
DuplicateRecordFields
ImportQualifiedPost
LambdaCase
NoFieldSelectors
OverloadedRecordDot
OverloadedStrings
TypeApplications
if !flag(examples)
buildable: False
build-depends:
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, effectful-core >=2.5 && <2.7
, hs-opentelemetry-api ^>=1.0
, hs-opentelemetry-exporter-otlp ^>=1.0
, hs-opentelemetry-sdk ^>=1.0
, hw-kafka-client >=5.3 && <6
, kafka-effectful
, text >=2.0 && <2.2
test-suite kafka-effectful-test
import: warnings
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: test
-- The hs-opentelemetry batch span processor requires the threaded
-- runtime. Without -threaded, even initializing the global tracer
-- provider in PropagationTest's withResource block raises an
-- exception at runtime.
ghc-options: -threaded
default-language: GHC2024
default-extensions:
DataKinds
DuplicateRecordFields
GADTs
ImportQualifiedPost
LambdaCase
OverloadedRecordDot
OverloadedStrings
TypeApplications
TypeOperators
other-modules:
Kafka.Effectful.OpenTelemetry.PropagationTest
Kafka.Effectful.OpenTelemetry.SemanticTest
Kafka.Effectful.OpenTelemetry.ShibuyaCompatibilityTest
build-depends:
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, case-insensitive >=1.2 && <1.3
, containers >=0.6 && <0.8
, effectful-core >=2.5 && <2.7
, hs-opentelemetry-api ^>=1.0
, hs-opentelemetry-exporter-in-memory ^>=1.0
, hs-opentelemetry-sdk ^>=1.0
, hs-opentelemetry-semantic-conventions >=1.40 && <2
, http-types >=0.12 && <0.13
, hw-kafka-client >=5.3 && <6
, kafka-effectful
, tasty ^>=1.5
, tasty-hunit ^>=0.10
, text >=2.0 && <2.2
, unordered-containers >=0.2 && <0.3