-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
86 lines (72 loc) · 2.46 KB
/
Cargo.toml
File metadata and controls
86 lines (72 loc) · 2.46 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
[workspace]
resolver = "2"
members = [
"apps/skit",
"apps/skit-cli",
"crates/core",
"crates/nodes",
"crates/engine",
"crates/api",
"crates/plugin-wasm",
"crates/plugin-native",
"sdks/plugin-sdk/wasm/rust",
"sdks/plugin-sdk/native",
]
exclude = ["examples", "tests", "plugins"]
[workspace.dependencies]
streamkit-core = { version = "0.2", path = "crates/core" }
streamkit-nodes = { version = "0.2", path = "crates/nodes" }
streamkit-engine = { version = "0.2", path = "crates/engine" }
streamkit-server = { version = "0.2", path = "apps/skit" }
streamkit-client = { version = "0.1", path = "apps/skit-cli" }
streamkit-api = { version = "0.2", path = "crates/api" }
streamkit-plugin-wasm = { version = "0.2", path = "crates/plugin-wasm" }
streamkit-plugin-native = { version = "0.2", path = "crates/plugin-native" }
streamkit-plugin-sdk-wasm = { version = "0.1", path = "sdks/plugin-sdk/wasm/rust" }
streamkit-plugin-sdk-native = { version = "0.2", path = "sdks/plugin-sdk/native" }
tracing = "0.1.44"
tokio = "1.50"
tokio-util = "0.7.18"
async-trait = "0.1.89"
thiserror = "2.0"
bytes = "1.11.0"
futures = "0.3.31"
serde = { version = "1.0.228", features = ["derive", "rc"] }
serde-saphyr = "0.0.22"
serde_json = "1.0"
indexmap = { version = "2.13", features = ["serde"] }
opentelemetry = "0.31.0"
criterion = { version = "0.5", default-features = false }
# Profile settings
[profile.release]
debug = 1 # Include line tables for better stack traces in profiling
# Optimised release build — use `cargo build --profile release-lto`.
# All official Dockerfiles use this profile for the skit binary.
[profile.release-lto]
inherits = "release"
lto = "thin" # Parallel cross-crate LTO — nearly as effective as "fat" but links much faster
codegen-units = 16 # Allow parallel LLVM codegen/LTO (thin LTO handles cross-unit optimisation)
[profile.dev]
debug = 2 # Full debug info for development profiling
[workspace.lints.rust]
unsafe_code = "forbid"
# missing_debug_implementations = "warn"
# missing_copy_implementations = "warn"
# missing_docs = "warn"
[workspace.lints.clippy]
# Categories
pedantic = { level = "warn", priority = -1 }
nursery = { level = "warn", priority = -1 }
# Safety
unwrap_used = "warn"
expect_used = "warn"
# Complexity
cognitive_complexity = "warn"
# Math
cast_possible_truncation = "warn"
cast_precision_loss = "warn"
cast_sign_loss = "warn"
# Allow-list (Noise reduction)
module_name_repetitions = "allow"
must_use_candidate = "allow"
doc_markdown = "allow"