Files
modeling-app/rust/kcl-lib/Cargo.toml
Jess Frazelle 4439229ad2 turn back on the test i tturned off (#6522)
* random other cahnges

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* turn back on test

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* docs

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* lots of enhancements

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* cleanup

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* mesh test

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* mesh test

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* check panics

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* check panics

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* check panics

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* cleanup

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* if running in vitest make single threadedd

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* check if running in vitest

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* console logs

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
2025-04-27 23:54:32 +00:00

164 lines
4.6 KiB
TOML

[package]
name = "kcl-lib"
description = "KittyCAD Language implementation and tools"
version = "0.2.64"
edition = "2021"
license = "MIT"
repository = "https://github.com/KittyCAD/modeling-app"
rust-version = "1.83"
authors = ["Jess Frazelle", "Adam Chalmers", "KittyCAD, Inc"]
keywords = ["kcl", "KittyCAD", "CAD"]
exclude = ["tests/*", "benches/*", "examples/*", "e2e/*", "bindings/*", "fuzz/*"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lib]
bench = false
[[bin]]
name = "kcl-lib-bin"
path = "src/main.rs"
bench = false
[dependencies]
anyhow = { workspace = true, features = ["backtrace"] }
async-recursion = "1.1.1"
async-trait = { workspace = true }
base64 = "0.22.1"
bson = { workspace = true }
chrono = "0.4.38"
clap = { version = "4.5.36", default-features = false, optional = true, features = [
"std",
"derive",
] }
convert_case = "0.8.0"
dashmap = { workspace = true }
dhat = { version = "0.3", optional = true }
fnv = "1.0.7"
form_urlencoded = "1.2.1"
futures = { version = "0.3.31" }
git_rev = "0.1.0"
gltf-json = "1.4.1"
http = { workspace = true }
image = { version = "0.25.6", default-features = false, features = ["png"] }
indexmap = { workspace = true, features = ["serde"] }
itertools = "0.13.0"
kcl-derive-docs = { version = "0.1", path = "../kcl-derive-docs" }
kittycad = { workspace = true }
kittycad-modeling-cmds = { workspace = true }
lazy_static = { workspace = true }
measurements = "0.11.0"
miette = { workspace = true }
mime_guess = "2.0.5"
parse-display = "0.10.0"
pyo3 = { workspace = true, optional = true }
regex = "1.11.1"
reqwest = { version = "0.12", default-features = false, features = [
"stream",
"rustls-tls",
] }
rgba_simple = "0.10.0"
ropey = "1.6.1"
schemars = { version = "0.8.17", features = [
"impl_json_schema",
"indexmap2",
"url",
"uuid1",
"preserve_order",
] }
serde = { workspace = true }
serde_json = { workspace = true }
sha2 = "0.10.8"
tabled = { version = "0.18.0", optional = true }
tempfile = "3.19"
thiserror = "2.0.0"
toml = "0.8.19"
ts-rs = { version = "10.1.0", features = [
"uuid-impl",
"url-impl",
"chrono-impl",
"indexmap-impl",
"no-serde-warnings",
"serde-json-impl",
] }
tynm = "0.1.10"
url = { version = "2.5.4", features = ["serde"] }
uuid = { workspace = true, features = ["v4", "v5", "js", "serde"] }
validator = { version = "0.20.0", features = ["derive"] }
web-time = "1.1"
winnow = "=0.6.24"
zip = { workspace = true }
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = { workspace = true }
futures-lite = "2.6.0"
instant = { version = "0.1.13", features = ["wasm-bindgen", "inaccurate"] }
js-sys = { version = "0.3.72" }
tokio = { workspace = true, features = ["sync", "time"] }
tower-lsp = { workspace = true, features = ["runtime-agnostic"] }
wasm-bindgen = "0.2.99"
wasm-bindgen-futures = "0.4.49"
wasm-timer = { package = "zduny-wasm-timer", version = "0.2.5" }
web-sys = { version = "0.3.76", features = ["console"] }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
instant = "0.1.13"
tokio = { workspace = true, features = ["full"] }
tokio-tungstenite = { version = "0.24.0", features = [
"rustls-tls-native-roots",
] }
tower-lsp = { workspace = true, features = ["proposed", "default"] }
[features]
default = ["cli", "engine"]
artifact-graph = []
benchmark-execution = []
cli = ["dep:clap", "kittycad/clap"]
dhat-heap = ["dep:dhat"]
# For the lsp server, when run with stdout for rpc we want to disable println.
# This is used for editor extensions that use the lsp server.
disable-println = []
engine = []
pyo3 = ["dep:pyo3"]
# Helper functions also used in benchmarks.
lsp-test-util = []
tabled = ["dep:tabled"]
[dev-dependencies]
approx = "0.5"
base64 = "0.22.1"
criterion = { version = "0.5.1", features = ["async_tokio"] }
expectorate = "1.1.0"
handlebars = "6.3.2"
image = { version = "0.25.6", default-features = false, features = ["png"] }
insta = { version = "1.42.2", features = ["json", "filters", "redactions"] }
kcl-directory-test-macro = { version = "0.1", path = "../kcl-directory-test-macro" }
miette = { version = "7.5.0", features = ["fancy"] }
pretty_assertions = "1.4.1"
tokio = { version = "1.44.2", features = ["rt-multi-thread", "macros", "time"] }
twenty-twenty = "0.8.0"
[lints]
workspace = true
[[bench]]
name = "compiler_benchmark_criterion"
harness = false
[[bench]]
name = "digest_benchmark"
harness = false
[[bench]]
name = "lsp_semantic_tokens_benchmark_criterion"
harness = false
required-features = ["lsp-test-util"]
[[bench]]
name = "benchmark_kcl_samples"
harness = false
[[test]]
name = "executor"
path = "e2e/executor/main.rs"
required-features = ["engine"]