Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
34 lines (32 loc) · 1.49 KB
/
Copy pathCargo.toml
File metadata and controls
34 lines (32 loc) · 1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[package]
name = "rustasea-queue"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "Typed Job trait, central Queue::route registry, sync/database/redis drivers, chain/batch and Cloud queue metrics."
[features]
# `sync` is always available; the real `database` driver is compiled in via the
# default `rustasea-orm` dependency, and `redis` is opt-in so the workspace
# builds (and tests) with no Redis server present.
default = []
redis = ["dep:deadpool-redis", "dep:redis"]
[dependencies]
tokio = { workspace = true, features = ["time", "sync"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
uuid = { workspace = true, features = ["v4"] }
chrono = { workspace = true, features = ["serde"] }
thiserror = { workspace = true }
async-trait = { workspace = true }
tracing = { workspace = true }
rustasea-orm = { path = "../rustasea-orm" }
# Cache store + `Lock` backing the optional `ShouldBeUnique` dedup lease. The
# dependency is always compiled in (memory store needs no feature); unique
# locking simply disengages when no store is installed at boot.
rustasea-cache = { path = "../rustasea-cache" }
# Layered `config/*.toml` loader — the queue owns parsing of the `[queue]` table
# (`QueueConfig::from_loader`), mirroring `rustasea-orm`'s `[database]` parsing.
rustasea-config = { path = "../rustasea-config" }
deadpool-redis = { workspace = true, optional = true }
redis = { workspace = true, optional = true }