es-entity 0.10.21

Event Sourcing Entity Framework
Documentation
[package]
name = "es-entity"
description = "Event Sourcing Entity Framework"
repository = "https://github.com/GaloyMoney/es-entity"
documentation = "https://docs.rs/es-entity"
version = "0.10.21"
edition = "2024"
license = "Apache-2.0"
categories = ["data-structures", "database"]

[profile.mdbook-test]
inherits = "dev"

[features]

fail-on-warnings = ["es-entity-macros/fail-on-warnings"]
tracing-context = ["dep:tracing", "dep:tracing-opentelemetry", "dep:opentelemetry", "dep:opentelemetry_sdk"]
graphql = ["es-entity-macros/graphql", "dep:async-graphql", "dep:base64"]
event-context = ["es-entity-macros/event-context", "event-context-enabled"]
event-context-enabled = ["es-entity-macros/event-context-enabled"]
json-schema = ["dep:schemars"]
mdbook-test = ["dep:anyhow"]
instrument = ["es-entity-macros/instrument", "dep:tracing"]

[dependencies]
es-entity-macros = { workspace = true }

base64 = { workspace = true, optional = true }
sqlx = { workspace = true }
thiserror = { workspace = true }
chrono =  { workspace = true }
serde =  { workspace = true }
serde_json =  { workspace = true }
derive_builder = { workspace = true }
uuid = { workspace = true }
im = { workspace = true }
pin-project = { workspace = true }
parking_lot = { workspace = true }
tokio = { workspace = true }
async-graphql = { workspace = true, optional = true }
schemars = { workspace = true, optional = true }

tracing = { workspace = true, optional = true }
tracing-opentelemetry = { workspace = true, optional = true }
opentelemetry = { workspace = true, optional = true }
opentelemetry_sdk = { workspace = true, optional = true }

# For book tests
anyhow = { workspace = true, optional = true }

[dev-dependencies]
tokio = { workspace = true }
anyhow = { workspace = true }
async-trait = { workspace = true }
futures = { workspace = true }

[workspace]
resolver = "2"
members = [
  "es-entity-macros",
]

[workspace.dependencies]

es-entity-macros = { path = "es-entity-macros", version = "0.10.21" }

anyhow = "1.0"
async-graphql = { version = "8.0.0-rc.3", default-features = false }
async-trait = "0.1"
base64 = { version = "0.22" }
chrono = { version = "0.4", features = ["clock", "serde"], default-features = false }
derive_builder = "0.20"
schemars = { version = "1.0", features = ["uuid1"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_with = "3.15"
sqlx = { version = "0.8", default-features = false, features = ["macros", "runtime-tokio-rustls", "postgres", "uuid", "chrono", "json" ] }
tokio = { version = "1.48", features = ["rt-multi-thread", "macros", "time"] }
thiserror = "2.0"
uuid = { version = "1.18", features = ["serde", "v7"] }
im = { version = "15.1", features = ["serde"] }
pin-project = "1.1"
tracing = { version = "0.1.41", default-features = false }
tracing-opentelemetry = { version = "0.32.0", default-features = false }
opentelemetry = { version = "0.31.0", default-features = false }
opentelemetry_sdk = { version = "0.31.0", features = ["rt-tokio"] }
futures = "0.3"
parking_lot = "0.12"