keiro-0.12.0.0: keiro.cabal
cabal-version: 3.0
name: keiro
version: 0.12.0.0
synopsis: Event sourcing framework and workflow engine
description:
A library that composes kiroku, keiki, and shibuya into an
event-sourcing and workflow-orchestration framework.
license: BSD-3-Clause
license-file: LICENSE
author: Nadeem Bitar
maintainer: nadeem@gmail.com
copyright: 2026 Nadeem Bitar
category: Control
homepage: https://github.com/shinzui/keiro#readme
bug-reports: https://github.com/shinzui/keiro/issues
build-type: Simple
tested-with: GHC >=9.12 && <9.13
extra-doc-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://github.com/shinzui/keiro.git
common warnings
ghc-options:
-Wall -Wcompat -Widentities -Wincomplete-record-updates
-Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints
common shared
default-language: GHC2024
default-extensions:
DeriveAnyClass
DuplicateRecordFields
ImportQualifiedPost
MultilineStrings
OverloadedLabels
OverloadedStrings
PackageImports
library
import: warnings, shared
autogen-modules: Paths_keiro
exposed-modules:
Keiro
Keiro.Command
Keiro.Connection
Keiro.DeadLetter
Keiro.DeadLetter.Replay
Keiro.DeadLetter.Schema
Keiro.DeterministicId
Keiro.Inbox
Keiro.Inbox.Kafka
Keiro.Inbox.Schema
Keiro.Inbox.Types
Keiro.Outbox
Keiro.Outbox.Kafka
Keiro.Outbox.Schema
Keiro.Outbox.Types
Keiro.ProcessManager
Keiro.Projection
Keiro.Projection.Catalog
Keiro.Projection.Catalog.Operations
Keiro.Projection.Catalog.Preimage
Keiro.ReadModel
Keiro.ReadModel.External
Keiro.ReadModel.Rebuild
Keiro.ReadModel.Schema
Keiro.ReplayAudit
Keiro.Router
Keiro.Router.Selection
Keiro.Snapshot
Keiro.Snapshot.Codec
Keiro.Snapshot.Schema
Keiro.Subscription.Shard
Keiro.Subscription.Shard.Schema
Keiro.Subscription.Shard.Worker
Keiro.Telemetry
Keiro.Timer
Keiro.Timer.Schema
Keiro.Timer.Types
Keiro.Wake
Keiro.Workflow
Keiro.Workflow.Awakeable
Keiro.Workflow.Awakeable.Compatibility
Keiro.Workflow.Awakeable.Schema
Keiro.Workflow.Child
Keiro.Workflow.Child.Schema
Keiro.Workflow.Gc
Keiro.Workflow.Instance
Keiro.Workflow.Resume
Keiro.Workflow.Schema
Keiro.Workflow.Sleep
Keiro.Workflow.Snapshot
Keiro.Workflow.Types
other-modules:
Keiro.Command.Domain
Keiro.Projection.Types
Keiro.ReadModel.Rebuild.Group
Keiro.ReadModel.Rebuild.Runner
Keiro.ReadModel.Rebuild.Status
Keiro.ReadModel.Rebuild.Stream
Keiro.ReadModel.Rebuild.Versioned
Keiro.ReplayDigest
Keiro.Workflow.Awakeable.Internal.Identity
Keiro.Workflow.Child.Cancel
Keiro.Workflow.Instance.Schema
Keiro.Workflow.Journal
Paths_keiro
reexported-modules:
keiro-core:Keiro.Codec,
keiro-core:Keiro.Codec.IdDomain,
keiro-core:Keiro.Codec.Structural,
keiro-core:Keiro.Codec.Structural.Generic,
keiro-core:Keiro.Codec.Nominal,
keiro-core:Keiro.EventStream,
keiro-core:Keiro.EventStream.Validate,
keiro-core:Keiro.Integration.Event,
keiro-core:Keiro.Prelude,
keiro-core:Keiro.Snapshot.Policy,
keiro-core:Keiro.Stream
hs-source-dirs: src
build-depends:
, aeson >=2.2.2 && <2.3
, aeson-casing >=0.2 && <0.3
, base >=4.21 && <5
, base16-bytestring >=1.0.2 && <1.1
, bytestring >=0.11 && <0.13
, containers >=0.6 && <0.8
, contravariant-extras >=0.3 && <0.4
, cryptohash-sha256 >=0.11.102 && <0.12
, deepseq >=1.5 && <1.6
, effectful >=2.6 && <2.7
, effectful-core >=2.6 && <2.7
, generic-lens >=2.2 && <2.4
, hasql >=1.10 && <1.11
, hasql-pool >=1.2 && <1.5
, hasql-transaction >=1.1 && <1.3
, hs-opentelemetry-api >=1.0 && <1.1
, hs-opentelemetry-propagator-w3c >=1.0 && <1.1
, hs-opentelemetry-semantic-conventions >=1.40 && <2
, keiki >=0.9 && <0.10
, keiki-codec-json >=0.9 && <0.10
, keiro-core ^>=0.12.0.0
, kiroku-store >=0.7 && <0.8
, lens >=5.2 && <5.4
, mmzk-typeid >=0.7 && <0.8
, random >=1.2.1 && <1.4
, scientific >=0.3 && <0.4
, shibuya-core ^>=0.9.0.0
, stm >=2.5 && <2.6
, streamly >=0.11 && <0.12
, streamly-core >=0.3 && <0.4
, text >=2.1 && <2.2
, time >=1.12 && <1.15
, unliftio-core >=0.2 && <0.3
, uuid >=1.3 && <1.4
, vector >=0.13 && <0.14
test-suite keiro-test
import: warnings, shared
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Main.hs
autogen-modules: Paths_keiro
other-modules:
CatalogEvolutionSpec
CatalogOperationsSpec
CatalogSpec
Compatibility.ReadModel011
ExternalReadSpec
GroupRebuildSpec
Paths_keiro
PreCanonicalRecoverySpec
PreimageSpec
ProjectionReplaySpec
ReadModelSpec
VersionedRebuildSpec
VersionedTargetPostgresSpec
ghc-options: -threaded -rtsopts -with-rtsopts=-N
build-depends:
, aeson >=2.2 && <2.3
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, containers >=0.6 && <0.8
, contravariant-extras >=0.3 && <0.4
, effectful >=2.6 && <2.7
, effectful-core >=2.6 && <2.7
, hasql >=1.10 && <1.11
, hasql-pool >=1.2 && <1.5
, hasql-transaction >=1.1 && <1.3
, hs-opentelemetry-api >=1.0 && <1.1
, hs-opentelemetry-exporter-in-memory >=1.0 && <1.1
, hs-opentelemetry-propagator-w3c >=1.0 && <1.1
, hs-opentelemetry-sdk >=1.0 && <1.1
, hs-opentelemetry-semantic-conventions >=1.40 && <2
, hspec >=2.11
, keiki
, keiki-codec-json
, keiro
, keiro-test-support
, kiroku-store >=0.7 && <0.8
, process >=1.6 && <1.7
, shibuya-core ^>=0.9.0.0
, stm >=2.5 && <2.6
, streamly-core >=0.3 && <0.4
, text >=2.1 && <2.2
, time >=1.12 && <1.15
, unliftio-core >=0.2 && <0.3
, uuid >=1.3 && <1.4
, vector >=0.13 && <0.14
benchmark keiro-bench
import: warnings, shared
type: exitcode-stdio-1.0
hs-source-dirs: bench
main-is: Main.hs
other-modules: ReadModelBench
ghc-options: -threaded -rtsopts -with-rtsopts=-N
build-depends:
, aeson >=2.2.2 && <2.3
, base >=4.21 && <5
, bytestring >=0.11 && <0.13
, containers >=0.6 && <0.8
, effectful >=2.6 && <2.7
, hasql >=1.10 && <1.11
, hasql-transaction >=1.1 && <1.3
, hs-opentelemetry-api >=1.0 && <1.1
, hs-opentelemetry-sdk >=1.0 && <1.1
, keiki >=0.9 && <0.10
, keiro
, keiro-core ^>=0.12.0.0
, keiro-test-support
, kiroku-store >=0.7 && <0.8
, shibuya-core ^>=0.9.0.0
, streamly-core >=0.3 && <0.4
, tasty-bench >=0.4
, text >=2.1 && <2.2
, time >=1.12 && <1.15
, uuid >=1.3 && <1.4