You've already forked pages
forked from didirus/AstralRinth
* Add affiliate code revenue analytics * clean up some error handling * Add conversions to affiliate code analytics * Only include affiliate subscriptions which have an associated successful charge * wip: affiliate code clicks * affiliate code click ingest route * Add affiliate code clicks to analytics * add new cols
158 lines
4.4 KiB
TOML
158 lines
4.4 KiB
TOML
[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-http = { workspace = true }
|
|
actix-multipart = { workspace = true }
|
|
actix-rt = { workspace = true }
|
|
actix-utils = { workspace = true }
|
|
actix-web = { workspace = true }
|
|
actix-web-prom = { workspace = true, features = ["process"] }
|
|
actix-ws = { workspace = true }
|
|
arc-swap = { 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 }
|
|
const_format = { workspace = true }
|
|
dashmap = { workspace = true }
|
|
deadpool-redis.workspace = true
|
|
dotenvy = { workspace = true }
|
|
either = { workspace = true }
|
|
eyre = { 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 }
|
|
meilisearch-sdk = { workspace = true, features = ["reqwest"] }
|
|
modrinth-maxmind = { workspace = true }
|
|
modrinth-util = { workspace = true, features = ["decimal", "utoipa"] }
|
|
muralpay = { workspace = true, features = ["client", "mock", "utoipa"] }
|
|
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 }
|
|
rustls.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-aws-lc-rs",
|
|
] }
|
|
strum = { 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 }
|
|
url = { workspace = true }
|
|
urlencoding = { workspace = true }
|
|
utoipa = { workspace = true, features = ["url"] }
|
|
utoipa-actix-web = { workspace = true }
|
|
utoipa-swagger-ui = { 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]
|
|
labrinth = { path = ".", features = ["test"] }
|
|
|
|
[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",
|
|
] }
|
|
|
|
[features]
|
|
test = []
|
|
|
|
[lints]
|
|
workspace = true
|