[package] name = "pict-rs" description = "A simple image hosting service" version = "0.5.17-pre.8" authors = ["asonix "] license = "AGPL-3.0" readme = "README.md" repository = "https://git.asonix.dog/asonix/pict-rs" edition = "2021" rust-version = "1.82" [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } [profile.release] strip = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = [] io-uring = ["dep:tokio-uring", "sled/io_uring", "actix-web/experimental-io-uring"] poll-timer-warnings = [] random-errors = ["dep:nanorand"] [dependencies] actix-form-data = "0.7.0-beta.8" actix-web = { version = "4.8.0", default-features = false, features = ["rustls-0_23"] } async-trait = "0.1.81" barrel = { version = "0.7.0", features = ["pg"] } base64 = "0.22.1" bb8 = "0.8.5" blurhash-update = "0.1.0" clap = { version = "4.5.9", features = ["derive"] } color-eyre = "0.6.3" config = { version = "0.14.0", default-features = false, features = ["json", "ron", "toml", "yaml"] } console-subscriber = "0.4.0" dashmap = "6.0.1" diesel = { version = "2.2.1", features = ["postgres_backend", "serde_json", "time", "uuid"] } diesel-async = { version = "0.5.0", features = ["bb8", "postgres"] } diesel-derive-enum = { version = "2.1.0", features = ["postgres"] } futures-core = "0.3.30" hex = "0.4.3" md-5 = "0.10.6" metrics = "0.24.0" metrics-exporter-prometheus = { version = "0.16.0", default-features = false, features = ["http-listener"] } mime = "0.3.17" nanorand = { version = "0.7.0", optional = true } object_store = { version = "0.11.0", features = ["aws"] } opentelemetry_sdk = { version = "0.27.0", features = ["rt-tokio"] } opentelemetry = "0.27.0" opentelemetry-otlp = { version = "0.27.0", features = ["grpc-tonic"] } pin-project-lite = "0.2.14" refinery = { version = "0.8.14", features = ["tokio-postgres", "postgres"] } reqwest = { version = "0.12.5", default-features = false, features = ["json", "rustls-tls-no-provider", "stream"] } reqwest-middleware = "0.4.0" reqwest-tracing = "0.5.0" # pinned to tokio-postgres-generic-rustls # pinned to actix-web rustls = { version = "0.23.11", default-features = false, features = ["logging", "ring", "std", "tls12"] } # pinned to rustls rustls-channel-resolver = "0.3.0" # pinned to rustls rustls-pemfile = "2.1.2" serde = { version = "1.0.204", features = ["derive"] } serde_json = "1.0.120" serde-tuple-vec-map = "1.0.1" serde_urlencoded = "0.7.1" sha2 = "0.10.8" sled = { version = "0.34.7" } streem = "0.2.0" subtle = { version = "2.6.1", default-features = false } thiserror = "2.0.3" time = { version = "0.3.36", features = ["serde", "serde-well-known"] } tokio = { version = "1.38.0", features = ["full", "tracing"] } tokio-postgres = { version = "0.7.10", features = ["with-uuid-1", "with-time-0_3", "with-serde_json-1"] } tokio-postgres-generic-rustls = { version = "0.1.0", default-features = false, features = ["ring"] } tokio-uring = { version = "0.5.0", optional = true, features = ["bytes"] } tokio-util = { version = "0.7.11", default-features = false, features = [ "codec", "io", ] } toml = "0.8.14" tracing = "0.1.40" tracing-error = "0.2.0" tracing-log = "0.2.0" tracing-opentelemetry = "0.28.0" tracing-subscriber = { version = "0.3.18", features = [ "ansi", "env-filter", "fmt", "json", "registry", "tracing-log", ] } url = { version = "2.5.2", features = ["serde"] } uuid = { version = "1.10.0", features = ["serde", "std", "v4", "v7"] } # pinned to rustls webpki-roots = "0.26.3" image = { version = "0.25.5", default-features = false, features = ["gif", "jpeg", "png", "webp"] } [dependencies.tracing-actix-web] version = "0.7.15" default-features = false features = ["opentelemetry_0_27"]