[package] name = "labrinth" version = "2.7.0" edition.workspace = true license = "AGPL-3.0-only" # This seems redundant, but it's necessary for Docker to work [[bin]] name = "labrinth" path = "src/main.rs" [dependencies] actix-cors = { workspace = true } actix-files = { workspace = true } actix-multipart = { workspace = true } actix-rt = { workspace = true } actix-web = { workspace = true } actix-web-prom = { workspace = true, features = ["process"] } actix-ws = { workspace = true } argon2 = { workspace = true } ariadne = { workspace = true } async-stripe = { workspace = true, features = [ "billing", "checkout", "connect", "webhook-events", ] } async-trait = { workspace = true } base64 = { workspace = true } bitflags = { workspace = true } bytes = { workspace = true } censor = { workspace = true } chrono = { workspace = true, features = ["serde"] } clap = { workspace = true, features = ["derive"] } clickhouse = { workspace = true, features = ["time", "uuid"] } color-eyre = { workspace = true } color-thief = { workspace = true } console-subscriber = { workspace = true } const_format = { workspace = true } dashmap = { workspace = true } deadpool-redis.workspace = true dotenvy = { workspace = true } either = { workspace = true } eyre = { workspace = true } flate2 = { workspace = true } futures = { workspace = true } futures-util = { workspace = true } hex = { workspace = true } hmac = { workspace = true } hyper-rustls = { workspace = true } hyper-util = { workspace = true } image = { workspace = true, features = [ "avif", "bmp", "dds", "exr", "ff", "gif", "hdr", "ico", "jpeg", "png", "pnm", "qoi", "tga", "tiff", "webp", ] } itertools = { workspace = true } json-patch = { workspace = true } lettre = { workspace = true } maxminddb = { workspace = true } meilisearch-sdk = { workspace = true, features = ["reqwest"] } murmur2 = { workspace = true } paste = { workspace = true } path-util = { workspace = true } prometheus = { workspace = true } rand = { workspace = true } rand_chacha = { workspace = true } redis = { workspace = true, features = ["ahash", "r2d2", "tokio-comp"] } regex = { workspace = true } reqwest = { workspace = true, features = [ "http2", "json", "multipart", "rustls-tls-webpki-roots", ] } rust_decimal = { workspace = true, features = [ "serde-with-float", "serde-with-str", ] } rust_iso3166 = { workspace = true } rust-s3 = { workspace = true } rusty-money = { workspace = true } sentry = { workspace = true } sentry-actix = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } serde_with = { workspace = true } sha1 = { workspace = true } sha2 = { workspace = true } spdx = { workspace = true, features = ["text"] } sqlx = { workspace = true, features = [ "chrono", "json", "macros", "migrate", "postgres", "runtime-tokio", "rust_decimal", "tls-rustls-ring", ] } tar = { workspace = true } thiserror = { workspace = true } tokio = { workspace = true, features = ["rt-multi-thread", "sync"] } tokio-stream = { workspace = true } totp-rs = { workspace = true, features = ["gen_secret"] } tracing = { workspace = true } tracing-actix-web = { workspace = true } tracing-ecs = { workspace = true } tracing-subscriber = { workspace = true } url = { workspace = true } urlencoding = { workspace = true } uuid = { workspace = true, features = ["fast-rng", "serde", "v4"] } validator = { workspace = true, features = ["derive"] } webp = { workspace = true } woothee = { workspace = true } yaserde = { workspace = true, features = ["derive"] } zip = { workspace = true } zxcvbn = { workspace = true } [dev-dependencies] actix-http = { workspace = true } [build-dependencies] chrono = { workspace = true } dotenv-build = { workspace = true } iana-time-zone = { workspace = true } [target.'cfg(target_os = "linux")'.dependencies] jemalloc_pprof = { workspace = true, features = ["flamegraph"] } tikv-jemalloc-ctl = { workspace = true, features = ["stats"] } tikv-jemallocator = { workspace = true, features = [ "profiling", "unprefixed_malloc_on_supported_platforms", ] } [lints] workspace = true