-
-
Notifications
You must be signed in to change notification settings - Fork 50
/
Cargo.toml
89 lines (80 loc) · 2.66 KB
/
Cargo.toml
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
[package]
name = "apalis-core"
version = "0.4.6"
authors = ["Njuguna Mureithi <mureithinjuguna@gmail.com>"]
edition = "2021"
license = "MIT"
description = "Core for apalis: simple, extensible multithreaded background processing for Rust"
categories = ["concurrency"]
readme = "../../README.md"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
serde = { version = "1.0", features = ["derive"] }
futures = { version = "0.3", features = ["async-await"] }
tower = { version = "0.4", features = ["util"] }
pin-project-lite = "0.2.13"
tokio = { version = "1", features = ["rt", "net"], optional = true }
async-std = { version = "1", optional = true }
smol = { version = "1.3", optional = true }
smol-timeout = { version = "0.6", optional = true }
thiserror = "1.0.50"
log = "0.4"
http = { version = "0.2.10", optional = true }
strum = { version = "0.25", features = ["derive"] }
chrono = { version = "0.4", default-features = false, optional = true, features = [
"clock",
"serde",
] }
time = { version = "0.3", optional = true, features = [
"serde"
] }
tracing-futures = { version = "0.2.5", optional = true, default-features = false }
sentry-core = { version = "0.31.8", optional = true, default-features = false }
metrics = { version = "0.21", optional = true, default-features = false }
metrics-exporter-prometheus = { version = "0.12", optional = true, default-features = false }
async-trait = { version = "0.1" }
graceful-shutdown = { version = "0.2", features = ["stream", "tokio-timeout"] }
ulid = "1.1.0"
# Needed only for sentry reporting
uuid = { version = "1.5", optional = true }
async-stream = "0.3"
[dependencies.document-features]
version = "0.2"
optional = true
[features]
default = ["tokio-comp", "extensions", "chrono"]
chrono = ["dep:chrono"]
time = ["dep:time"]
storage = ["extensions"]
mq = ["extensions"]
expose = []
layers = [
"sentry",
"prometheus",
"trace",
"retry",
"timeout",
"limit",
"filter",
"extensions",
]
sentry = ["sentry-core", "ulid/uuid", "uuid"]
prometheus = ["metrics", "metrics-exporter-prometheus"]
trace = ["tracing-futures/std-future", "tracing-futures/tokio"]
retry = ["tower/retry"]
timeout = ["tower/timeout"]
limit = ["tower/limit"]
filter = ["tower/filter"]
extensions = ["http"]
async-std-comp = ["async-std", "smol-timeout", "smol"]
tokio-comp = ["tokio"]
docsrs = ["document-features"]
[dependencies.tracing]
default_features = false
version = "0.1"
[package.metadata.docs.rs]
# defines the configuration attribute `docsrs`
rustdoc-args = ["--cfg", "docsrs"]
all-features = true
[dev-dependencies]
tokio = { version = "1.34.0", features = ["macros", "rt", "sync"] }