[package] name = "prop_grid_rs" version = "0.1.0" edition = "2021" publish = false [lib] name = "prop_grid_rs" path = "src/lib.rs" [[bin]] name = "worker" path = "src/bin/worker.rs" [[bin]] name = "hrrr_point_worker" path = "src/bin/hrrr_point_worker.rs" [dependencies] tokio = { version = "1", features = ["full"] } sqlx = { version = "0.8", features = ["runtime-tokio-rustls", "postgres", "uuid", "chrono", "json"] } reqwest = { version = "0.13", features = ["rustls", "stream"], default-features = false } thiserror = "2" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] } chrono = "0.4" uuid = { version = "1", features = ["v4"] } serde = { version = "1", features = ["derive"] } serde_json = "1" rayon = "1.12" axum = { version = "0.8", default-features = false, features = ["http1", "tokio"] } prometheus = { version = "0.14", default-features = false } png = "0.18" rmp-serde = "1.3" rmpv = { version = "1.3", features = ["with-serde"] } flate2 = "1" # glibc malloc retains most dirty pages after large transient # allocations, so RSS drifted from ~500 MiB at boot to ~1.5 GiB # after a few hourly f00 analysis cycles and tripped the 3 GiB # cgroup limit. jemalloc returns pages to the kernel on a short # decay schedule, so RSS follows actual working set and survives # the hourly peak (surface + pressure + native-duct blobs held # simultaneously during decode). [target.'cfg(not(target_env = "msvc"))'.dependencies] tikv-jemallocator = "0.6" [dev-dependencies] tokio = { version = "1", features = ["full", "test-util"] } tempfile = "3"