-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
112 lines (104 loc) · 3.49 KB
/
Copy pathCargo.toml
File metadata and controls
112 lines (104 loc) · 3.49 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
[workspace]
resolver = "3"
members = [
"crates/rsscript-abi-model",
"crates/rsscript-artifact",
"crates/rsscript-bytecode",
"crates/rsscript-codegen-vm",
"crates/rsscript-diagnostics",
"crates/rsscript-sdk",
"crates/rsscript-jit-cranelift",
"crates/rsscript-mir",
"crates/rsscript-provider-api",
"crates/rsscript-provider-bindgen",
"crates/rsscript-provider-conformance",
"crates/rsscript-syntax",
"crates/rsscript-core-types",
"crates/rsscript-build-support",
"crates/rsscript-project",
"crates/rsscript-review",
"crates/rsscript-runner-protocol",
"crates/rsscript-semantics",
"crates/rsscript-lowering",
"crates/rsscript-language-service",
"crates/rsscript-workspace-loader",
"crates/rsscript-vm",
"crates/rsscript-cli",
"providers/fs",
"providers/env",
"providers/process",
"providers/http",
"providers/time",
"providers/entropy",
"providers/log",
"providers/cli",
"examples/embedded-report-pipeline",
"examples/structured-async-pipeline",
"tools/rsscript-xtask",
"crates/rsscript-compiler",
"crates/lsp",
"crates/process-guard",
]
# The root workspace owns only Core, applications, the runner, and supported
# providers. Rust AOT, REIR, and self-hosting research are archived on the
# `archive/experiments-2026-09` branch and are not workspace members.
default-members = [
"crates/rsscript-abi-model",
"crates/rsscript-artifact",
"crates/rsscript-bytecode",
"crates/rsscript-codegen-vm",
"crates/rsscript-diagnostics",
"crates/rsscript-sdk",
"crates/rsscript-mir",
"crates/rsscript-provider-api",
"crates/rsscript-syntax",
"crates/rsscript-core-types",
"crates/rsscript-project",
"crates/rsscript-runner-protocol",
"crates/rsscript-semantics",
"crates/rsscript-lowering",
"crates/rsscript-language-service",
"crates/rsscript-workspace-loader",
"crates/rsscript-vm",
"crates/rsscript-cli",
"crates/rsscript-compiler",
"crates/lsp",
"crates/process-guard",
]
[workspace.package]
version = "0.1.0"
edition = "2024"
license = "MIT OR Apache-2.0"
rust-version = "1.96.1"
[workspace.dependencies]
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.10"
[workspace.lints.clippy]
dbg_macro = "deny"
todo = "deny"
unimplemented = "deny"
# Release tuning for the `rss` tool / VM. Thin LTO + a single codegen unit let the
# optimizer inline across the interpreter's hot dispatch/value helpers, which are
# spread across modules. Small but real on the interpreter (~3% on numeric loops);
# the large interpreter wins come from the native JIT, not codegen flags. Costs
# extra release build time only (dev/test builds are unaffected).
[profile.release]
lto = "thin"
codegen-units = 1
# Tooling, the LSP, and native adapters need a recoverable panic boundary in
# release builds. Native ABI dispatch catches unwinds before returning across its
# C boundary; VM program faults remain Result/EvalError values.
panic = "unwind"
# Test builds are used as a fast feedback loop, not for debugger sessions. Full
# Full debuginfo across this multi-crate workspace makes test compiles/linking much
# slower and bloats rustc incremental state, so keep test artifacts lean.
[profile.test]
debug = 0
incremental = false
# Opt-in diagnostic profile for sanitizer reproduction and platform
# postmortems without making the normal test loop pay full debug-info costs.
[profile.test-debug]
inherits = "test"
debug = 1
incremental = false