-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
190 lines (170 loc) · 5.4 KB
/
Copy pathCargo.toml
File metadata and controls
190 lines (170 loc) · 5.4 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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
[package]
name = "dwarf"
version = "0.9.0"
authors = ["Keith T. Star <uberfoo@me.com>"]
categories = ["compilers", "command-line-interface"]
description = "A Rust-like, typed, interpreted programming language"
documentation = "https://uberfoo.github.io/assets/docs/dwarf/introduction.html"
homepage = "https://uberfoo.github.io/assets/docs/dwarf/introduction.html"
include = [
"build.rs",
"src/**/*.rs",
"README.md",
"CHANGELOG.md",
"LICENSE-APACHE",
"LICENSE-MIT",
]
keywords = ["dwarf", "language", "interpreter", "compiler"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/uberfoo/dwarf"
edition = "2021"
[[bin]]
name = "dwarfc"
path = "src/bin/dwarfc.rs"
[[bin]]
name = "dwarf"
path = "src/bin/main.rs"
[[bin]]
name = "dwarfdb"
path = "src/bin/tui.rs"
[dependencies]
abi_stable = "0.11.2"
ansi_term = "0.12.1"
ansi-to-tui = { git = "https://github.com/uberFoo/ansi-to-tui" }
async-compat = { version = "0.2.3", optional = true }
async-condvar-fair = { version = "1.0.0", features = ["smol"], optional = true }
async-executor = { version = "1.13.1", optional = true }
async-io = { version = "2.4.0", optional = true }
async-task = { version = "4.5.0", optional = true }
ariadne = { git = "https://github.com/uberFoo/ariadne" }
backtrace = "0.3.74"
bincode = "1.3.3"
bitcode = { version = "0.6.3", features = ["serde"] }
cfg-if = "1.0.0"
chumsky = "0.9.3"
circular-queue = "0.2.6"
clap = { version = "4.5.23", features = ["derive"] }
color-backtrace = "0.6.0"
core_extensions = { version = "1.5.3", default-features = false, features = [
"std",
] }
crossbeam = { version = "0.8.2", features = ["crossbeam-channel"] }
crossterm = "0.28.1"
dap = "0.2.0-alpha1"
env_logger = "0.11.6"
futures-lite = { version = "2.5.0", optional = true }
heck = "0.5.0"
hyper = { version = "1.5.2", optional = true }
lazy_static = "1.4.0"
log = "0.4.18"
no_deadlocks = { git = "https://github.com/uberFoo/no-deadlocks", optional = true }
num_cpus = "1.16.0"
num-format = "0.4.4"
once_cell = { version = "1.20.2" }
parking_lot = { version = "0.12.1", features = [
"send_guard",
"serde",
"hardware-lock-elision",
] }
pretty_env_logger = "0.5.0"
puteketeke = { version = "0.0.5", optional = true }
ratatui = { git = "https://github.com/uberFoo/ratatui", optional = true }
regex = "1.11.1"
reqwest = { version = "0.12.5", features = ["blocking", "rustls-tls"] }
rustc-hash = "2.1.0"
rustyline = { version = "15.0.0", optional = true, features = [
"derive",
"with-file-history",
] }
sarzak = { git = "https://github.com/uberFoo/sarzak", branch = "develop", default-features = false, features = [
"sarzak-rwlock",
] }
serde = { version = "1.0.217", features = ["derive", "rc"] }
serde_json = "1.0.134"
slab = "0.4.9"
smartstring = { version = "1.0.1", features = ["serde"] }
smol = { version = "2.0.2", optional = true }
snafu = "0.8.5"
syntect = { version = "5.0.0", optional = true }
test-log = { version = "0.2.14", features = ["tracing-subscriber", "trace"] }
threadpool = "1.8.1"
tracing = { version = "0.1.41" }
tracing-subscriber = { version = "0.3.19", features = ["env-filter"] }
tracy-client = { version = "0.17.0", optional = true }
tracy-client-sys = "0.24.3"
tracing-tracy = "0.11.4"
tui-input = { version = "0.11.1", optional = true }
tui-logger = { git = "https://github.com/uberFoo/tui-logger", optional = true, default-features = false, features = [
"ratatui-support",
] }
tui-textarea = { git = "https://github.com/uberFoo/tui-textarea", optional = true, features = [
"ratatui-crossterm",
] }
tui-tree-widget = { git = "https://github.com/uberFoo/tui-rs-tree-widget", optional = true }
unicode-segmentation = "1.12.0"
uuid = { version = "1.11.0", features = ["v4", "serde"] }
dotenvy = "0.15.7"
# value = { path = "crates/value" }
# [patch.crates-io]
# puteketeke = { path = "../../github/puteketeke" }
#[patch."https://github.com/uberFoo/sarzak"]
#sarzak = { path = "../sarzak" }
[dev-dependencies]
backtrace = "0.3.67"
criterion = { version = "0.5.1", features = ["html_reports"] }
diff = "0.1.13"
itertools = "0.13.0"
[build-dependencies]
chrono = "0.4.31"
walkdir = "2.3.3"
[features]
default = ["async-executor"]
single = ["single-vec", "repl", "print-std-out"]
debug = ["sarzak/lu-dog-rc", "repl", "print-std-out"]
nd-executor = ["multi-nd-vec", "repl", "print-std-out", "async"]
async-executor = ["lu-dog-rc", "repl", "print-std-out", "async"]
tracy-client = ["dep:tracy-client"]
tui = [
"dep:tui-input",
"dep:tui-logger",
"dep:tui-textarea",
"dep:tui-tree-widget",
"dep:ratatui",
"dep:syntect",
]
repl = ["dep:rustyline"]
tracy = [
"tracy-client/enable",
"tracy-client/system-tracing",
"tracy-client/context-switch-tracing",
"tracy-client/sampling",
"tracy-client/code-transfer",
"tracy-client/broadcast",
"dep:tracy-client",
]
lu-dog-rc = ["sarzak/lu-dog-rc"]
multi-lu-dog = ["sarzak/lu-dog-rwlock"]
single-vec = ["sarzak/lu-dog-vec"]
single-vec-tracy = ["sarzak/lu-dog-vec-tracy", "dep:tracy-client"]
multi-vec = ["sarzak/lu-dog-rwlock-vec"]
pl-vec = ["sarzak/lu-dog-pl-vec"]
multi-nd-vec = ["sarzak/lu-dog-ndrwlock-vec", "dep:no_deadlocks"]
print-std-out = []
async = [
"dep:smol",
"dep:futures-lite",
"dep:async-executor",
"dep:async-io",
"dep:puteketeke",
"dep:async-compat",
"dep:async-condvar-fair",
]
[[bench]]
name = "dwarf"
harness = false
[profile.release]
lto = "thin"
codegen-units = 1
panic = "abort"
[lib]
crate-type = ["cdylib", "rlib"]