102 lines
3.3 KiB
TOML
102 lines
3.3 KiB
TOML
[package]
|
||
name = "yumechi-no-kuni-proxy-worker"
|
||
description = "A Misskey proxy worker for ゆめちのくに (Yumechi-no-kuni) instance."
|
||
repository = "https://forge.yumechi.jp/yume/yumechi-no-kuni-proxy-worker"
|
||
license = "Apache-2.0"
|
||
version = "0.1.0"
|
||
edition = "2021"
|
||
authors = [ "eternal-flame-AD <yume@yumechi.jp>" ]
|
||
|
||
[lib]
|
||
crate-type = ["cdylib", "rlib"]
|
||
|
||
[profile.release]
|
||
lto = true
|
||
strip = true
|
||
opt-level = "z"
|
||
codegen-units = 1
|
||
panic = "abort"
|
||
|
||
[profile.release-local]
|
||
inherits = "release"
|
||
opt-level = 3
|
||
strip = false
|
||
panic = "unwind"
|
||
|
||
[features]
|
||
default = []
|
||
|
||
# Base feature sets based on the environment
|
||
env-local = ["axum/http1", "axum/http2",
|
||
"axum-server",
|
||
"reqwest", "tokio",
|
||
"env_logger",
|
||
"governor",
|
||
"clap", "toml",
|
||
"image/ico",
|
||
"lossy-webp",
|
||
"tower-http",
|
||
"metrics",
|
||
]
|
||
cf-worker = ["dep:worker", "dep:worker-macros", "dep:wasm-bindgen", "image/ico", "panic-console-error"]
|
||
|
||
# Observability and tracing features
|
||
panic-console-error = ["dep:console_error_panic_hook"]
|
||
metrics = ["prometheus"]
|
||
prometheus = ["dep:prometheus"]
|
||
|
||
# Processing capabilities
|
||
lossy-webp = ["dep:webp"]
|
||
|
||
# Server runtime features
|
||
tokio = ["dep:tokio", "axum/tokio", "dep:libc"]
|
||
axum-server = ["dep:axum-server", "tower-http"]
|
||
governor = ["dep:governor"]
|
||
env_logger = ["dep:env_logger"]
|
||
tower-http = ["dep:tower-http"]
|
||
reuse-port = []
|
||
reqwest = ["dep:reqwest", "dep:url"]
|
||
|
||
# Sandbox features
|
||
apparmor = ["dep:siphasher", "dep:libc"]
|
||
|
||
[dependencies]
|
||
worker = { version="0.4.2", features=['http', 'axum'], optional = true }
|
||
worker-macros = { version="0.4.2", features=['http'], optional = true }
|
||
axum = { version = "0.7", default-features = false, features = ["query", "json"] }
|
||
tower-service = "0.3"
|
||
console_error_panic_hook = { version = "0.1.1", optional = true }
|
||
serde = { version = "1", features = ["derive"] }
|
||
futures = { version = "0.3.31", default-features = false, features = ["std"] }
|
||
image = { version = "0.25.5", default-features = false, features = ["avif", "bmp", "gif", "jpeg", "png", "webp"] }
|
||
reqwest = { version = "0.12.9", features = ["brotli", "gzip", "stream", "zstd"], optional = true }
|
||
getrandom = { version = "0.2", features = ["js"] }
|
||
siphasher = { version = "1.0.1", optional = true }
|
||
tokio = { version = "1.41.1", features = ["rt", "rt-multi-thread", "macros", "sync", "signal"], optional = true }
|
||
clap = { version = "4.5.20", features = ["derive"], optional = true }
|
||
toml = { version = "0.8", optional = true }
|
||
log = "0.4"
|
||
env_logger = { version = "0.11", optional = true }
|
||
governor = { version = "0.7.0", features = ["dashmap"], optional = true }
|
||
thiserror = "2.0"
|
||
serde_json = "1"
|
||
wasm-bindgen = { version = "0.2", optional = true }
|
||
libc = { version = "0.2.162", optional = true }
|
||
axum-server = { version = "0.7.1", optional = true }
|
||
webp = { version = "0.3.0", optional = true }
|
||
url = { version = "2", optional = true }
|
||
tower-http = { version = "0.6.2", features = ["catch-panic", "timeout"], optional = true }
|
||
dashmap = "6.1.0"
|
||
lru = "0.12.5"
|
||
prometheus = { version = "0.13.4", optional = true }
|
||
xml = "0.8.20"
|
||
|
||
[build-dependencies]
|
||
chumsky = "0.9.3"
|
||
quote = "1.0.37"
|
||
serde = { version = "1.0.214", features = ["derive"] }
|
||
serde_json = "1.0.132"
|
||
|
||
[[bin]]
|
||
name = "yumechi-no-kuni-proxy-worker"
|
||
required-features = ["env-local"]
|