[package] name = "ap-relay" description = "A simple activitypub relay" version = "0.3.106" authors = ["asonix "] license = "AGPL-3.0" readme = "README.md" repository = "https://git.asonix.dog/asonix/relay" keywords = ["activitypub", "relay"] edition = "2021" build = "src/build.rs" [[bin]] name = "relay" path = "src/main.rs" [features] console = ["dep:console-subscriber"] default = [] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] anyhow = "1.0" actix-web = { version = "4.4.0", default-features = false, features = ["compress-brotli", "compress-gzip", "rustls-0_22"] } actix-webfinger = { version = "0.5.0", default-features = false } activitystreams = "0.7.0-alpha.25" activitystreams-ext = "0.1.0-alpha.3" ammonia = "3.1.0" async-cpupool = "0.2.0" bcrypt = "0.15" base64 = "0.21" clap = { version = "4.0.0", features = ["derive"] } config = "0.13.0" console-subscriber = { version = "0.2", optional = true } dashmap = "5.1.0" dotenv = "0.15.0" flume = "0.11.0" lru = "0.12.0" metrics = "0.22.0" metrics-exporter-prometheus = { version = "0.13.0", default-features = false, features = [ "http-listener", ] } metrics-util = "0.16.0" mime = "0.3.16" minify-html = "0.15.0" opentelemetry = "0.21" opentelemetry_sdk = { version = "0.21", features = ["rt-tokio"] } opentelemetry-otlp = "0.14" pin-project-lite = "0.2.9" # pinned to metrics-util quanta = "0.12.0" rand = "0.8" reqwest = { version = "0.11", default-features = false, features = ["rustls-tls", "stream"]} reqwest-middleware = "0.2" reqwest-tracing = "0.4.5" ring = "0.17.5" rsa = { version = "0.9" } rsa-magic-public-key = "0.8.0" rustls = "0.22.0" rustls-channel-resolver = "0.2.0" rustls-pemfile = "2" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" sled = "0.34.7" streem = "0.2.0" teloxide = { version = "0.12.0", default-features = false, features = [ "ctrlc_handler", "macros", "rustls", ] } thiserror = "1.0" time = { version = "0.3.17", features = ["serde"] } tracing = "0.1" tracing-error = "0.2" tracing-log = "0.2" tracing-opentelemetry = "0.22" tracing-subscriber = { version = "0.3", features = [ "ansi", "env-filter", "fmt", ] } tokio = { version = "1", features = ["full", "tracing"] } uuid = { version = "1", features = ["v4", "serde"] } [dependencies.background-jobs] version = "0.17.0" default-features = false features = ["error-logging", "metrics", "tokio"] [dependencies.http-signature-normalization-actix] version = "0.11.0" default-features = false features = ["server", "ring"] [dependencies.http-signature-normalization-reqwest] version = "0.11.0" default-features = false features = ["middleware", "ring"] [dependencies.tracing-actix-web] version = "0.7.9" [build-dependencies] anyhow = "1.0" dotenv = "0.15.0" ructe = { version = "0.17.0", features = ["sass", "mime03"] } toml = "0.8.0" [profile.dev.package.rsa] opt-level = 3