packages feed

shibuya-kafka-adapter-0.9.0.1: shibuya-kafka-adapter.cabal

cabal-version: 3.12
name: shibuya-kafka-adapter
version: 0.9.0.1
synopsis: Kafka adapter for the Shibuya queue processing framework
description:
  A Shibuya adapter that integrates with Apache Kafka via kafka-effectful
  and hw-kafka-client. Provides polling, offset commit semantics, partition
  awareness, and graceful shutdown.

author: Nadeem Bitar
copyright: 2026 Nadeem Bitar
maintainer: nadeem@gmail.com
homepage: https://github.com/shinzui/shibuya-kafka-adapter
bug-reports: https://github.com/shinzui/shibuya-kafka-adapter/issues
license: MIT
license-file: LICENSE
build-type: Simple
tested-with: ghc ==9.12.2
category: Concurrency, Streaming
extra-doc-files:
  CHANGELOG.md
  README.md

source-repository head
  type: git
  location: https://github.com/shinzui/shibuya-kafka-adapter.git

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:
    Shibuya.Adapter.Kafka
    Shibuya.Adapter.Kafka.Config
    Shibuya.Adapter.Kafka.Convert
    Shibuya.Adapter.Kafka.Internal

  default-extensions:
    DeriveAnyClass
    DerivingStrategies
    DuplicateRecordFields
    LambdaCase
    NoFieldSelectors
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings
    QuasiQuotes

  build-depends:
    base ^>=4.21.0.0,
    bytestring ^>=0.12,
    containers ^>=0.7,
    effectful-core >=2.6.1 && <2.8,
    hs-opentelemetry-api ^>=1.0,
    hs-opentelemetry-semantic-conventions ^>=1.40,
    hw-kafka-client >=5.3 && <6,
    hw-kafka-streamly ^>=0.2,
    kafka-effectful ^>=0.3.1.0,
    shibuya-core ^>=0.9.0.1,
    stm ^>=2.5,
    streamly ^>=0.11,
    streamly-core ^>=0.3,
    text ^>=2.1,
    time ^>=1.14,
    unordered-containers ^>=0.2,

  hs-source-dirs: src
  default-language: GHC2024

test-suite shibuya-kafka-adapter-test
  import: warnings
  default-language: GHC2024
  type: exitcode-stdio-1.0
  ghc-options:
    -threaded
    -rtsopts
    -with-rtsopts=-N

  hs-source-dirs: test
  main-is: Main.hs
  default-extensions:
    DeriveAnyClass
    DerivingStrategies
    DuplicateRecordFields
    LambdaCase
    NoFieldSelectors
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings
    QuasiQuotes

  other-modules:
    Kafka.TestEnv
    Shibuya.Adapter.Kafka.AckHandleTest
    Shibuya.Adapter.Kafka.AdapterTest
    Shibuya.Adapter.Kafka.ConvertTest
    Shibuya.Adapter.Kafka.IntegrationTest

  build-depends:
    async ^>=2.2,
    base ^>=4.21.0.0,
    bytestring,
    containers,
    effectful-core,
    hs-opentelemetry-api ^>=1.0,
    hs-opentelemetry-semantic-conventions ^>=1.40,
    hw-kafka-client,
    kafka-effectful,
    process,
    random,
    shibuya-core ^>=0.9.0.1,
    shibuya-kafka-adapter,
    stm,
    streamly,
    streamly-core,
    tasty ^>=1.5,
    tasty-hunit ^>=0.10,
    text,
    time,
    unordered-containers ^>=0.2,