-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathCargo.toml
More file actions
119 lines (105 loc) · 6.29 KB
/
Copy pathCargo.toml
File metadata and controls
119 lines (105 loc) · 6.29 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
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
[workspace]
# Resolver 3 is default in the 2024 Edition, but the workspace doesn't know that
resolver = "3"
members = [
"opsqueue/",
"libs/opsqueue_python",
"workspace-hack",
]
[workspace.metadata.hakari]
hakari-package = "workspace-hack"
[workspace.package]
edition = "2024"
version = "0.40.1"
[workspace.dependencies]
anyhow = { version = "1.0.102", default-features = false }
arc-swap = { version = "1.9.1", default-features = false }
assert_matches = { version = "1.5.0", default-features = false }
axum = { version = "0.8.9", default-features = false, features = ["ws", "macros"] }
axum-prometheus = { version = "0.10.0", default-features = false, features = ["prometheus"] }
backon = { version = "1.3.0", default-features = false, features = ["tokio-sleep"] }
chrono = { version = "0.4.44", default-features = false, features = ["serde"] }
ciborium = { version = "0.2.2", default-features = false, features = ["std"] }
clap = { version = "4.5.60", default-features = false, features = ["derive", "std"] }
criterion = { version = "0.8", default-features = false, features = ["async_tokio"] }
crossbeam-skiplist = { version = "0.1.3", default-features = false, features = ["std"] }
dashmap = { version = "6.1.0", default-features = false, features = ["serde"]}
either = { version = "1.13.0", default-features = false }
futures = { version = "0.3.32", default-features = false }
http = { version = "1.4.0", default-features = false }
humantime = { version = "2.1.0", default-features = false }
insta = { version = "1.47.2", default-features = false }
itertools = { version = "0.15.0", default-features = false }
libsqlite3-sys = { version = "0.30.1", default-features = false }
moka = { version = "0.12.15", default-features = false, features = ["sync"] }
moro-local = { version = "0.4.0", default-features = false }
object_store = { version = "0.14.0", default-features = false, features = ["gcp", "http", "fs"] }
once_cell = { version = "1.21.4", default-features = false }
opentelemetry = { version = "0.32", default-features = false, features = ["trace"] }
opentelemetry-http = { version = "0.32", default-features = false }
opentelemetry-otlp = { version = "0.32", default-features = false, features = ["grpc-tonic", "trace", "http-proto", "reqwest-blocking-client"] }
opentelemetry-resource-detectors = { version = "0.11.0", default-features = false }
opentelemetry-semantic-conventions = { version = "0.32.0", default-features = false, features = ["semconv_experimental"] }
opentelemetry_sdk = { version = "0.32", default-features = false, features = ["trace", "rt-tokio"] }
opsqueue = { path = "opsqueue", default-features = false }
pyo3 = { version = "0.28.3", default-features = false, features = ["chrono"] }
pyo3-async-runtimes = { version = "0.28.0", default-features = false, features = ["tokio-runtime", "unstable-streams"] }
pyo3-log = { version = "0.13.3", default-features = false }
rand = { version = "0.10.1", default-features = false }
reqwest = { version = "0.13.2", default-features = false, features = ["json"] }
rustc-hash = { version = "2.1.2", default-features = false, features = ["std"] }
sentry = { version = "0.48", default-features = false, features = ["rustls", "reqwest", "anyhow", "backtrace", "contexts", "tracing", "panic"] }
sentry-tracing = { version = "0.48", default-features = false }
serde = { version = "1.0.203", default-features = false, features = ["derive"] }
serde-error = { version = "0.1.3", default-features = false }
serde_json = { version = "1.0.149", default-features = false }
snowflaked = { version = "1.0.3", default-features = false, features = ["sync"] }
sqlformat = { version = "0.5.0", default-features = false }
sqlx = { version = "0.9.0", default-features = false, features = ["chrono", "derive", "json", "macros", "migrate", "runtime-tokio", "sqlite"] }
thiserror = { version = "2.0.18", default-features = false }
tokio = { version = "1.52.1", default-features = false, features = ["macros", "signal", "rt-multi-thread"] }
tokio-tungstenite = { version = "0.30.0", default-features = false, features = ["connect", "stream"] }
tokio-util = { version = "0.7.18", default-features = false, features = ["io", "rt", "time"] }
tower-http = { version = "0.7.0", default-features = false, features = ["trace", "catch-panic"] }
tracing = { version = "0.1.41", default-features = false, features = ["log"] }
tracing-opentelemetry = { version = "0.33.0", default-features = false }
tracing-subscriber = { version = "0.3", default-features = false, features = ["std", "env-filter", "fmt"] }
url = { version = "2.5.2", default-features = false }
# Intentional lower bound this is to avoid building ICU4X and instead rely on `unicode.rs`.
# See: https://docs.rs/crate/idna_adapter/latest
idna_adapter = { version = "1.1.0", default-features = false }
uuid = { version = "1.23.1", default-features = false, features = ["v7", "fast-rng", "serde"] }
ux = { version = "0.1.6", default-features = false }
workspace-hack = { version = "0.1", path = "workspace-hack" }
[workspace.lints.clippy]
cargo = { level = "deny", priority = -1 }
cargo_common_metadata = "allow"
complexity = { level = "deny", priority = -1 }
correctness = { level = "deny", priority = -1 }
# nursery, new untested lints
nursery = { level = "allow", priority = -1 }
pedantic = { level = "deny", priority = -1 }
perf = { level = "deny", priority = -1 }
# restriction, lints that can enforce a coherent code style
restriction = { level = "allow", priority = -1 }
style = { level = "deny", priority = -1 }
suspicious = { level = "deny", priority = -1 }
# Prevent duplicate versions of crates from being used in the workspace. If an easy fix is not
# possible, you can add the crate to the `allowed-duplicate-crates` list in `clippy.toml`.
multiple_crate_versions = "deny"
[profile.release]
# Full fat LTO makes a big difference in performance, at the cost of a large
# compile time hit. You should only use release builds when performance matters.
# Prefer debug builds during regular development.
lto = 'fat'
# Enable optimizations for dependencies even in dev builds, but not for our code:
[profile.dev.package."*"]
opt-level = 3
# Enable optimizations for proc macros etc.
# Esp. important for the sqlx macros
[profile.dev.build-override]
opt-level = 3
[profile.release.build-override]
opt-level = 3
[patch.crates-io]
snowflaked = { git = "https://github.com/channable/snowflaked-rs.git" }