swadhinbiswas p4: native Rust scheduler (cron + interval) on shared worker pool (ADR-060) · 7/16/2026
cf681c4
39 lines · 1.2 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
[package]
name = "justapi-py"
version.workspace = true
edition.workspace = true
license.workspace = true

[lib]
crate-type = ["cdylib", "lib"]

[dependencies]
pyo3.workspace = true
justapi-core = { workspace = true, features = ["db", "ws"] }
tokio.workspace = true
http-body-util.workspace = true
http-body = "1"
hyper.workspace = true
http = "1"
futures = "0.3"
serde.workspace = true
serde_json.workspace = true
base64 = { workspace = true }
serde_urlencoded.workspace = true
tracing.workspace = true
anyhow.workspace = true
tokio-util.workspace = true
tonic = "0.14.6"
tokio-stream.workspace = true
tokio-tungstenite = "0.24"
pyo3-async-runtimes = { version = "0.29.0", features = ["tokio", "tokio-runtime"] }
jsonschema = { version = "0.46", default-features = false }
uuid = { version = "1", features = ["v4"] }
# Native cron/scheduler (ADR-060): cron expression parsing + next-fire math.
# Chosen over hand-rolling because cron has nasty edge cases (DST, leap years,
# L/W/# specifiers) and is untrusted-spec-parsing-adjacent; a maintained crate
# is the responsible Rust-first choice. See DECISIONS.md ADR-060.
cron = "0.15"
chrono = { version = "0.4", default-features = false, features = ["clock", "std"] }