Documentation
[package]
name = "prosa"
version = "0.2.2"
authors.workspace = true
description = "ProSA core"
homepage.workspace = true
repository.workspace = true
edition.workspace = true
license.workspace = true
include.workspace = true

[features]
default = ["http-proxy"]
http-proxy = ["dep:async-http-proxy"]

[[example]]
name = "proc"
path = "examples/proc.rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.prosa]
main = ["core::main::MainProc"]

[package.metadata.prosa.inj]
proc = "inj::proc::InjProc"
settings = "inj::proc::InjSettings"
adaptor = ["inj::adaptor::InjDummyAdaptor"]

[package.metadata.prosa.stub]
proc = "stub::proc::StubProc"
settings = "stub::proc::StubSettings"
adaptor = ["stub::adaptor::StubParotAdaptor"]

[dependencies]
prosa-utils = { workspace = true, features = ["msg", "config", "config-observability"] }
prosa-macros.workspace = true
bytes.workspace = true
tracing = "0.1"
tracing-subscriber = {version = "0.3", features = ["std", "env-filter"]}
thiserror.workspace = true
url = { version = "2", features = ["serde"] }
rlimit = "0.10"

aquamarine.workspace = true

openssl = { version = "0.10" }
tokio.workspace = true
tokio-openssl = "0.6"
async-http-proxy = { version = "1", optional = true, features = ["runtime-tokio","basic-auth"] }

serde = { version = "1", features = ["derive"] }
config.workspace = true
glob = { version = "0.3" }
toml.workspace = true
serde_yaml = "0.9"

log.workspace = true
tracing-opentelemetry.workspace = true

opentelemetry.workspace = true
opentelemetry_sdk.workspace = true
opentelemetry-stdout.workspace = true
opentelemetry-otlp.workspace = true
opentelemetry-appender-log.workspace = true
memory-stats = "1"

[dev-dependencies]
futures-util = { version = "0.3", default-features = false }