Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
57 lines (50 loc) · 1.73 KB
/
Copy pathCargo.toml
File metadata and controls
57 lines (50 loc) · 1.73 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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
[workspace]
members = [".", "runner_q_redis"]
[package]
name = "runner_q"
version = "0.6.4"
edition = "2021"
authors = ["Akinlua Bolamigbe bolamigbeakinlua@gmail.com"]
description = "Durable Rust functions, with pluggable storage"
license = "MIT"
repository = "https://github.com/alob-mtc/runnerq"
homepage = "https://github.com/alob-mtc/runnerq"
readme = "README.md"
keywords = ["queue", "postgres", "worker", "async", "background-jobs"]
categories = ["asynchronous", "database", "concurrency"]
[dependencies]
async-trait = "0.1.89"
serde = { version = "1.0.219", features = ["derive"] }
uuid = { version = "1.18.0", features = ["v4", "serde"] }
serde_json = "1.0.143"
chrono = { version = "0.4.41", features = ["serde"] }
thiserror = "2.0.16"
tracing = "0.1"
tracing-subscriber = "0.3"
tokio = { version = "1.0", features = ["full"] }
futures = "0.3"
tokio-util = "0.7.16"
anyhow = "1.0"
# HTTP framework dependencies (optional)
axum = { version = "0.7", features = ["json"], optional = true }
tower-http = { version = "0.5", features = ["cors"], optional = true }
tokio-stream = { version = "0.1", features = ["sync"] }
[features]
default = ["postgres", "axum-ui"]
# PostgreSQL backend
postgres = ["dep:sqlx", "dep:async-stream"]
# Axum-based UI endpoints
axum-ui = ["dep:axum", "dep:tower-http"]
[dependencies.sqlx]
version = "0.8.6"
features = ["runtime-tokio", "postgres", "chrono", "uuid", "json"]
optional = true
[dependencies.async-stream]
version = "0.3"
optional = true
[dev-dependencies]
runner_q_redis = { path = "runner_q_redis" }
sqlx = { version = "0.8.6", features = ["runtime-tokio", "postgres", "chrono", "uuid", "json"] }
async-stream = "0.3"
axum = { version = "0.7", features = ["json"] }
tower-http = { version = "0.5", features = ["cors"] }