mycelium-api 7.9.2+dev

Provide API ports to the mycelium project.
[package]
name = "mycelium-api"
description = "Provide API ports to the mycelium project."

edition.workspace = true
authors.workspace = true
version.workspace = true
license.workspace = true
repository.workspace = true
keywords.workspace = true
categories.workspace = true
readme.workspace = true


# ? ----------------------------------------------------------------------------
# ? DEPENDENCIES
# ? ----------------------------------------------------------------------------

[dependencies]

myc-core = { version = "7.9.2", path = "../../core" }
mycelium-base = { version = "7.9.2", path = "../../base" }
mycelium-config = { version = "7.9.2", path = "../../config" }
mycelium-http-tools = { version = "7.9.2", path = "../../http_tools" }
mycelium-memory-db = { version = "7.9.2", path = "../../adapters/mem_db" }
mycelium-service = { version = "7.9.2", path = "../../adapters/service" }
mycelium-diesel = { version = "7.9.2", path = "../../adapters/diesel" }
mycelium-notifier = { version = "7.9.2", path = "../../adapters/notifier" }
mycelium-adapters-shared-lib = { version = "7.9.2", path = "../../adapters/shared" }
mycelium-key-value = { version = "7.9.2", path = "../../adapters/kv_db" }

actix-web.workspace = true
actix-web-httpauth.workspace = true
async-trait.workspace = true
awc.workspace = true
base64.workspace = true
chrono.workspace = true
derive_more.workspace = true
futures.workspace = true
futures-util.workspace = true
hex.workspace = true
jsonwebtoken.workspace = true
jwt.workspace = true
lazy_static.workspace = true
oauth2.workspace = true
openssl.workspace = true
rand.workspace = true
reqwest.workspace = true
serde.workspace = true
serde_json.workspace = true
shaku.workspace = true
tracing.workspace = true
tokio.workspace = true
utoipa.workspace = true
uuid.workspace = true
url.workspace = true
zip.workspace = true

actix = "0.13"
actix-cors = { version = "0.6.2" }
actix-rt = "2.10"
actix-web-error = { version = "0.2" }
actix-web-error-derive = { version = "0.2" }
actix-web-opentelemetry = "0.18.0"
opentelemetry = { version = "0.25", default-features = false, features = [
    "trace",
] }
opentelemetry_sdk = { version = "0.25", features = ["rt-tokio"] }
opentelemetry-otlp = { version = "0.25", features = [
    "reqwest-client",
    "reqwest-rustls",
    "http-proto",
    "tls",
] }
opentelemetry-stdout = "0.25"
tonic = { version = "0.12", features = ["tls", "tls-roots"] }
tracing-actix-web = { version = "0.7", features = ["opentelemetry_0_25"] }
tracing-appender = "0.2"
tracing-opentelemetry = "0.26"
tracing-subscriber = { version = "0.3", features = [
    "alloc",
    "json",
    "env-filter",
    "tracing-serde",
    "registry",
] }
utoipa-redoc = { version = "5", features = ["actix-web"] }
utoipa-swagger-ui = { version = "9", features = ["actix-web"] }

[build-dependencies]
zip.workspace = true

# ? ----------------------------------------------------------------------------
# ? BINARIES
# ? ----------------------------------------------------------------------------

[[bin]]
name = "myc-api"
path = "src/main.rs"