[package]
name = "hexeract"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
authors.workspace = true
rust-version.workspace = true
description = "Batteries-included messaging framework for Rust: transactional outbox, message bus and in-process mediator (CQRS) in one SDK."
readme = "../../README.md"
exclude = ["/tests", "/examples", "/benches"]
keywords = ["messaging", "mediator", "cqrs", "outbox", "rabbitmq"]
categories = ["asynchronous", "network-programming"]
[lints]
workspace = true
[dependencies]
hexeract-bus = { path = "../hexeract-bus", version = "0.5", optional = true }
hexeract-bus-rabbitmq = { path = "../hexeract-bus-rabbitmq", version = "0.5", optional = true }
hexeract-core = { path = "../hexeract-core", version = "0.5", optional = true }
hexeract-macros = { path = "../hexeract-macros", version = "0.5", optional = true }
hexeract-mediator = { path = "../hexeract-mediator", version = "0.5", optional = true }
hexeract-middleware = { path = "../hexeract-middleware", version = "0.5", optional = true }
hexeract-outbox = { path = "../hexeract-outbox", version = "0.5", optional = true }
hexeract-outbox-sql = { path = "../hexeract-outbox-sql", version = "0.5", optional = true, default-features = false }
[features]
default = []
core = ["dep:hexeract-core"]
outbox = ["core", "dep:hexeract-outbox"]
outbox-sql-postgres = ["outbox", "dep:hexeract-outbox-sql", "hexeract-outbox-sql/postgres"]
outbox-sql-mysql = ["outbox", "dep:hexeract-outbox-sql", "hexeract-outbox-sql/mysql"]
outbox-sql-sqlite = ["outbox", "dep:hexeract-outbox-sql", "hexeract-outbox-sql/sqlite"]
bus = ["core", "dep:hexeract-bus"]
bus-rabbitmq = ["bus", "dep:hexeract-bus-rabbitmq"]
mediator = ["core", "dep:hexeract-mediator"]
macros = ["core", "dep:hexeract-macros"]
middleware = ["core", "dep:hexeract-middleware"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]