2023-02-21 09:42:41 +11:00
|
|
|
# This file is automatically @generated by Cargo.
|
|
|
|
# It is not intended for manual editing.
|
|
|
|
version = 3
|
|
|
|
|
2023-08-19 23:18:54 -07:00
|
|
|
[[package]]
|
|
|
|
name = "Inflector"
|
|
|
|
version = "0.11.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"lazy_static",
|
|
|
|
"regex",
|
|
|
|
]
|
2023-08-19 23:18:54 -07:00
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
|
|
|
name = "addr2line"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.24.2"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1"
|
2023-08-18 19:37:52 +10:00
|
|
|
dependencies = [
|
|
|
|
"gimli",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2024-10-01 11:05:44 -07:00
|
|
|
name = "adler2"
|
|
|
|
version = "2.0.0"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
|
2023-08-18 19:37:52 +10:00
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ahash"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.8.11"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
2023-08-30 21:05:35 -07:00
|
|
|
"cfg-if",
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.2.15",
|
2023-08-28 14:58:24 -07:00
|
|
|
"once_cell",
|
|
|
|
"version_check",
|
2023-10-24 11:24:59 -07:00
|
|
|
"zerocopy",
|
2023-08-28 14:58:24 -07:00
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
|
|
|
name = "aho-corasick"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.1.3"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "android-tzdata"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "android_system_properties"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "anes"
|
|
|
|
version = "0.1.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
|
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "anstream"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.6.18"
|
2024-10-01 12:45:01 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b"
|
2024-10-01 12:45:01 -07:00
|
|
|
dependencies = [
|
|
|
|
"anstyle",
|
|
|
|
"anstyle-parse",
|
|
|
|
"anstyle-query",
|
|
|
|
"anstyle-wincon",
|
|
|
|
"colorchoice",
|
|
|
|
"is_terminal_polyfill",
|
|
|
|
"utf8parse",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "anstyle"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.10"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9"
|
2023-09-05 16:02:27 -07:00
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "anstyle-parse"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.6"
|
2024-10-01 12:45:01 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9"
|
2024-10-01 12:45:01 -07:00
|
|
|
dependencies = [
|
|
|
|
"utf8parse",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle-query"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.1.2"
|
2024-10-01 12:45:01 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c"
|
2024-10-01 12:45:01 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2024-10-01 12:45:01 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle-wincon"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "3.0.7"
|
2024-10-01 12:45:01 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e"
|
2024-10-01 12:45:01 -07:00
|
|
|
dependencies = [
|
|
|
|
"anstyle",
|
2025-02-05 17:53:49 +13:00
|
|
|
"once_cell",
|
|
|
|
"windows-sys 0.59.0",
|
2024-10-01 12:45:01 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
|
|
|
name = "anyhow"
|
2025-02-25 10:29:59 -06:00
|
|
|
version = "1.0.96"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-25 10:29:59 -06:00
|
|
|
checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "approx"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "08abcc3b4e9339e33a3d0a5ed15d84a687350c05689d825e0f6655eef9e76a94"
|
|
|
|
|
2024-02-11 12:59:00 +11:00
|
|
|
[[package]]
|
|
|
|
name = "approx"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
|
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2024-02-11 12:59:00 +11:00
|
|
|
]
|
|
|
|
|
2024-05-20 22:07:56 -07:00
|
|
|
[[package]]
|
|
|
|
name = "arbitrary"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.4.1"
|
2024-05-20 22:07:56 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223"
|
2024-05-20 22:07:56 -07:00
|
|
|
dependencies = [
|
|
|
|
"derive_arbitrary",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "async-codec-lite"
|
|
|
|
version = "0.0.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2527c30e3972d8ff366b353125dae828c4252a154dbe6063684f6c5e014760a3"
|
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
|
|
|
"bytes",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
"futures-sink",
|
|
|
|
"log",
|
|
|
|
"pin-project-lite",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-09-20 18:27:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "async-recursion"
|
2024-04-25 22:02:00 -07:00
|
|
|
version = "1.1.1"
|
2023-09-20 18:27:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-04-25 22:02:00 -07:00
|
|
|
checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
|
2023-09-20 18:27:08 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-20 18:27:08 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "async-trait"
|
2025-01-07 12:54:16 -08:00
|
|
|
version = "0.1.85"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-07 12:54:16 -08:00
|
|
|
checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "auto_impl"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.2.1"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "autocfg"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.4.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
|
|
|
name = "backtrace"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.74"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a"
|
2023-08-18 19:37:52 +10:00
|
|
|
dependencies = [
|
|
|
|
"addr2line",
|
|
|
|
"cfg-if",
|
|
|
|
"libc",
|
|
|
|
"miniz_oxide",
|
|
|
|
"object",
|
|
|
|
"rustc-demangle",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2023-08-18 19:37:52 +10:00
|
|
|
]
|
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "backtrace-ext"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "537beee3be4a18fb023b570f80e3ae28003db9167a751266b259926e25539d50"
|
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "base64"
|
|
|
|
version = "0.13.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
|
|
|
|
|
2024-03-26 21:28:50 -07:00
|
|
|
[[package]]
|
|
|
|
name = "base64"
|
2024-05-01 09:47:32 -07:00
|
|
|
version = "0.22.1"
|
2024-03-26 21:28:50 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-05-01 09:47:32 -07:00
|
|
|
checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
|
2024-03-26 21:28:50 -07:00
|
|
|
|
2023-09-20 17:36:26 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bigdecimal"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.7"
|
2023-09-20 17:36:26 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "7f31f3af01c5c65a07985c804d3366560e6fa7883d640a122819b14ec327482c"
|
2023-09-20 17:36:26 -07:00
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"libm",
|
|
|
|
"num-bigint",
|
|
|
|
"num-integer",
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-09-20 17:36:26 -07:00
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-08-02 16:23:17 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bincode"
|
|
|
|
version = "1.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
|
|
|
version = "1.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.8.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bitvec"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c"
|
|
|
|
dependencies = [
|
|
|
|
"funty",
|
|
|
|
"radium",
|
|
|
|
"tap",
|
|
|
|
"wyz",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "block-buffer"
|
|
|
|
version = "0.10.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
|
|
|
|
dependencies = [
|
|
|
|
"generic-array",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bson"
|
2024-09-20 10:21:11 -07:00
|
|
|
version = "2.13.0"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-20 10:21:11 -07:00
|
|
|
checksum = "068208f2b6fcfa27a7f1ee37488d2bb8ba2640f68f5475d08e1d9130696aba59"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"ahash",
|
|
|
|
"base64 0.13.1",
|
|
|
|
"bitvec",
|
|
|
|
"chrono",
|
|
|
|
"hex",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2023-08-28 14:58:24 -07:00
|
|
|
"js-sys",
|
2023-08-30 21:05:35 -07:00
|
|
|
"once_cell",
|
2024-09-18 17:04:04 -05:00
|
|
|
"rand 0.8.5",
|
2023-08-28 14:58:24 -07:00
|
|
|
"serde",
|
|
|
|
"serde_bytes",
|
|
|
|
"serde_json",
|
2023-09-14 15:05:07 -06:00
|
|
|
"time",
|
2023-08-28 14:58:24 -07:00
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
|
|
|
name = "bumpalo"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "3.16.0"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2024-07-25 18:02:49 -04:00
|
|
|
[[package]]
|
|
|
|
name = "bytecount"
|
|
|
|
version = "0.6.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce"
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bytemuck"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.21.0"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3"
|
2023-09-12 14:59:40 -07:00
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "byteorder"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "1.5.0"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2024-08-04 00:51:30 -04:00
|
|
|
[[package]]
|
|
|
|
name = "byteorder-lite"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495"
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "bytes"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.9.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "cast"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
|
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
|
|
|
name = "cc"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.2.10"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"shlex",
|
|
|
|
]
|
2023-08-18 19:37:52 +10:00
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
|
|
|
name = "cfg-if"
|
|
|
|
version = "1.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
|
|
|
|
2025-02-05 17:53:49 +13:00
|
|
|
[[package]]
|
|
|
|
name = "cfg_aliases"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724"
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "cgmath"
|
|
|
|
version = "0.16.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "64a4b57c8f4e3a2e9ac07e0f6abc9c24b6fc9e1b54c3478cfb598f3d0023e51c"
|
|
|
|
dependencies = [
|
|
|
|
"approx 0.1.1",
|
|
|
|
"mint",
|
|
|
|
"num-traits 0.1.43",
|
|
|
|
"rand 0.4.6",
|
|
|
|
]
|
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "chrono"
|
2024-12-13 13:07:52 -06:00
|
|
|
version = "0.4.39"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-12-13 13:07:52 -06:00
|
|
|
checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"android-tzdata",
|
2023-08-25 13:41:04 -07:00
|
|
|
"iana-time-zone",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"js-sys",
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-08-18 08:12:32 -07:00
|
|
|
"serde",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"wasm-bindgen",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "ciborium"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.2.2"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
|
2023-09-20 13:15:28 -05:00
|
|
|
dependencies = [
|
|
|
|
"ciborium-io",
|
|
|
|
"ciborium-ll",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ciborium-io"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.2.2"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
|
2023-09-20 13:15:28 -05:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ciborium-ll"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.2.2"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
|
2023-09-20 13:15:28 -05:00
|
|
|
dependencies = [
|
|
|
|
"ciborium-io",
|
2024-03-23 15:45:55 -07:00
|
|
|
"half",
|
2023-09-20 13:15:28 -05:00
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "clap"
|
2025-01-27 21:29:09 +00:00
|
|
|
version = "4.5.27"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-27 21:29:09 +00:00
|
|
|
checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"clap_builder",
|
2023-09-14 15:05:07 -06:00
|
|
|
"clap_derive",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_builder"
|
2025-01-27 21:29:09 +00:00
|
|
|
version = "4.5.27"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-27 21:29:09 +00:00
|
|
|
checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
2024-10-01 12:45:01 -07:00
|
|
|
"anstream",
|
2023-09-05 16:02:27 -07:00
|
|
|
"anstyle",
|
2023-09-14 15:05:07 -06:00
|
|
|
"clap_lex",
|
2024-10-01 12:45:01 -07:00
|
|
|
"strsim",
|
|
|
|
"unicase",
|
2024-10-02 12:59:01 -07:00
|
|
|
"unicode-width 0.2.0",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_derive"
|
2025-01-27 21:29:09 +00:00
|
|
|
version = "4.5.24"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-27 21:29:09 +00:00
|
|
|
checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
2024-03-21 03:57:58 +00:00
|
|
|
"heck 0.5.0",
|
2023-09-05 16:02:27 -07:00
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_lex"
|
2025-01-06 08:07:38 -08:00
|
|
|
version = "0.7.4"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-06 08:07:38 -08:00
|
|
|
checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6"
|
2023-09-05 16:02:27 -07:00
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "colorchoice"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.3"
|
2024-10-01 12:45:01 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
|
2024-10-01 12:45:01 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "colored"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.2.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"lazy_static",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "console"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.15.10"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"encode_unicode",
|
|
|
|
"libc",
|
2025-02-05 17:53:49 +13:00
|
|
|
"once_cell",
|
|
|
|
"unicode-width 0.2.0",
|
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-03-11 17:50:31 -07:00
|
|
|
[[package]]
|
|
|
|
name = "console_error_panic_hook"
|
|
|
|
version = "0.1.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "convert_case"
|
2025-03-03 10:03:47 -08:00
|
|
|
version = "0.8.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-03-03 10:03:47 -08:00
|
|
|
checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"unicode-segmentation",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "core-foundation"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.10.0"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"core-foundation-sys",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "core-foundation-sys"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.8.7"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "cpufeatures"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.17"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "crc32fast"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.4.2"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "criterion"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
|
|
|
|
dependencies = [
|
|
|
|
"anes",
|
|
|
|
"cast",
|
|
|
|
"ciborium",
|
|
|
|
"clap",
|
|
|
|
"criterion-plot",
|
2024-06-27 15:43:49 -07:00
|
|
|
"futures",
|
2023-09-20 13:15:28 -05:00
|
|
|
"is-terminal",
|
|
|
|
"itertools 0.10.5",
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-09-20 13:15:28 -05:00
|
|
|
"once_cell",
|
|
|
|
"oorandom",
|
|
|
|
"plotters",
|
|
|
|
"rayon",
|
|
|
|
"regex",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
|
|
|
"serde_json",
|
|
|
|
"tinytemplate",
|
2024-06-27 15:43:49 -07:00
|
|
|
"tokio",
|
2023-09-20 13:15:28 -05:00
|
|
|
"walkdir",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "criterion-plot"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
|
|
|
|
dependencies = [
|
|
|
|
"cast",
|
|
|
|
"itertools 0.10.5",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-deque"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.8.6"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"crossbeam-epoch",
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-epoch"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.9.18"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-utils"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.8.21"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "crunchy"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.3"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929"
|
2023-09-12 14:59:40 -07:00
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "crypto-common"
|
|
|
|
version = "0.1.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
|
|
|
|
dependencies = [
|
|
|
|
"generic-array",
|
|
|
|
"typenum",
|
|
|
|
]
|
|
|
|
|
2024-04-25 00:13:09 -07:00
|
|
|
[[package]]
|
|
|
|
name = "darling"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.20.10"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989"
|
2024-04-25 00:13:09 -07:00
|
|
|
dependencies = [
|
|
|
|
"darling_core",
|
|
|
|
"darling_macro",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "darling_core"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.20.10"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5"
|
2024-04-25 00:13:09 -07:00
|
|
|
dependencies = [
|
|
|
|
"fnv",
|
|
|
|
"ident_case",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2024-08-24 17:47:09 -07:00
|
|
|
"strsim",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-04-25 00:13:09 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "darling_macro"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.20.10"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
|
2024-04-25 00:13:09 -07:00
|
|
|
dependencies = [
|
|
|
|
"darling_core",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-04-25 00:13:09 -07:00
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "dashmap"
|
|
|
|
version = "5.5.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
2024-10-01 11:05:44 -07:00
|
|
|
"hashbrown 0.14.5",
|
2023-09-05 16:02:27 -07:00
|
|
|
"lock_api",
|
|
|
|
"once_cell",
|
2025-03-01 13:59:01 -08:00
|
|
|
"parking_lot_core",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2024-06-24 21:37:34 -07:00
|
|
|
[[package]]
|
|
|
|
name = "dashmap"
|
2024-09-06 10:07:51 -07:00
|
|
|
version = "6.1.0"
|
2024-06-24 21:37:34 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-06 10:07:51 -07:00
|
|
|
checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
|
2024-06-24 21:37:34 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"crossbeam-utils",
|
2024-10-01 11:05:44 -07:00
|
|
|
"hashbrown 0.14.5",
|
2024-06-24 21:37:34 -07:00
|
|
|
"lock_api",
|
|
|
|
"once_cell",
|
2025-03-01 13:59:01 -08:00
|
|
|
"parking_lot_core",
|
2024-06-24 21:37:34 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "data-encoding"
|
2025-02-19 13:30:26 -05:00
|
|
|
version = "2.8.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-19 13:30:26 -05:00
|
|
|
checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "deranged"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.3.11"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
|
|
|
"powerfmt",
|
|
|
|
]
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-05-20 22:07:56 -07:00
|
|
|
[[package]]
|
|
|
|
name = "derive_arbitrary"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.4.1"
|
2024-05-20 22:07:56 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800"
|
2024-05-20 22:07:56 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-05-20 22:07:56 -07:00
|
|
|
]
|
|
|
|
|
2025-01-13 13:03:34 -05:00
|
|
|
[[package]]
|
|
|
|
name = "derive_builder"
|
|
|
|
version = "0.20.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947"
|
|
|
|
dependencies = [
|
|
|
|
"derive_builder_macro",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "derive_builder_core"
|
|
|
|
version = "0.20.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8"
|
|
|
|
dependencies = [
|
|
|
|
"darling",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 15:38:24 -05:00
|
|
|
"syn 2.0.96",
|
2025-01-13 13:03:34 -05:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "derive_builder_macro"
|
|
|
|
version = "0.20.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c"
|
|
|
|
dependencies = [
|
|
|
|
"derive_builder_core",
|
2025-01-13 15:38:24 -05:00
|
|
|
"syn 2.0.96",
|
2025-01-13 13:03:34 -05:00
|
|
|
]
|
|
|
|
|
2024-11-28 11:27:17 +13:00
|
|
|
[[package]]
|
|
|
|
name = "dhat"
|
|
|
|
version = "0.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "98cd11d84628e233de0ce467de10b8633f4ddaecafadefc86e13b84b8739b827"
|
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
"lazy_static",
|
|
|
|
"mintex",
|
2025-03-01 13:59:01 -08:00
|
|
|
"parking_lot",
|
2024-11-28 11:27:17 +13:00
|
|
|
"rustc-hash 1.1.0",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"thousands",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "diff"
|
|
|
|
version = "0.1.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8"
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "digest"
|
|
|
|
version = "0.10.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
|
|
|
|
dependencies = [
|
|
|
|
"block-buffer",
|
|
|
|
"crypto-common",
|
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "displaydoc"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.2.5"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "dyn-clone"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.0.17"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "either"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.13.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "encode_unicode"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "enum-iterator"
|
|
|
|
version = "2.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c280b9e6b3ae19e152d8e31cf47f18389781e119d4013a2a2bb0180e5facc635"
|
|
|
|
dependencies = [
|
|
|
|
"enum-iterator-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "enum-iterator-derive"
|
|
|
|
version = "1.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-09-18 17:04:04 -05:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "equivalent"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "errno"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.10"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "euler"
|
|
|
|
version = "0.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3f19d11568a4a46aee488bdab3a2963e5e2c3cfd6091aa0abceaddcea82c0bc1"
|
|
|
|
dependencies = [
|
|
|
|
"approx 0.1.1",
|
|
|
|
"cgmath",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "expectorate"
|
2023-09-27 08:39:16 -07:00
|
|
|
version = "1.1.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-09-27 08:39:16 -07:00
|
|
|
checksum = "de6f19b25bdfa2747ae775f37cd109c31f1272d4e4c83095be0727840aa1d75f"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"console",
|
|
|
|
"newline-converter",
|
|
|
|
"similar",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fastrand"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.3.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "fdeflate"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.7"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"simd-adler32",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "flate2"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.35"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"crc32fast",
|
|
|
|
"miniz_oxide",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "fnv"
|
|
|
|
version = "1.0.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "form_urlencoded"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.2.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"percent-encoding",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "format_serde_error"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e5837b8e6a4001f99fe4746767fb7379e8510c508a843caa136cc12ed9c0bad0"
|
|
|
|
dependencies = [
|
|
|
|
"colored",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
2024-03-23 15:45:55 -07:00
|
|
|
"serde_yaml",
|
2023-08-25 13:41:04 -07:00
|
|
|
"unicode-segmentation",
|
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "fuchsia-cprng"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "funty"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c"
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "futures"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-channel",
|
|
|
|
"futures-core",
|
|
|
|
"futures-executor",
|
|
|
|
"futures-io",
|
|
|
|
"futures-sink",
|
|
|
|
"futures-task",
|
|
|
|
"futures-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-channel"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
"futures-sink",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-core"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-executor"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
"futures-task",
|
|
|
|
"futures-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-io"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-macro"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-sink"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-task"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-util"
|
2024-10-07 13:49:15 -04:00
|
|
|
version = "0.3.31"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 13:49:15 -04:00
|
|
|
checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-channel",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
"futures-macro",
|
|
|
|
"futures-sink",
|
|
|
|
"futures-task",
|
|
|
|
"memchr",
|
|
|
|
"pin-project-lite",
|
|
|
|
"pin-utils",
|
|
|
|
"slab",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "generic-array"
|
|
|
|
version = "0.14.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
|
|
|
|
dependencies = [
|
|
|
|
"typenum",
|
|
|
|
"version_check",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "getrandom"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.2.15"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"js-sys",
|
|
|
|
"libc",
|
2025-02-19 13:30:26 -05:00
|
|
|
"wasi 0.11.0+wasi-snapshot-preview1",
|
2023-08-18 08:12:32 -07:00
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
2025-02-19 13:30:26 -05:00
|
|
|
[[package]]
|
|
|
|
name = "getrandom"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"libc",
|
|
|
|
"wasi 0.13.3+wasi-0.2.2",
|
|
|
|
"windows-targets",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "gimli"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.31.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2024-04-09 18:05:36 -07:00
|
|
|
[[package]]
|
|
|
|
name = "git_rev"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "60884563ea313b5037683cd5d44f1e14e9cb07b08543756242a65887f9cff48e"
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "gloo-utils"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa"
|
|
|
|
dependencies = [
|
|
|
|
"js-sys",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
2024-02-12 12:18:37 -08:00
|
|
|
[[package]]
|
|
|
|
name = "gltf-derive"
|
2024-05-13 16:26:42 -07:00
|
|
|
version = "1.4.1"
|
2024-02-12 12:18:37 -08:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-05-13 16:26:42 -07:00
|
|
|
checksum = "14070e711538afba5d6c807edb74bcb84e5dbb9211a3bf5dea0dfab5b24f4c51"
|
2024-02-12 12:18:37 -08:00
|
|
|
dependencies = [
|
|
|
|
"inflections",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-02-12 12:18:37 -08:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "gltf-json"
|
2024-05-13 16:26:42 -07:00
|
|
|
version = "1.4.1"
|
2024-02-12 12:18:37 -08:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-05-13 16:26:42 -07:00
|
|
|
checksum = "e6176f9d60a7eab0a877e8e96548605dedbde9190a7ae1e80bbcc1c9af03ab14"
|
2024-02-12 12:18:37 -08:00
|
|
|
dependencies = [
|
|
|
|
"gltf-derive",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
|
|
|
"serde_json",
|
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "half"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "2.4.1"
|
2024-03-19 16:19:57 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
2024-03-23 15:45:55 -07:00
|
|
|
"cfg-if",
|
2023-09-12 14:59:40 -07:00
|
|
|
"crunchy",
|
|
|
|
]
|
|
|
|
|
2024-09-27 07:37:46 -07:00
|
|
|
[[package]]
|
|
|
|
name = "handlebars"
|
2025-01-13 13:03:34 -05:00
|
|
|
version = "6.3.0"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-13 13:03:34 -05:00
|
|
|
checksum = "3d6b224b95c1e668ac0270325ad563b2eef1469fbbb8959bc7c692c844b813d9"
|
2024-09-27 07:37:46 -07:00
|
|
|
dependencies = [
|
2025-01-13 13:03:34 -05:00
|
|
|
"derive_builder",
|
2024-09-27 07:37:46 -07:00
|
|
|
"log",
|
2024-10-29 23:01:31 -04:00
|
|
|
"num-order",
|
2024-09-27 07:37:46 -07:00
|
|
|
"pest",
|
|
|
|
"pest_derive",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-09-27 07:37:46 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "hashbrown"
|
|
|
|
version = "0.12.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "hashbrown"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.14.5"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-10-02 12:58:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "hashbrown"
|
2024-12-04 15:40:46 -05:00
|
|
|
version = "0.15.2"
|
2024-10-02 12:58:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-12-04 15:40:46 -05:00
|
|
|
checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
|
2024-10-02 12:58:51 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "heck"
|
|
|
|
version = "0.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
|
|
|
|
|
2024-03-21 03:57:58 +00:00
|
|
|
[[package]]
|
|
|
|
name = "heck"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "hermit-abi"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "hex"
|
|
|
|
version = "0.4.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "home"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.5.11"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "http"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.2.12"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"fnv",
|
|
|
|
"itoa",
|
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "http"
|
2024-12-13 13:07:52 -06:00
|
|
|
version = "1.2.0"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-12-13 13:07:52 -06:00
|
|
|
checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"fnv",
|
|
|
|
"itoa",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "http-body"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.4.6"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
2024-03-23 15:45:55 -07:00
|
|
|
"http 0.2.12",
|
2023-08-25 13:41:04 -07:00
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "http-body"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184"
|
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "http-body-util"
|
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
|
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"futures-util",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"http-body 1.0.1",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "httparse"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.9.5"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
2023-08-25 13:41:04 -07:00
|
|
|
name = "httpdate"
|
|
|
|
version = "1.0.3"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-25 13:41:04 -07:00
|
|
|
checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
|
|
|
[[package]]
|
2023-08-25 13:41:04 -07:00
|
|
|
name = "hyper"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.14.32"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-08-25 13:41:04 -07:00
|
|
|
"bytes",
|
|
|
|
"futures-channel",
|
|
|
|
"futures-core",
|
|
|
|
"futures-util",
|
2024-03-23 15:45:55 -07:00
|
|
|
"http 0.2.12",
|
2024-10-01 11:05:44 -07:00
|
|
|
"http-body 0.4.6",
|
2023-08-25 13:41:04 -07:00
|
|
|
"httparse",
|
|
|
|
"httpdate",
|
|
|
|
"itoa",
|
|
|
|
"pin-project-lite",
|
2024-03-23 15:45:55 -07:00
|
|
|
"socket2",
|
2023-08-25 13:41:04 -07:00
|
|
|
"tokio",
|
|
|
|
"tower-service",
|
|
|
|
"tracing",
|
|
|
|
"want",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "hyper"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.5.2"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"futures-channel",
|
|
|
|
"futures-util",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"http-body 1.0.1",
|
|
|
|
"httparse",
|
|
|
|
"itoa",
|
|
|
|
"pin-project-lite",
|
|
|
|
"smallvec",
|
|
|
|
"tokio",
|
|
|
|
"want",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
2023-08-25 13:41:04 -07:00
|
|
|
name = "hyper-rustls"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.27.5"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-util",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2025-02-05 17:53:49 +13:00
|
|
|
"hyper 1.5.2",
|
2024-10-01 11:05:44 -07:00
|
|
|
"hyper-util",
|
|
|
|
"rustls",
|
|
|
|
"rustls-pki-types",
|
|
|
|
"tokio",
|
|
|
|
"tokio-rustls",
|
|
|
|
"tower-service",
|
|
|
|
"webpki-roots",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "hyper-util"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.10"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"futures-channel",
|
|
|
|
"futures-util",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"http-body 1.0.1",
|
2025-02-05 17:53:49 +13:00
|
|
|
"hyper 1.5.2",
|
2024-10-01 11:05:44 -07:00
|
|
|
"pin-project-lite",
|
|
|
|
"socket2",
|
2023-08-25 13:41:04 -07:00
|
|
|
"tokio",
|
2024-10-01 11:05:44 -07:00
|
|
|
"tower-service",
|
|
|
|
"tracing",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
2023-08-18 08:12:32 -07:00
|
|
|
|
|
|
|
[[package]]
|
2023-08-25 13:41:04 -07:00
|
|
|
name = "iana-time-zone"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.61"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-08-25 13:41:04 -07:00
|
|
|
"android_system_properties",
|
|
|
|
"core-foundation-sys",
|
|
|
|
"iana-time-zone-haiku",
|
|
|
|
"js-sys",
|
2023-08-18 08:12:32 -07:00
|
|
|
"wasm-bindgen",
|
2023-10-24 11:24:59 -07:00
|
|
|
"windows-core",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2023-08-25 13:41:04 -07:00
|
|
|
name = "iana-time-zone-haiku"
|
|
|
|
version = "0.1.2"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-25 13:41:04 -07:00
|
|
|
checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-08-25 13:41:04 -07:00
|
|
|
"cc",
|
|
|
|
]
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "icu_collections"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"litemap",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid_transform"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform_data",
|
|
|
|
"icu_provider",
|
|
|
|
"tinystr",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid_transform_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_normalizer"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_normalizer_data",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"smallvec",
|
|
|
|
"utf16_iter",
|
|
|
|
"utf8_iter",
|
|
|
|
"write16",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_normalizer_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_properties"
|
|
|
|
version = "1.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_properties_data",
|
|
|
|
"icu_provider",
|
|
|
|
"tinystr",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_properties_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_provider_macros",
|
|
|
|
"stable_deref_trait",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider_macros"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:22:21 -05:00
|
|
|
]
|
|
|
|
|
2024-04-25 00:13:09 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ident_case"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "idna"
|
|
|
|
version = "1.0.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e"
|
|
|
|
dependencies = [
|
|
|
|
"idna_adapter",
|
|
|
|
"smallvec",
|
|
|
|
"utf8_iter",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "idna_adapter"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71"
|
|
|
|
dependencies = [
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_properties",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "image"
|
2024-11-07 13:04:33 -08:00
|
|
|
version = "0.25.5"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-07 13:04:33 -08:00
|
|
|
checksum = "cd6f44aed642f18953a158afeb30206f4d50da59fbc66ecb53c66488de73563b"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytemuck",
|
2024-08-04 00:51:30 -04:00
|
|
|
"byteorder-lite",
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-09-12 14:59:40 -07:00
|
|
|
"png",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "image-compare"
|
2024-06-04 17:09:01 -05:00
|
|
|
version = "0.4.1"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-04 17:09:01 -05:00
|
|
|
checksum = "96cd73af13ae2e7220a1c02fe7d6bb53be50612ba7fabbb5c88e7753645f1f3c"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"image",
|
2024-06-04 17:09:01 -05:00
|
|
|
"itertools 0.12.1",
|
2023-09-12 14:59:40 -07:00
|
|
|
"rayon",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
2023-09-12 14:59:40 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "indexmap"
|
|
|
|
version = "1.9.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"hashbrown 0.12.3",
|
2024-09-27 18:23:46 -07:00
|
|
|
"serde",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "indexmap"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.1"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"equivalent",
|
2024-12-04 15:40:46 -05:00
|
|
|
"hashbrown 0.15.2",
|
2024-09-19 14:06:29 -07:00
|
|
|
"serde",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "indoc"
|
|
|
|
version = "2.0.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "inflections"
|
|
|
|
version = "1.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a"
|
|
|
|
|
2023-11-01 12:40:40 -05:00
|
|
|
[[package]]
|
|
|
|
name = "insta"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.42.1"
|
2023-11-01 12:40:40 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "71c1b125e30d93896b365e156c33dadfffab45ee8400afcbba4752f59de08a86"
|
2023-11-01 12:40:40 -05:00
|
|
|
dependencies = [
|
|
|
|
"console",
|
|
|
|
"linked-hash-map",
|
2025-02-05 17:53:49 +13:00
|
|
|
"once_cell",
|
2024-11-18 16:20:32 -06:00
|
|
|
"pest",
|
|
|
|
"pest_derive",
|
2025-02-05 17:53:49 +13:00
|
|
|
"pin-project",
|
KCL: New simulation test pipeline (#4351)
The idea behind this is to test all the various stages of executing KCL
separately, i.e.
- Start with a program
- Tokenize it
- Parse those tokens into an AST
- Recast the AST
- Execute the AST, outputting
- a PNG of the rendered model
- serialized program memory
Each of these steps reads some input and writes some output to disk.
The output of one step becomes the input to the next step. These
intermediate artifacts are also snapshotted (like expectorate or 2020)
to ensure we're aware of any changes to how KCL works. A change could
be a bug, or it could be harmless, or deliberate, but keeping it checked
into the repo means we can easily track changes.
Note: UUIDs sent back by the engine are currently nondeterministic, so
they would break all the snapshot tests. So, the snapshots use a regex
filter and replace anything that looks like a uuid with [uuid] when
writing program memory to a snapshot. In the future I hope our UUIDs will
be seedable and easy to make deterministic. At that point, we can stop
filtering the UUIDs.
We run this pipeline on many different KCL programs. Each keeps its
inputs (KCL programs), outputs (PNG, program memory snapshot) and
intermediate artifacts (AST, token lists, etc) in that directory.
I also added a new `just` command to easily generate these tests.
You can run `just new-sim-test gear $(cat gear.kcl)` to set up a new
gear test directory and generate all the intermediate artifacts for the
first time. This doesn't need any macros, it just appends some new lines
of normal Rust source code to `tests.rs`, so it's easy to see exactly
what the code is doing.
This uses `cargo insta` for convenient snapshot testing of artifacts
as JSON, and `twenty-twenty` for snapshotting PNGs.
This was heavily inspired by Predrag Gruevski's talk at EuroRust 2024
about deterministic simulation testing, and how it can both reduce bugs
and also reduce testing/CI time. Very grateful to him for chatting with
me about this over the last couple of weeks.
2024-10-30 12:14:17 -05:00
|
|
|
"regex",
|
2023-11-01 12:40:40 -05:00
|
|
|
"serde",
|
|
|
|
"similar",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ipnet"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.11.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "is-terminal"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.15"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "e19b23d53f35ce9f56aebc7d1bb4e6ac1e9c0db7ac85c8d1760c04379edced37"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"hermit-abi",
|
2024-03-23 15:45:55 -07:00
|
|
|
"libc",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "is_ci"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7655c9839580ee829dfacba1d1278c2b7883e50a277ff7541299489d6bdfdc45"
|
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "is_terminal_polyfill"
|
|
|
|
version = "1.70.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
|
|
|
version = "0.10.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
2024-05-19 23:36:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
|
|
|
version = "0.12.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
2023-11-15 11:41:12 -06:00
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
2024-05-17 09:09:23 -07:00
|
|
|
version = "0.13.0"
|
2023-11-15 11:41:12 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-05-17 09:09:23 -07:00
|
|
|
checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
|
2023-11-15 11:41:12 -06:00
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "itoa"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.14"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "js-sys"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.77"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2024-12-12 16:37:50 -05:00
|
|
|
"once_cell",
|
2023-08-25 13:41:04 -07:00
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
2025-03-01 13:59:01 -08:00
|
|
|
[[package]]
|
|
|
|
name = "kcl-derive-docs"
|
|
|
|
version = "0.1.45"
|
|
|
|
dependencies = [
|
|
|
|
"Inflector",
|
|
|
|
"anyhow",
|
|
|
|
"convert_case",
|
|
|
|
"expectorate",
|
|
|
|
"once_cell",
|
|
|
|
"pretty_assertions",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"regex",
|
|
|
|
"rustfmt-wrapper",
|
|
|
|
"serde",
|
|
|
|
"serde_tokenstream",
|
|
|
|
"syn 2.0.96",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
2023-08-29 12:35:45 -07:00
|
|
|
name = "kcl-lib"
|
2025-02-28 18:30:21 -08:00
|
|
|
version = "0.2.45"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
2024-09-18 17:04:04 -05:00
|
|
|
"approx 0.5.1",
|
2023-09-20 18:27:08 -07:00
|
|
|
"async-recursion",
|
2023-09-17 21:57:43 -07:00
|
|
|
"async-trait",
|
2024-05-01 09:47:32 -07:00
|
|
|
"base64 0.22.1",
|
2023-08-28 14:58:24 -07:00
|
|
|
"bson",
|
2024-03-12 23:57:43 -07:00
|
|
|
"chrono",
|
2023-09-14 15:05:07 -06:00
|
|
|
"clap",
|
2024-03-26 21:28:50 -07:00
|
|
|
"convert_case",
|
2023-09-20 13:15:28 -05:00
|
|
|
"criterion",
|
2024-09-06 10:07:51 -07:00
|
|
|
"dashmap 6.1.0",
|
2024-11-28 11:27:17 +13:00
|
|
|
"dhat",
|
2023-08-28 14:58:24 -07:00
|
|
|
"expectorate",
|
2024-11-18 19:54:25 -05:00
|
|
|
"fnv",
|
2024-04-09 18:05:36 -07:00
|
|
|
"form_urlencoded",
|
2023-08-28 14:58:24 -07:00
|
|
|
"futures",
|
2024-04-09 18:05:36 -07:00
|
|
|
"git_rev",
|
2024-02-12 12:18:37 -08:00
|
|
|
"gltf-json",
|
2024-09-27 07:37:46 -07:00
|
|
|
"handlebars",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-03-26 21:28:50 -07:00
|
|
|
"image",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2023-11-01 12:40:40 -05:00
|
|
|
"insta",
|
2024-05-17 09:09:23 -07:00
|
|
|
"itertools 0.13.0",
|
2023-08-28 14:58:24 -07:00
|
|
|
"js-sys",
|
2025-03-01 13:59:01 -08:00
|
|
|
"kcl-derive-docs",
|
2023-08-28 14:58:24 -07:00
|
|
|
"kittycad",
|
2024-09-18 17:04:04 -05:00
|
|
|
"kittycad-modeling-cmds",
|
2023-08-28 14:58:24 -07:00
|
|
|
"lazy_static",
|
2024-08-21 12:12:56 -07:00
|
|
|
"measurements",
|
2024-11-25 17:28:57 -06:00
|
|
|
"miette",
|
2024-03-12 23:57:43 -07:00
|
|
|
"mime_guess",
|
2024-09-30 15:35:07 -07:00
|
|
|
"parse-display 0.9.1",
|
2023-08-28 14:58:24 -07:00
|
|
|
"pretty_assertions",
|
2024-06-19 17:32:08 -07:00
|
|
|
"pyo3",
|
2024-12-10 17:51:51 -08:00
|
|
|
"regex",
|
2023-08-28 14:58:24 -07:00
|
|
|
"reqwest",
|
2024-12-10 17:51:51 -08:00
|
|
|
"rgba_simple",
|
2024-02-15 13:56:31 -08:00
|
|
|
"ropey",
|
2023-08-28 14:58:24 -07:00
|
|
|
"schemars",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
2024-03-12 23:57:43 -07:00
|
|
|
"sha2",
|
2024-07-25 18:02:49 -04:00
|
|
|
"tabled",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2023-08-28 14:58:24 -07:00
|
|
|
"tokio",
|
2024-02-11 19:19:37 +00:00
|
|
|
"tokio-tungstenite",
|
2024-04-25 00:13:09 -07:00
|
|
|
"toml",
|
2023-09-05 16:02:27 -07:00
|
|
|
"tower-lsp",
|
2024-01-11 15:31:35 -08:00
|
|
|
"ts-rs",
|
2024-03-26 21:28:50 -07:00
|
|
|
"twenty-twenty",
|
2024-04-15 17:18:32 -07:00
|
|
|
"url",
|
2023-08-28 14:58:24 -07:00
|
|
|
"uuid",
|
2024-04-25 00:13:09 -07:00
|
|
|
"validator",
|
2023-08-28 14:58:24 -07:00
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-futures",
|
2023-09-17 21:57:43 -07:00
|
|
|
"web-sys",
|
2024-11-28 11:27:17 +13:00
|
|
|
"web-time",
|
2024-09-06 09:42:11 -05:00
|
|
|
"winnow",
|
2024-03-12 23:57:43 -07:00
|
|
|
"zip",
|
2023-08-28 14:58:24 -07:00
|
|
|
]
|
|
|
|
|
2025-03-01 16:38:25 -08:00
|
|
|
[[package]]
|
|
|
|
name = "kcl-python-bindings"
|
|
|
|
version = "0.3.45"
|
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
|
|
|
"kcl-lib",
|
|
|
|
"kittycad-modeling-cmds",
|
|
|
|
"miette",
|
|
|
|
"pyo3",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"tokio",
|
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
2024-06-18 14:38:25 -05:00
|
|
|
[[package]]
|
|
|
|
name = "kcl-test-server"
|
2025-02-28 18:30:21 -08:00
|
|
|
version = "0.1.45"
|
2024-06-18 14:38:25 -05:00
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
2025-02-05 17:53:49 +13:00
|
|
|
"hyper 0.14.32",
|
2024-06-18 14:38:25 -05:00
|
|
|
"kcl-lib",
|
|
|
|
"pico-args",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"tokio",
|
|
|
|
]
|
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "kcl-to-core"
|
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
|
|
|
"async-trait",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2024-10-01 12:45:01 -07:00
|
|
|
"kcl-lib",
|
|
|
|
"kittycad",
|
|
|
|
"kittycad-modeling-cmds",
|
|
|
|
"tokio",
|
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
2025-03-01 13:59:01 -08:00
|
|
|
[[package]]
|
|
|
|
name = "kcl-wasm-lib"
|
|
|
|
version = "0.1.0"
|
|
|
|
dependencies = [
|
|
|
|
"bson",
|
|
|
|
"console_error_panic_hook",
|
|
|
|
"data-encoding",
|
|
|
|
"futures",
|
|
|
|
"getrandom 0.2.15",
|
|
|
|
"gloo-utils",
|
|
|
|
"js-sys",
|
|
|
|
"kcl-lib",
|
|
|
|
"kittycad",
|
|
|
|
"serde_json",
|
|
|
|
"tokio",
|
|
|
|
"toml",
|
|
|
|
"tower-lsp",
|
|
|
|
"uuid",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-futures",
|
|
|
|
"wasm-streams",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "kittycad"
|
2024-12-05 10:05:23 +13:00
|
|
|
version = "0.3.28"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-12-05 10:05:23 +13:00
|
|
|
checksum = "933cb5f77624386c87d296e3fd493daf50156d1cbfa03b9f333a6d4da2896369"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
2023-09-12 14:59:40 -07:00
|
|
|
"async-trait",
|
2024-05-19 23:36:44 -07:00
|
|
|
"base64 0.22.1",
|
2023-09-21 15:22:04 -05:00
|
|
|
"bigdecimal",
|
2023-08-25 13:41:04 -07:00
|
|
|
"bytes",
|
|
|
|
"chrono",
|
2024-10-01 12:45:01 -07:00
|
|
|
"clap",
|
2023-08-18 08:12:32 -07:00
|
|
|
"data-encoding",
|
2023-09-12 14:59:40 -07:00
|
|
|
"format_serde_error",
|
|
|
|
"futures",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-06-17 14:01:45 -04:00
|
|
|
"itertools 0.13.0",
|
2023-09-12 14:59:40 -07:00
|
|
|
"log",
|
2024-03-12 23:57:43 -07:00
|
|
|
"mime_guess",
|
2024-09-30 15:35:07 -07:00
|
|
|
"parse-display 0.10.0",
|
2023-08-18 08:12:32 -07:00
|
|
|
"phonenumber",
|
2024-09-18 17:04:04 -05:00
|
|
|
"rand 0.8.5",
|
2023-09-12 14:59:40 -07:00
|
|
|
"reqwest",
|
2023-08-18 08:12:32 -07:00
|
|
|
"schemars",
|
|
|
|
"serde",
|
2023-08-29 16:31:19 -07:00
|
|
|
"serde_bytes",
|
2023-08-18 08:12:32 -07:00
|
|
|
"serde_json",
|
2023-09-12 14:59:40 -07:00
|
|
|
"serde_urlencoded",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-08-12 20:52:48 -07:00
|
|
|
"tokio",
|
2023-09-12 14:59:40 -07:00
|
|
|
"tracing",
|
2023-08-18 08:12:32 -07:00
|
|
|
"url",
|
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "kittycad-modeling-cmds"
|
2025-03-01 16:38:25 -08:00
|
|
|
version = "0.2.100"
|
2024-09-20 16:33:38 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-03-01 16:38:25 -08:00
|
|
|
checksum = "fb5a824cb9bb4c602962ecbaca5ce71225938aa1abc24103bf46c222f468dd26"
|
2024-09-18 17:04:04 -05:00
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
|
|
|
"chrono",
|
|
|
|
"data-encoding",
|
|
|
|
"enum-iterator",
|
|
|
|
"enum-iterator-derive",
|
|
|
|
"euler",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-09-18 17:04:04 -05:00
|
|
|
"kittycad-modeling-cmds-macros",
|
|
|
|
"kittycad-unit-conversion-derive",
|
|
|
|
"measurements",
|
2024-09-30 15:35:07 -07:00
|
|
|
"parse-display 0.9.1",
|
|
|
|
"parse-display-derive 0.9.1",
|
2024-09-18 17:04:04 -05:00
|
|
|
"schemars",
|
|
|
|
"serde",
|
|
|
|
"serde_bytes",
|
|
|
|
"serde_json",
|
2025-01-08 20:02:30 -05:00
|
|
|
"ts-rs",
|
2024-09-18 17:04:04 -05:00
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "kittycad-modeling-cmds-macros"
|
2024-09-25 19:23:19 -05:00
|
|
|
version = "0.1.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fb9bb1a594541b878adc1c8dcb821328774bf7aa09b65b104a206b1291a5235c"
|
|
|
|
dependencies = [
|
|
|
|
"kittycad-modeling-cmds-macros-impl",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-09-25 19:23:19 -05:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "kittycad-modeling-cmds-macros-impl"
|
2025-01-08 20:02:30 -05:00
|
|
|
version = "0.1.13"
|
2024-09-20 16:33:38 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-08 20:02:30 -05:00
|
|
|
checksum = "fdb4ee23cc996aa2dca7584d410e8826e08161e1ac4335bb646d5ede33f37cb3"
|
2024-09-18 17:04:04 -05:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-09-18 17:04:04 -05:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "kittycad-unit-conversion-derive"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7001c46a92c1edce6722a3900539b198230980799035f02d92b4e7df3fc08738"
|
|
|
|
dependencies = [
|
|
|
|
"inflections",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn 1.0.109",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "lazy_static"
|
2024-06-23 22:02:53 -07:00
|
|
|
version = "1.5.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-23 22:02:53 -07:00
|
|
|
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libc"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.169"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-09-20 17:36:26 -07:00
|
|
|
[[package]]
|
|
|
|
name = "libm"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.11"
|
2023-09-20 17:36:26 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
|
2023-09-20 17:36:26 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "linked-hash-map"
|
|
|
|
version = "0.5.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
|
|
|
|
|
2023-09-14 15:05:07 -06:00
|
|
|
[[package]]
|
|
|
|
name = "linux-raw-sys"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.15"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "litemap"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.7.4"
|
2024-11-06 11:22:21 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104"
|
2024-11-06 11:22:21 -05:00
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "lock_api"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.4.12"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"scopeguard",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "log"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.25"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-08-25 13:41:04 -07:00
|
|
|
"serde",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "lru-cache"
|
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c"
|
|
|
|
dependencies = [
|
|
|
|
"linked-hash-map",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "lsp-types"
|
|
|
|
version = "0.94.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c66bfd44a06ae10647fe3f8214762e9369fd4248df1350924b4ef9e770a85ea1"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 1.3.2",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"serde_repr",
|
|
|
|
"url",
|
|
|
|
]
|
|
|
|
|
2024-08-21 12:12:56 -07:00
|
|
|
[[package]]
|
|
|
|
name = "measurements"
|
|
|
|
version = "0.11.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f5b734b4e8187ea5777bc29c086f0970a27d8de42061b48f5af32cafc0ca904b"
|
|
|
|
dependencies = [
|
|
|
|
"libm",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "memchr"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "2.7.4"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "memoffset"
|
|
|
|
version = "0.9.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "miette"
|
2025-02-06 08:06:10 -08:00
|
|
|
version = "7.5.0"
|
2024-11-25 17:28:57 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-06 08:06:10 -08:00
|
|
|
checksum = "1a955165f87b37fd1862df2a59547ac542c77ef6d17c666f619d1ad22dd89484"
|
2024-11-25 17:28:57 -06:00
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
"backtrace-ext",
|
|
|
|
"cfg-if",
|
|
|
|
"miette-derive",
|
|
|
|
"owo-colors",
|
|
|
|
"supports-color",
|
|
|
|
"supports-hyperlinks",
|
|
|
|
"supports-unicode",
|
|
|
|
"terminal_size",
|
|
|
|
"textwrap",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
2024-11-25 17:28:57 -06:00
|
|
|
"unicode-width 0.1.14",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "miette-derive"
|
2025-02-06 08:06:10 -08:00
|
|
|
version = "7.5.0"
|
2024-11-25 17:28:57 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-06 08:06:10 -08:00
|
|
|
checksum = "bf45bf44ab49be92fd1227a3be6fc6f617f1a337c06af54981048574d8783147"
|
2024-11-25 17:28:57 -06:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-25 17:28:57 -06:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "mime"
|
|
|
|
version = "0.3.17"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "mime_guess"
|
2024-07-01 11:31:43 -07:00
|
|
|
version = "2.0.5"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-07-01 11:31:43 -07:00
|
|
|
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"mime",
|
|
|
|
"unicase",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "minimal-lexical"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "miniz_oxide"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.8.3"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"adler2",
|
2023-09-12 14:59:40 -07:00
|
|
|
"simd-adler32",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "mint"
|
|
|
|
version = "0.5.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e53debba6bda7a793e5f99b8dacf19e626084f525f7829104ba9898f367d85ff"
|
|
|
|
|
2024-11-28 11:27:17 +13:00
|
|
|
[[package]]
|
|
|
|
name = "mintex"
|
|
|
|
version = "0.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9bec4598fddb13cc7b528819e697852653252b760f1228b7642679bf2ff2cd07"
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "mio"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.3"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
2025-02-19 13:30:26 -05:00
|
|
|
"wasi 0.11.0+wasi-snapshot-preview1",
|
2024-07-28 22:06:55 -07:00
|
|
|
"windows-sys 0.52.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "newline-converter"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-04 16:28:32 -05:00
|
|
|
checksum = "47b6b097ecb1cbfed438542d16e84fd7ad9b0c76c8a65b7f9039212a3d14dc7f"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
dependencies = [
|
2024-06-04 16:28:32 -05:00
|
|
|
"unicode-segmentation",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "nom"
|
|
|
|
version = "7.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
"minimal-lexical",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "num-bigint"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.4.6"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"num-integer",
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-03-23 15:45:55 -07:00
|
|
|
[[package]]
|
|
|
|
name = "num-conv"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "num-integer"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.1.46"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2024-09-18 17:04:04 -05:00
|
|
|
]
|
|
|
|
|
2024-10-29 23:01:31 -04:00
|
|
|
[[package]]
|
|
|
|
name = "num-modular"
|
|
|
|
version = "0.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "17bb261bf36fa7d83f4c294f834e91256769097b3cb505d44831e0a179ac647f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-order"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "537b596b97c40fcf8056d153049eb22f481c17ebce72a513ec9286e4986d1bb6"
|
|
|
|
dependencies = [
|
|
|
|
"num-modular",
|
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "num-traits"
|
|
|
|
version = "0.1.43"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
|
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-09-12 14:59:40 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "num-traits"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.2.19"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "object"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.36.7"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "once_cell"
|
2024-10-07 15:13:12 -07:00
|
|
|
version = "1.20.2"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-07 15:13:12 -07:00
|
|
|
checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "oncemutex"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "44d11de466f4a3006fe8a5e7ec84e93b79c70cb992ae0aa0eb631ad2df8abfe2"
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "oorandom"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "11.1.4"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9"
|
2023-09-20 13:15:28 -05:00
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "openssl-probe"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.6"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
|
2023-08-28 14:58:24 -07:00
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "owo-colors"
|
|
|
|
version = "4.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fb37767f6569cd834a413442455e0f066d0d522de8630436e2a1761d9726ba56"
|
|
|
|
|
2024-07-25 18:02:49 -04:00
|
|
|
[[package]]
|
|
|
|
name = "papergrid"
|
|
|
|
version = "0.11.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9ad43c07024ef767f9160710b3a6773976194758c7919b17e63b863db0bdf7fb"
|
|
|
|
dependencies = [
|
|
|
|
"bytecount",
|
|
|
|
"fnv",
|
2024-10-02 12:59:01 -07:00
|
|
|
"unicode-width 0.1.14",
|
2024-07-25 18:02:49 -04:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "parking_lot"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.12.3"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"lock_api",
|
2025-03-01 13:59:01 -08:00
|
|
|
"parking_lot_core",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parking_lot_core"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.9.10"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"libc",
|
2025-03-01 13:59:01 -08:00
|
|
|
"redox_syscall",
|
2023-08-24 15:34:51 -07:00
|
|
|
"smallvec",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
2024-02-11 12:09:50 -08:00
|
|
|
[[package]]
|
|
|
|
name = "parse-display"
|
2024-06-04 17:27:47 -07:00
|
|
|
version = "0.9.1"
|
2024-02-11 12:09:50 -08:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-04 17:27:47 -07:00
|
|
|
checksum = "914a1c2265c98e2446911282c6ac86d8524f495792c38c5bd884f80499c7538a"
|
2024-02-11 12:09:50 -08:00
|
|
|
dependencies = [
|
2024-09-30 15:35:07 -07:00
|
|
|
"parse-display-derive 0.9.1",
|
2024-02-11 12:09:50 -08:00
|
|
|
"regex",
|
2024-09-30 15:35:07 -07:00
|
|
|
"regex-syntax 0.8.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parse-display"
|
|
|
|
version = "0.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "287d8d3ebdce117b8539f59411e4ed9ec226e0a4153c7f55495c6070d68e6f72"
|
|
|
|
dependencies = [
|
|
|
|
"parse-display-derive 0.10.0",
|
|
|
|
"regex",
|
|
|
|
"regex-syntax 0.8.5",
|
2024-02-11 12:09:50 -08:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parse-display-derive"
|
2024-06-04 17:27:47 -07:00
|
|
|
version = "0.9.1"
|
2024-02-11 12:09:50 -08:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-04 17:27:47 -07:00
|
|
|
checksum = "2ae7800a4c974efd12df917266338e79a7a74415173caf7e70aa0a0707345281"
|
2024-02-11 12:09:50 -08:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"regex",
|
2024-09-30 15:35:07 -07:00
|
|
|
"regex-syntax 0.8.5",
|
|
|
|
"structmeta",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-09-30 15:35:07 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parse-display-derive"
|
|
|
|
version = "0.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7fc048687be30d79502dea2f623d052f3a074012c6eac41726b7ab17213616b1"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"regex",
|
|
|
|
"regex-syntax 0.8.5",
|
2024-06-04 16:28:32 -05:00
|
|
|
"structmeta",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "percent-encoding"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "2.3.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2024-09-27 07:37:46 -07:00
|
|
|
[[package]]
|
|
|
|
name = "pest"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.15"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc"
|
2024-09-27 07:37:46 -07:00
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-09-27 07:37:46 -07:00
|
|
|
"ucd-trie",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pest_derive"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.15"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e"
|
2024-09-27 07:37:46 -07:00
|
|
|
dependencies = [
|
|
|
|
"pest",
|
|
|
|
"pest_generator",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pest_generator"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.15"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b"
|
2024-09-27 07:37:46 -07:00
|
|
|
dependencies = [
|
|
|
|
"pest",
|
|
|
|
"pest_meta",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-09-27 07:37:46 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pest_meta"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.15"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea"
|
2024-09-27 07:37:46 -07:00
|
|
|
dependencies = [
|
|
|
|
"once_cell",
|
|
|
|
"pest",
|
|
|
|
"sha2",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "phonenumber"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.7+8.13.52"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2247167dc3741816fdd4d3690e97f56a892a264b44f4c702078b72d1f8b6bd40"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"bincode",
|
|
|
|
"either",
|
|
|
|
"fnv",
|
|
|
|
"nom",
|
2025-02-05 17:53:49 +13:00
|
|
|
"once_cell",
|
2023-08-18 08:12:32 -07:00
|
|
|
"quick-xml",
|
|
|
|
"regex",
|
|
|
|
"regex-cache",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
2023-09-21 15:02:23 -05:00
|
|
|
"strum",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
2024-06-18 14:38:25 -05:00
|
|
|
[[package]]
|
|
|
|
name = "pico-args"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315"
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "pin-project"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.1.8"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"pin-project-internal",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-project-internal"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.1.8"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "pin-project-lite"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.16"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-utils"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "plotters"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.7"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747"
|
2023-09-20 13:15:28 -05:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"num-traits 0.2.19",
|
2023-09-20 13:15:28 -05:00
|
|
|
"plotters-backend",
|
|
|
|
"plotters-svg",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "plotters-backend"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.7"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a"
|
2023-09-20 13:15:28 -05:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "plotters-svg"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.7"
|
2023-09-20 13:15:28 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670"
|
2023-09-20 13:15:28 -05:00
|
|
|
dependencies = [
|
|
|
|
"plotters-backend",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "png"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.17.16"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"bitflags 1.3.2",
|
|
|
|
"crc32fast",
|
|
|
|
"fdeflate",
|
|
|
|
"flate2",
|
|
|
|
"miniz_oxide",
|
|
|
|
]
|
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "portable-atomic"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.10.0"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6"
|
2024-06-19 17:32:08 -07:00
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "powerfmt"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ppv-lite86"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.2.20"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04"
|
|
|
|
dependencies = [
|
|
|
|
"zerocopy",
|
|
|
|
]
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "pretty_assertions"
|
2024-09-16 11:34:22 -07:00
|
|
|
version = "1.4.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-16 11:34:22 -07:00
|
|
|
checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"diff",
|
|
|
|
"yansi",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "proc-macro-error"
|
|
|
|
version = "1.0.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro-error-attr",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn 1.0.109",
|
|
|
|
"version_check",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "proc-macro-error-attr"
|
|
|
|
version = "1.0.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"version_check",
|
|
|
|
]
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "proc-macro-error-attr2"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "proc-macro-error2"
|
|
|
|
version = "2.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro-error-attr2",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:22:21 -05:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "proc-macro2"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.93"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"unicode-ident",
|
|
|
|
]
|
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "pyo3"
|
2024-11-06 11:25:49 -05:00
|
|
|
version = "0.22.6"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-06 11:25:49 -05:00
|
|
|
checksum = "f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884"
|
2024-06-19 17:32:08 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"indoc",
|
|
|
|
"libc",
|
|
|
|
"memoffset",
|
2024-06-24 21:37:59 -07:00
|
|
|
"once_cell",
|
2024-06-19 17:32:08 -07:00
|
|
|
"portable-atomic",
|
|
|
|
"pyo3-build-config",
|
|
|
|
"pyo3-ffi",
|
|
|
|
"pyo3-macros",
|
2025-03-01 16:38:25 -08:00
|
|
|
"serde",
|
2024-06-19 17:32:08 -07:00
|
|
|
"unindent",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pyo3-build-config"
|
2024-11-06 11:25:49 -05:00
|
|
|
version = "0.22.6"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-06 11:25:49 -05:00
|
|
|
checksum = "b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38"
|
2024-06-19 17:32:08 -07:00
|
|
|
dependencies = [
|
|
|
|
"once_cell",
|
|
|
|
"target-lexicon",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pyo3-ffi"
|
2024-11-06 11:25:49 -05:00
|
|
|
version = "0.22.6"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-06 11:25:49 -05:00
|
|
|
checksum = "9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636"
|
2024-06-19 17:32:08 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
"pyo3-build-config",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pyo3-macros"
|
2024-11-06 11:25:49 -05:00
|
|
|
version = "0.22.6"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-06 11:25:49 -05:00
|
|
|
checksum = "0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453"
|
2024-06-19 17:32:08 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"pyo3-macros-backend",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-06-19 17:32:08 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pyo3-macros-backend"
|
2024-11-06 11:25:49 -05:00
|
|
|
version = "0.22.6"
|
2024-06-19 17:32:08 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-11-06 11:25:49 -05:00
|
|
|
checksum = "36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe"
|
2024-06-19 17:32:08 -07:00
|
|
|
dependencies = [
|
2024-06-24 21:37:59 -07:00
|
|
|
"heck 0.5.0",
|
2024-06-19 17:32:08 -07:00
|
|
|
"proc-macro2",
|
|
|
|
"pyo3-build-config",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-06-19 17:32:08 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "quick-xml"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.37.2"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "165859e9e55f79d67b96c5d96f4e88b6f2695a1972849c15a6a3f5c59fc2c003"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "quinn"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.11.6"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"pin-project-lite",
|
|
|
|
"quinn-proto",
|
|
|
|
"quinn-udp",
|
2025-02-05 17:53:49 +13:00
|
|
|
"rustc-hash 2.1.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls",
|
|
|
|
"socket2",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-10-01 11:05:44 -07:00
|
|
|
"tokio",
|
|
|
|
"tracing",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "quinn-proto"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.11.9"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.2.15",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rand 0.8.5",
|
|
|
|
"ring",
|
2025-02-05 17:53:49 +13:00
|
|
|
"rustc-hash 2.1.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls",
|
2025-02-05 17:53:49 +13:00
|
|
|
"rustls-pki-types",
|
2024-10-01 11:05:44 -07:00
|
|
|
"slab",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-10-01 11:05:44 -07:00
|
|
|
"tinyvec",
|
|
|
|
"tracing",
|
2025-02-05 17:53:49 +13:00
|
|
|
"web-time",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "quinn-udp"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.5.9"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"cfg_aliases",
|
2024-10-01 11:05:44 -07:00
|
|
|
"libc",
|
|
|
|
"once_cell",
|
|
|
|
"socket2",
|
|
|
|
"tracing",
|
|
|
|
"windows-sys 0.59.0",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "quote"
|
2025-01-07 09:14:32 -08:00
|
|
|
version = "1.0.38"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-07 09:14:32 -08:00
|
|
|
checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "radium"
|
|
|
|
version = "0.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
|
|
|
version = "0.4.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
|
|
|
|
dependencies = [
|
|
|
|
"fuchsia-cprng",
|
|
|
|
"libc",
|
|
|
|
"rand_core 0.3.1",
|
|
|
|
"rdrand",
|
|
|
|
"winapi",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
|
|
|
version = "0.8.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
"rand_chacha",
|
2024-09-18 17:04:04 -05:00
|
|
|
"rand_core 0.6.4",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_chacha"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
|
|
|
dependencies = [
|
|
|
|
"ppv-lite86",
|
2024-09-18 17:04:04 -05:00
|
|
|
"rand_core 0.6.4",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
|
|
|
|
dependencies = [
|
|
|
|
"rand_core 0.4.2",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
|
|
|
version = "0.4.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
|
|
|
version = "0.6.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
|
|
|
dependencies = [
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.2.15",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rayon"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.10.0"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
"rayon-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rayon-core"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.12.1"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"crossbeam-deque",
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
2024-09-18 17:04:04 -05:00
|
|
|
[[package]]
|
|
|
|
name = "rdrand"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
|
|
|
|
dependencies = [
|
|
|
|
"rand_core 0.3.1",
|
|
|
|
]
|
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "redox_syscall"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.5.8"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"bitflags 2.8.0",
|
2023-10-24 11:24:59 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "regex"
|
2024-10-25 13:50:21 -07:00
|
|
|
version = "1.11.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-25 13:50:21 -07:00
|
|
|
checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"aho-corasick",
|
|
|
|
"memchr",
|
|
|
|
"regex-automata",
|
2024-09-30 15:35:07 -07:00
|
|
|
"regex-syntax 0.8.5",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-automata"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.9"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"aho-corasick",
|
|
|
|
"memchr",
|
2024-09-30 15:35:07 -07:00
|
|
|
"regex-syntax 0.8.5",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-cache"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2f7b62d69743b8b94f353b6b7c3deb4c5582828328bcb8d5fedf214373808793"
|
|
|
|
dependencies = [
|
|
|
|
"lru-cache",
|
|
|
|
"oncemutex",
|
|
|
|
"regex",
|
2023-08-25 13:41:04 -07:00
|
|
|
"regex-syntax 0.6.29",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
2023-08-25 13:41:04 -07:00
|
|
|
version = "0.6.29"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-25 13:41:04 -07:00
|
|
|
checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
2024-09-30 15:35:07 -07:00
|
|
|
version = "0.8.5"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-30 15:35:07 -07:00
|
|
|
checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
|
2023-10-24 11:24:59 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "reqwest"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.12.12"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"base64 0.22.1",
|
2023-08-25 13:41:04 -07:00
|
|
|
"bytes",
|
|
|
|
"futures-core",
|
|
|
|
"futures-util",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
2024-10-01 11:05:44 -07:00
|
|
|
"http-body 1.0.1",
|
|
|
|
"http-body-util",
|
2025-02-05 17:53:49 +13:00
|
|
|
"hyper 1.5.2",
|
2023-08-25 13:41:04 -07:00
|
|
|
"hyper-rustls",
|
2024-10-01 11:05:44 -07:00
|
|
|
"hyper-util",
|
2023-08-25 13:41:04 -07:00
|
|
|
"ipnet",
|
|
|
|
"js-sys",
|
|
|
|
"log",
|
|
|
|
"mime",
|
|
|
|
"mime_guess",
|
|
|
|
"once_cell",
|
|
|
|
"percent-encoding",
|
|
|
|
"pin-project-lite",
|
2024-10-01 11:05:44 -07:00
|
|
|
"quinn",
|
|
|
|
"rustls",
|
|
|
|
"rustls-pemfile",
|
|
|
|
"rustls-pki-types",
|
2023-08-25 13:41:04 -07:00
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"serde_urlencoded",
|
2024-02-11 19:40:06 +00:00
|
|
|
"sync_wrapper",
|
2023-08-25 13:41:04 -07:00
|
|
|
"tokio",
|
2024-10-01 11:05:44 -07:00
|
|
|
"tokio-rustls",
|
2024-02-15 13:56:31 -08:00
|
|
|
"tokio-util",
|
2025-02-05 17:53:49 +13:00
|
|
|
"tower 0.5.2",
|
2023-08-25 13:41:04 -07:00
|
|
|
"tower-service",
|
|
|
|
"url",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-futures",
|
2024-02-15 13:56:31 -08:00
|
|
|
"wasm-streams",
|
2023-08-25 13:41:04 -07:00
|
|
|
"web-sys",
|
|
|
|
"webpki-roots",
|
2024-10-01 11:05:44 -07:00
|
|
|
"windows-registry",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-12-10 17:51:51 -08:00
|
|
|
[[package]]
|
|
|
|
name = "rgba_simple"
|
|
|
|
version = "0.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e6cd655523701785087f69900df39892fb7b9b0721aa67682f571c38c32ac58a"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ring"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.17.8"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"cc",
|
2024-03-23 15:45:55 -07:00
|
|
|
"cfg-if",
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.2.15",
|
2023-08-25 13:41:04 -07:00
|
|
|
"libc",
|
2024-06-04 16:28:32 -05:00
|
|
|
"spin",
|
|
|
|
"untrusted",
|
2024-03-23 15:45:55 -07:00
|
|
|
"windows-sys 0.52.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2024-02-15 13:56:31 -08:00
|
|
|
[[package]]
|
|
|
|
name = "ropey"
|
|
|
|
version = "1.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "93411e420bcd1a75ddd1dc3caf18c23155eda2c090631a85af21ba19e97093b5"
|
|
|
|
dependencies = [
|
|
|
|
"smallvec",
|
|
|
|
"str_indices",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-demangle"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.24"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
|
|
|
|
|
2024-11-28 11:27:17 +13:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-hash"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustc-hash"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.1.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustfmt-wrapper"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "0.2.1"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "f1adc9dfed5cc999077978cc7163b9282c5751c8d39827c4ea8c8c220ca5a440"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"tempfile",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
2023-08-25 13:41:04 -07:00
|
|
|
"toml",
|
|
|
|
"toolchain_find",
|
|
|
|
]
|
|
|
|
|
2023-09-14 15:05:07 -06:00
|
|
|
[[package]]
|
|
|
|
name = "rustix"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.38.44"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"bitflags 2.8.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
"errno",
|
|
|
|
"libc",
|
2023-09-18 18:22:25 -06:00
|
|
|
"linux-raw-sys",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustls"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.23.21"
|
2024-02-11 19:19:37 +00:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8"
|
2024-02-11 19:19:37 +00:00
|
|
|
dependencies = [
|
2024-06-04 17:27:22 -07:00
|
|
|
"once_cell",
|
2024-10-01 11:05:44 -07:00
|
|
|
"ring",
|
2024-02-11 19:19:37 +00:00
|
|
|
"rustls-pki-types",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls-webpki",
|
2024-02-11 19:19:37 +00:00
|
|
|
"subtle",
|
|
|
|
"zeroize",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustls-native-certs"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.8.1"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"openssl-probe",
|
2024-02-11 19:19:37 +00:00
|
|
|
"rustls-pki-types",
|
2023-08-28 14:58:24 -07:00
|
|
|
"schannel",
|
|
|
|
"security-framework",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustls-pemfile"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "2.2.0"
|
2024-02-11 19:19:37 +00:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50"
|
2024-02-11 19:19:37 +00:00
|
|
|
dependencies = [
|
|
|
|
"rustls-pki-types",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustls-pki-types"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.10.1"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37"
|
|
|
|
dependencies = [
|
|
|
|
"web-time",
|
|
|
|
]
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-02-11 19:19:37 +00:00
|
|
|
[[package]]
|
|
|
|
name = "rustls-webpki"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.102.8"
|
2024-02-11 19:19:37 +00:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9"
|
2024-02-11 19:19:37 +00:00
|
|
|
dependencies = [
|
2024-06-04 16:28:32 -05:00
|
|
|
"ring",
|
2024-02-11 19:19:37 +00:00
|
|
|
"rustls-pki-types",
|
2024-06-04 16:28:32 -05:00
|
|
|
"untrusted",
|
2024-02-11 19:19:37 +00:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "rustversion"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.19"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ryu"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.0.18"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "same-file"
|
|
|
|
version = "1.0.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-util",
|
|
|
|
]
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "schannel"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.27"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-28 14:58:24 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "schemars"
|
2024-06-17 14:01:45 -04:00
|
|
|
version = "0.8.21"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-17 14:01:45 -04:00
|
|
|
checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-09-21 15:22:04 -05:00
|
|
|
"bigdecimal",
|
2023-08-18 08:12:32 -07:00
|
|
|
"bytes",
|
|
|
|
"chrono",
|
|
|
|
"dyn-clone",
|
2024-09-27 18:23:46 -07:00
|
|
|
"indexmap 1.9.3",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2023-08-18 08:12:32 -07:00
|
|
|
"schemars_derive",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"url",
|
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "schemars_derive"
|
2024-06-17 14:01:45 -04:00
|
|
|
version = "0.8.21"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-17 14:01:45 -04:00
|
|
|
checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"serde_derive_internals",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2023-08-24 15:34:51 -07:00
|
|
|
name = "scopeguard"
|
|
|
|
version = "1.2.0"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-24 15:34:51 -07:00
|
|
|
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
2023-08-18 08:12:32 -07:00
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "security-framework"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "3.2.0"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"bitflags 2.8.0",
|
2023-08-28 14:58:24 -07:00
|
|
|
"core-foundation",
|
|
|
|
"core-foundation-sys",
|
|
|
|
"libc",
|
|
|
|
"security-framework-sys",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "security-framework-sys"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.14.0"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"core-foundation-sys",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "semver"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.25"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
2023-08-24 15:34:51 -07:00
|
|
|
name = "serde"
|
2025-02-25 10:29:59 -06:00
|
|
|
version = "1.0.218"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-25 10:29:59 -06:00
|
|
|
checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2023-08-24 15:34:51 -07:00
|
|
|
"serde_derive",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "serde_bytes"
|
2024-09-18 17:04:04 -05:00
|
|
|
version = "0.11.15"
|
2023-08-28 14:58:24 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-18 17:04:04 -05:00
|
|
|
checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a"
|
2023-08-28 14:58:24 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "serde_derive"
|
2025-02-25 10:29:59 -06:00
|
|
|
version = "1.0.218"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-25 10:29:59 -06:00
|
|
|
checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_derive_internals"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.29.1"
|
2023-08-18 08:12:32 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_json"
|
2025-02-25 10:29:59 -06:00
|
|
|
version = "1.0.139"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-25 10:29:59 -06:00
|
|
|
checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2023-08-25 13:41:04 -07:00
|
|
|
"itoa",
|
2024-07-28 21:21:55 -07:00
|
|
|
"memchr",
|
2023-08-25 13:41:04 -07:00
|
|
|
"ryu",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "serde_repr"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.19"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "serde_spanned"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.6.8"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "serde_tokenstream"
|
2024-08-14 21:15:25 -07:00
|
|
|
version = "0.2.2"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-08-14 21:15:25 -07:00
|
|
|
checksum = "64060d864397305347a78851c51588fd283767e7e7589829e8121d65512340f1"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"serde",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_urlencoded"
|
|
|
|
version = "0.7.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
|
|
|
|
dependencies = [
|
|
|
|
"form_urlencoded",
|
|
|
|
"itoa",
|
|
|
|
"ryu",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_yaml"
|
|
|
|
version = "0.8.26"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b"
|
|
|
|
dependencies = [
|
|
|
|
"indexmap 1.9.3",
|
|
|
|
"ryu",
|
|
|
|
"serde",
|
|
|
|
"yaml-rust",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "sha1"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "0.10.6"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"cpufeatures",
|
|
|
|
"digest",
|
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "sha2"
|
|
|
|
version = "0.10.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"cpufeatures",
|
|
|
|
"digest",
|
|
|
|
]
|
|
|
|
|
2024-10-01 11:05:44 -07:00
|
|
|
[[package]]
|
|
|
|
name = "shlex"
|
|
|
|
version = "1.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "signal-hook-registry"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.4.2"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "simd-adler32"
|
|
|
|
version = "0.3.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "similar"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.7.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "slab"
|
|
|
|
version = "0.4.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "smallvec"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.13.2"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "socket2"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.5.8"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"libc",
|
2024-03-23 15:45:55 -07:00
|
|
|
"windows-sys 0.52.0",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "spin"
|
|
|
|
version = "0.9.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "stable_deref_trait"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
|
|
|
|
|
2024-02-15 13:56:31 -08:00
|
|
|
[[package]]
|
|
|
|
name = "str_indices"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.4"
|
2024-02-15 13:56:31 -08:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d08889ec5408683408db66ad89e0e1f93dff55c73a4ccc71c427d5b277ee47e6"
|
2024-02-15 13:56:31 -08:00
|
|
|
|
2024-04-25 00:13:09 -07:00
|
|
|
[[package]]
|
|
|
|
name = "strsim"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.11.1"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
2024-04-25 00:13:09 -07:00
|
|
|
|
2024-02-11 12:09:50 -08:00
|
|
|
[[package]]
|
|
|
|
name = "structmeta"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2e1575d8d40908d70f6fd05537266b90ae71b15dbbe7a8b7dffa2b759306d329"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2024-06-04 16:28:32 -05:00
|
|
|
"structmeta-derive",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-18 19:37:52 +10:00
|
|
|
]
|
|
|
|
|
2024-02-11 12:09:50 -08:00
|
|
|
[[package]]
|
|
|
|
name = "structmeta-derive"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-02-11 12:09:50 -08:00
|
|
|
]
|
|
|
|
|
2023-09-21 15:02:23 -05:00
|
|
|
[[package]]
|
|
|
|
name = "strum"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.26.3"
|
2023-09-21 15:02:23 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
|
2023-09-21 15:02:23 -05:00
|
|
|
dependencies = [
|
|
|
|
"strum_macros",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "strum_macros"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.26.4"
|
2023-09-21 15:02:23 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
|
2023-09-21 15:02:23 -05:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"heck 0.5.0",
|
2023-09-21 15:02:23 -05:00
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"rustversion",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-21 15:02:23 -05:00
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "subtle"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "2.6.1"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "supports-color"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "3.0.2"
|
2024-11-25 17:28:57 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "c64fc7232dd8d2e4ac5ce4ef302b1d81e0b80d055b9d77c7c4f51f6aa4c867d6"
|
2024-11-25 17:28:57 -06:00
|
|
|
dependencies = [
|
|
|
|
"is_ci",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "supports-hyperlinks"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "3.1.0"
|
2024-11-25 17:28:57 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "804f44ed3c63152de6a9f90acbea1a110441de43006ea51bcce8f436196a288b"
|
2024-11-25 17:28:57 -06:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "supports-unicode"
|
|
|
|
version = "3.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b7401a30af6cb5818bb64852270bb722533397edcfc7344954a38f420819ece2"
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "syn"
|
2023-08-25 13:41:04 -07:00
|
|
|
version = "1.0.109"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-25 13:41:04 -07:00
|
|
|
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"unicode-ident",
|
|
|
|
]
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2023-07-20 12:38:05 +10:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "syn"
|
2025-01-13 10:04:30 -08:00
|
|
|
version = "2.0.96"
|
2023-07-20 12:38:05 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-13 10:04:30 -08:00
|
|
|
checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
|
2023-07-20 12:38:05 +10:00
|
|
|
dependencies = [
|
2023-08-18 08:12:32 -07:00
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"unicode-ident",
|
2023-07-20 12:38:05 +10:00
|
|
|
]
|
|
|
|
|
2024-02-11 19:40:06 +00:00
|
|
|
[[package]]
|
|
|
|
name = "sync_wrapper"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.2"
|
2024-02-11 19:40:06 +00:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
]
|
2024-02-11 19:40:06 +00:00
|
|
|
|
2023-11-09 16:39:12 -06:00
|
|
|
[[package]]
|
|
|
|
name = "synstructure"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.13.1"
|
2023-11-09 16:39:12 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
|
2023-11-09 16:39:12 -06:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-11-09 16:39:12 -06:00
|
|
|
]
|
|
|
|
|
2024-07-25 18:02:49 -04:00
|
|
|
[[package]]
|
|
|
|
name = "tabled"
|
|
|
|
version = "0.15.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4c998b0c8b921495196a48aabaf1901ff28be0760136e31604f7967b0792050e"
|
|
|
|
dependencies = [
|
|
|
|
"papergrid",
|
|
|
|
"tabled_derive",
|
2024-10-02 12:59:01 -07:00
|
|
|
"unicode-width 0.1.14",
|
2024-07-25 18:02:49 -04:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tabled_derive"
|
|
|
|
version = "0.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4c138f99377e5d653a371cdad263615634cfc8467685dfe8e73e2b8e98f44b17"
|
|
|
|
dependencies = [
|
|
|
|
"heck 0.4.1",
|
|
|
|
"proc-macro-error",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn 1.0.109",
|
|
|
|
]
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tap"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
|
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "target-lexicon"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.12.16"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tempfile"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "3.15.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"fastrand",
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.2.15",
|
2024-10-01 11:05:44 -07:00
|
|
|
"once_cell",
|
2023-09-18 18:22:25 -06:00
|
|
|
"rustix",
|
2024-10-01 11:05:44 -07:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
2023-08-19 23:18:54 -07:00
|
|
|
[[package]]
|
|
|
|
name = "termcolor"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "1.4.1"
|
2023-08-19 23:18:54 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
|
2023-08-19 23:18:54 -07:00
|
|
|
dependencies = [
|
|
|
|
"winapi-util",
|
|
|
|
]
|
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "terminal_size"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.1"
|
2024-11-25 17:28:57 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "5352447f921fda68cf61b4101566c0bdb5104eff6804d0678e5227580ab6a4e9"
|
2024-11-25 17:28:57 -06:00
|
|
|
dependencies = [
|
|
|
|
"rustix",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-sys 0.59.0",
|
2024-11-25 17:28:57 -06:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "textwrap"
|
|
|
|
version = "0.16.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-linebreak",
|
|
|
|
"unicode-width 0.1.14",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "thiserror"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.69"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror-impl 1.0.69",
|
2024-11-06 11:36:58 -05:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thiserror"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.0.11"
|
2024-11-06 11:36:58 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc"
|
2024-11-06 11:36:58 -05:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror-impl 2.0.11",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "thiserror-impl"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.69"
|
2024-11-06 11:36:58 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
|
2024-11-06 11:36:58 -05:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:36:58 -05:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thiserror-impl"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.0.11"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2"
|
2023-08-18 08:12:32 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-18 08:12:32 -07:00
|
|
|
]
|
2023-08-18 19:37:52 +10:00
|
|
|
|
2024-11-28 11:27:17 +13:00
|
|
|
[[package]]
|
|
|
|
name = "thousands"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "time"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.37"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"deranged",
|
|
|
|
"itoa",
|
2024-03-23 15:45:55 -07:00
|
|
|
"num-conv",
|
2023-10-24 11:24:59 -07:00
|
|
|
"powerfmt",
|
2023-08-25 13:41:04 -07:00
|
|
|
"serde",
|
|
|
|
"time-core",
|
|
|
|
"time-macros",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "time-core"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "0.1.2"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "time-macros"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.19"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2024-03-23 15:45:55 -07:00
|
|
|
"num-conv",
|
2023-08-25 13:41:04 -07:00
|
|
|
"time-core",
|
|
|
|
]
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "tinystr"
|
|
|
|
version = "0.7.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
2023-09-20 13:15:28 -05:00
|
|
|
[[package]]
|
|
|
|
name = "tinytemplate"
|
|
|
|
version = "1.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "tinyvec"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.8.1"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
2023-08-18 08:12:32 -07:00
|
|
|
"tinyvec_macros",
|
2023-02-21 09:42:41 +11:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "tinyvec_macros"
|
|
|
|
version = "0.1.1"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-18 08:12:32 -07:00
|
|
|
checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tokio"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.43.0"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
"bytes",
|
|
|
|
"libc",
|
|
|
|
"mio",
|
2025-03-01 13:59:01 -08:00
|
|
|
"parking_lot",
|
2023-08-24 15:34:51 -07:00
|
|
|
"pin-project-lite",
|
|
|
|
"signal-hook-registry",
|
2024-03-23 15:45:55 -07:00
|
|
|
"socket2",
|
2023-08-24 15:34:51 -07:00
|
|
|
"tokio-macros",
|
2024-10-01 12:45:01 -07:00
|
|
|
"tracing",
|
2024-07-28 22:06:55 -07:00
|
|
|
"windows-sys 0.52.0",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tokio-macros"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.5.0"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
2024-02-11 19:19:37 +00:00
|
|
|
name = "tokio-rustls"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.26.1"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls",
|
2023-08-24 15:34:51 -07:00
|
|
|
"tokio",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tokio-tungstenite"
|
2024-09-16 11:31:55 -07:00
|
|
|
version = "0.24.0"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-16 11:31:55 -07:00
|
|
|
checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
dependencies = [
|
|
|
|
"futures-util",
|
|
|
|
"log",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls",
|
2024-02-11 19:19:37 +00:00
|
|
|
"rustls-native-certs",
|
|
|
|
"rustls-pki-types",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"tokio",
|
2024-10-01 11:05:44 -07:00
|
|
|
"tokio-rustls",
|
2024-02-11 19:19:37 +00:00
|
|
|
"tungstenite",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tokio-util"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.7.13"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"futures-core",
|
|
|
|
"futures-sink",
|
|
|
|
"pin-project-lite",
|
|
|
|
"tokio",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml"
|
2024-07-31 22:18:29 -07:00
|
|
|
version = "0.8.19"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-07-31 22:18:29 -07:00
|
|
|
checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"serde_spanned",
|
|
|
|
"toml_datetime",
|
|
|
|
"toml_edit",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml_datetime"
|
2024-07-31 11:08:07 -07:00
|
|
|
version = "0.6.8"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-07-31 11:08:07 -07:00
|
|
|
checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "toml_edit"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.22.22"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2023-10-24 11:24:59 -07:00
|
|
|
"serde",
|
|
|
|
"serde_spanned",
|
|
|
|
"toml_datetime",
|
2024-09-06 09:42:11 -05:00
|
|
|
"winnow",
|
2023-10-24 11:24:59 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "toolchain_find"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "0.4.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "ebc8c9a7f0a2966e1acdaf0461023d0b01471eeead645370cf4c3f5cff153f2a"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"home",
|
2023-10-24 11:24:59 -07:00
|
|
|
"once_cell",
|
2023-08-25 13:41:04 -07:00
|
|
|
"regex",
|
|
|
|
"semver",
|
|
|
|
"walkdir",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tower"
|
|
|
|
version = "0.4.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
|
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
"futures-util",
|
|
|
|
"pin-project",
|
|
|
|
"pin-project-lite",
|
|
|
|
"tower-layer",
|
|
|
|
"tower-service",
|
|
|
|
]
|
|
|
|
|
2025-02-05 17:53:49 +13:00
|
|
|
[[package]]
|
|
|
|
name = "tower"
|
|
|
|
version = "0.5.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9"
|
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
"futures-util",
|
|
|
|
"pin-project-lite",
|
|
|
|
"sync_wrapper",
|
|
|
|
"tokio",
|
|
|
|
"tower-layer",
|
|
|
|
"tower-service",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tower-layer"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.3"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e"
|
2023-09-05 16:02:27 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tower-lsp"
|
|
|
|
version = "0.20.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d4ba052b54a6627628d9b3c34c176e7eda8359b7da9acd497b9f20998d118508"
|
|
|
|
dependencies = [
|
|
|
|
"async-codec-lite",
|
|
|
|
"async-trait",
|
|
|
|
"auto_impl",
|
|
|
|
"bytes",
|
2024-06-24 21:37:34 -07:00
|
|
|
"dashmap 5.5.3",
|
2023-09-05 16:02:27 -07:00
|
|
|
"futures",
|
|
|
|
"httparse",
|
|
|
|
"lsp-types",
|
|
|
|
"memchr",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"tokio",
|
|
|
|
"tokio-util",
|
2025-02-05 17:53:49 +13:00
|
|
|
"tower 0.4.13",
|
2023-09-05 16:02:27 -07:00
|
|
|
"tower-lsp-macros",
|
|
|
|
"tracing",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tower-lsp-macros"
|
|
|
|
version = "0.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "84fd902d4e0b9a4b27f2f440108dc034e1758628a9b702f8ec61ad66355422fa"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tower-service"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.3.3"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.41"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"pin-project-lite",
|
2023-09-05 16:02:27 -07:00
|
|
|
"tracing-attributes",
|
2023-08-25 13:41:04 -07:00
|
|
|
"tracing-core",
|
|
|
|
]
|
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tracing-attributes"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.28"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-09-05 16:02:27 -07:00
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "tracing-core"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.33"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"once_cell",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "try-lock"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "0.2.5"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-19 23:18:54 -07:00
|
|
|
[[package]]
|
2024-01-11 15:31:35 -08:00
|
|
|
name = "ts-rs"
|
2025-01-06 23:32:20 -05:00
|
|
|
version = "10.1.0"
|
2024-06-20 10:55:53 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-06 23:32:20 -05:00
|
|
|
checksum = "e640d9b0964e9d39df633548591090ab92f7a4567bc31d3891af23471a3365c6"
|
2023-08-19 23:18:54 -07:00
|
|
|
dependencies = [
|
2024-04-25 00:13:09 -07:00
|
|
|
"chrono",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2024-09-20 10:20:42 -07:00
|
|
|
"lazy_static",
|
2024-06-20 16:36:28 -07:00
|
|
|
"serde_json",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2023-08-19 23:18:54 -07:00
|
|
|
"ts-rs-macros",
|
2024-04-15 17:18:32 -07:00
|
|
|
"url",
|
2023-08-19 23:18:54 -07:00
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ts-rs-macros"
|
2025-01-06 23:32:20 -05:00
|
|
|
version = "10.1.0"
|
2024-06-20 10:55:53 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-06 23:32:20 -05:00
|
|
|
checksum = "0e9d8656589772eeec2cf7a8264d9cda40fb28b9bc53118ceb9e8c07f8f38730"
|
2023-08-19 23:18:54 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-08-19 23:18:54 -07:00
|
|
|
"termcolor",
|
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "tungstenite"
|
2024-09-16 11:31:55 -07:00
|
|
|
version = "0.24.0"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-16 11:31:55 -07:00
|
|
|
checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
dependencies = [
|
|
|
|
"byteorder",
|
|
|
|
"bytes",
|
|
|
|
"data-encoding",
|
2024-12-13 13:07:52 -06:00
|
|
|
"http 1.2.0",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"httparse",
|
|
|
|
"log",
|
2024-09-18 17:04:04 -05:00
|
|
|
"rand 0.8.5",
|
2024-10-01 11:05:44 -07:00
|
|
|
"rustls",
|
2024-02-11 19:19:37 +00:00
|
|
|
"rustls-pki-types",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"sha1",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 1.0.69",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
"utf-8",
|
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
|
|
|
name = "twenty-twenty"
|
2024-06-04 17:09:01 -05:00
|
|
|
version = "0.8.1"
|
2023-09-12 14:59:40 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-06-04 17:09:01 -05:00
|
|
|
checksum = "48e62b93cc5b5a8fabe3056a7d189f2195ebc7d57934a2cbe124601e34ad79b9"
|
2023-09-12 14:59:40 -07:00
|
|
|
dependencies = [
|
|
|
|
"anyhow",
|
|
|
|
"image",
|
|
|
|
"image-compare",
|
|
|
|
"uuid",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "typenum"
|
2023-09-18 18:22:25 -06:00
|
|
|
version = "1.17.0"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-09-18 18:22:25 -06:00
|
|
|
checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2024-09-27 07:37:46 -07:00
|
|
|
[[package]]
|
|
|
|
name = "ucd-trie"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.7"
|
2024-09-27 07:37:46 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971"
|
2024-09-27 07:37:46 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "unicase"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "2.8.1"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "unicode-ident"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "1.0.15"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "11cd88e12b17c6494200a9c1b683a04fcac9573ed74cd1b62aeb2727c5592243"
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2024-11-25 17:28:57 -06:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-linebreak"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-segmentation"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.12.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-width"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.14"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-10-02 12:59:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "unicode-width"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd"
|
|
|
|
|
2024-06-19 17:32:08 -07:00
|
|
|
[[package]]
|
|
|
|
name = "unindent"
|
|
|
|
version = "0.2.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "untrusted"
|
2023-10-24 11:24:59 -07:00
|
|
|
version = "0.9.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-10-24 11:24:59 -07:00
|
|
|
checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "url"
|
2025-01-06 16:37:23 +00:00
|
|
|
version = "2.5.4"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-06 16:37:23 +00:00
|
|
|
checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
2023-08-18 08:12:32 -07:00
|
|
|
"form_urlencoded",
|
2024-11-06 13:05:33 -05:00
|
|
|
"idna",
|
2023-08-18 08:12:32 -07:00
|
|
|
"percent-encoding",
|
|
|
|
"serde",
|
2023-02-21 09:42:41 +11:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "utf-8"
|
|
|
|
version = "0.7.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "utf16_iter"
|
|
|
|
version = "1.0.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "utf8_iter"
|
|
|
|
version = "1.0.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
|
|
|
|
|
2024-10-01 12:45:01 -07:00
|
|
|
[[package]]
|
|
|
|
name = "utf8parse"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
|
|
|
|
2023-07-20 12:38:05 +10:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "uuid"
|
2025-02-25 10:29:59 -06:00
|
|
|
version = "1.14.0"
|
2023-07-20 12:38:05 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-25 10:29:59 -06:00
|
|
|
checksum = "93d59ca99a559661b96bf898d8fce28ed87935fd2bea9f05983c1464dd6c71b1"
|
2023-07-20 12:38:05 +10:00
|
|
|
dependencies = [
|
2025-02-19 13:30:26 -05:00
|
|
|
"getrandom 0.3.1",
|
|
|
|
"js-sys",
|
2023-08-18 08:12:32 -07:00
|
|
|
"serde",
|
|
|
|
"wasm-bindgen",
|
2023-07-20 12:38:05 +10:00
|
|
|
]
|
|
|
|
|
2024-04-25 00:13:09 -07:00
|
|
|
[[package]]
|
|
|
|
name = "validator"
|
2025-02-28 15:37:25 -06:00
|
|
|
version = "0.20.0"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-28 15:37:25 -06:00
|
|
|
checksum = "43fb22e1a008ece370ce08a3e9e4447a910e92621bb49b85d6e48a45397e7cfa"
|
2024-04-25 00:13:09 -07:00
|
|
|
dependencies = [
|
2024-11-06 13:05:33 -05:00
|
|
|
"idna",
|
2024-04-25 00:13:09 -07:00
|
|
|
"once_cell",
|
|
|
|
"regex",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
|
|
|
"serde_json",
|
|
|
|
"url",
|
|
|
|
"validator_derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "validator_derive"
|
2025-02-28 15:37:25 -06:00
|
|
|
version = "0.20.0"
|
2024-04-25 00:13:09 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-28 15:37:25 -06:00
|
|
|
checksum = "b7df16e474ef958526d1205f6dda359fdfab79d9aa6d54bafcb92dcd07673dca"
|
2024-04-25 00:13:09 -07:00
|
|
|
dependencies = [
|
|
|
|
"darling",
|
|
|
|
"once_cell",
|
2024-11-06 11:22:21 -05:00
|
|
|
"proc-macro-error2",
|
2024-04-25 00:13:09 -07:00
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-04-25 00:13:09 -07:00
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "version_check"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.9.5"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
2023-08-24 15:34:51 -07:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "walkdir"
|
2024-03-23 15:45:55 -07:00
|
|
|
version = "2.5.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
|
|
|
"same-file",
|
|
|
|
"winapi-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "want"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
|
|
|
|
dependencies = [
|
|
|
|
"try-lock",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
2023-08-18 08:12:32 -07:00
|
|
|
name = "wasi"
|
|
|
|
version = "0.11.0+wasi-snapshot-preview1"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2023-08-18 08:12:32 -07:00
|
|
|
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2025-02-19 13:30:26 -05:00
|
|
|
[[package]]
|
|
|
|
name = "wasi"
|
|
|
|
version = "0.13.3+wasi-0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2"
|
|
|
|
dependencies = [
|
|
|
|
"wit-bindgen-rt",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.100"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
2024-10-01 11:05:44 -07:00
|
|
|
"once_cell",
|
2025-02-05 17:53:49 +13:00
|
|
|
"rustversion",
|
2023-02-21 09:42:41 +11:00
|
|
|
"wasm-bindgen-macro",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-backend"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.100"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
|
|
|
"bumpalo",
|
|
|
|
"log",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-02-21 09:42:41 +11:00
|
|
|
"wasm-bindgen-shared",
|
|
|
|
]
|
|
|
|
|
2023-08-24 15:34:51 -07:00
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-futures"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.4.50"
|
2023-08-24 15:34:51 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61"
|
2023-08-24 15:34:51 -07:00
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
2023-09-05 16:02:27 -07:00
|
|
|
"futures-core",
|
2023-08-24 15:34:51 -07:00
|
|
|
"js-sys",
|
2024-12-12 16:37:50 -05:00
|
|
|
"once_cell",
|
2023-08-24 15:34:51 -07:00
|
|
|
"wasm-bindgen",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
2023-02-21 09:42:41 +11:00
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-macro"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.100"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
|
|
|
"quote",
|
|
|
|
"wasm-bindgen-macro-support",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-macro-support"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.100"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"
|
2023-02-21 09:42:41 +11:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2023-02-21 09:42:41 +11:00
|
|
|
"wasm-bindgen-backend",
|
|
|
|
"wasm-bindgen-shared",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-shared"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.2.100"
|
2023-02-21 09:42:41 +11:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-ident",
|
|
|
|
]
|
2023-02-21 09:42:41 +11:00
|
|
|
|
2023-09-05 16:02:27 -07:00
|
|
|
[[package]]
|
|
|
|
name = "wasm-streams"
|
2025-01-06 16:38:14 +00:00
|
|
|
version = "0.4.2"
|
2023-09-05 16:02:27 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-06 16:38:14 +00:00
|
|
|
checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65"
|
2023-09-05 16:02:27 -07:00
|
|
|
dependencies = [
|
|
|
|
"futures-util",
|
|
|
|
"js-sys",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-futures",
|
|
|
|
"web-sys",
|
2023-08-18 19:37:52 +10:00
|
|
|
]
|
|
|
|
|
2023-09-12 14:59:40 -07:00
|
|
|
[[package]]
|
2023-08-18 19:37:52 +10:00
|
|
|
name = "web-sys"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.3.77"
|
2024-10-01 11:05:44 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"js-sys",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "web-time"
|
|
|
|
version = "1.1.0"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
|
2023-08-18 19:37:52 +10:00
|
|
|
dependencies = [
|
|
|
|
"js-sys",
|
2023-02-21 09:42:41 +11:00
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
2023-08-18 19:37:52 +10:00
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "webpki-roots"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.26.7"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e"
|
2024-10-01 11:05:44 -07:00
|
|
|
dependencies = [
|
|
|
|
"rustls-pki-types",
|
|
|
|
]
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "winapi"
|
|
|
|
version = "0.3.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-i686-pc-windows-gnu",
|
|
|
|
"winapi-x86_64-pc-windows-gnu",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winapi-i686-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
|
|
|
|
2023-08-19 23:18:54 -07:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-util"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.1.9"
|
2023-08-19 23:18:54 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
|
2023-08-19 23:18:54 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"windows-sys 0.59.0",
|
2023-08-19 23:18:54 -07:00
|
|
|
]
|
|
|
|
|
2023-08-18 08:12:32 -07:00
|
|
|
[[package]]
|
|
|
|
name = "winapi-x86_64-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
2023-10-24 11:24:59 -07:00
|
|
|
name = "windows-core"
|
2024-01-08 21:22:53 -06:00
|
|
|
version = "0.52.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-01-08 21:22:53 -06:00
|
|
|
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-registry"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0"
|
|
|
|
dependencies = [
|
|
|
|
"windows-result",
|
|
|
|
"windows-strings",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-result"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e"
|
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-strings"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10"
|
|
|
|
dependencies = [
|
|
|
|
"windows-result",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2023-08-25 13:41:04 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
2024-03-23 15:45:55 -07:00
|
|
|
name = "windows-sys"
|
|
|
|
version = "0.52.0"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-03-23 15:45:55 -07:00
|
|
|
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
2023-08-25 13:41:04 -07:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2024-10-01 11:05:44 -07:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-sys"
|
|
|
|
version = "0.59.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
|
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows-targets",
|
2023-08-24 15:34:51 -07:00
|
|
|
]
|
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows-targets"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-01-08 21:22:53 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
|
2024-01-08 21:22:53 -06:00
|
|
|
dependencies = [
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows_aarch64_gnullvm",
|
|
|
|
"windows_aarch64_msvc",
|
|
|
|
"windows_i686_gnu",
|
2024-10-01 11:05:44 -07:00
|
|
|
"windows_i686_gnullvm",
|
2025-02-05 17:53:49 +13:00
|
|
|
"windows_i686_msvc",
|
|
|
|
"windows_x86_64_gnu",
|
|
|
|
"windows_x86_64_gnullvm",
|
|
|
|
"windows_x86_64_msvc",
|
2024-01-08 21:22:53 -06:00
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_gnullvm"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-03-19 16:19:57 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_msvc"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-03-19 16:19:57 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_gnu"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_gnullvm"
|
|
|
|
version = "0.52.6"
|
2024-01-08 21:22:53 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_msvc"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-03-19 16:19:57 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnu"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-03-19 16:19:57 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnullvm"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2023-08-25 13:41:04 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
|
2023-08-25 13:41:04 -07:00
|
|
|
|
2024-01-08 21:22:53 -06:00
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_msvc"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.52.6"
|
2024-01-08 21:22:53 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
|
2024-01-08 21:22:53 -06:00
|
|
|
|
2024-03-23 15:45:55 -07:00
|
|
|
[[package]]
|
|
|
|
name = "winnow"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.6.24"
|
2024-03-23 15:45:55 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a"
|
2024-03-23 15:45:55 -07:00
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
2025-02-19 13:30:26 -05:00
|
|
|
[[package]]
|
|
|
|
name = "wit-bindgen-rt"
|
|
|
|
version = "0.33.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.8.0",
|
|
|
|
]
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "write16"
|
|
|
|
version = "1.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "writeable"
|
|
|
|
version = "0.5.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51"
|
|
|
|
|
2023-08-28 14:58:24 -07:00
|
|
|
[[package]]
|
|
|
|
name = "wyz"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed"
|
|
|
|
dependencies = [
|
|
|
|
"tap",
|
|
|
|
]
|
|
|
|
|
2023-08-25 13:41:04 -07:00
|
|
|
[[package]]
|
|
|
|
name = "yaml-rust"
|
|
|
|
version = "0.4.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
|
|
|
|
dependencies = [
|
|
|
|
"linked-hash-map",
|
|
|
|
]
|
|
|
|
|
2023-08-18 19:37:52 +10:00
|
|
|
[[package]]
|
|
|
|
name = "yansi"
|
2024-09-16 11:34:22 -07:00
|
|
|
version = "1.0.1"
|
2023-08-18 19:37:52 +10:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-09-16 11:34:22 -07:00
|
|
|
checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049"
|
2023-09-12 14:59:40 -07:00
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "yoke"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.7.5"
|
2024-11-06 11:22:21 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40"
|
2024-11-06 11:22:21 -05:00
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"stable_deref_trait",
|
|
|
|
"yoke-derive",
|
|
|
|
"zerofrom",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "yoke-derive"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.7.5"
|
2024-11-06 11:22:21 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154"
|
2024-11-06 11:22:21 -05:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:22:21 -05:00
|
|
|
"synstructure",
|
|
|
|
]
|
|
|
|
|
2023-10-24 11:24:59 -07:00
|
|
|
[[package]]
|
|
|
|
name = "zerocopy"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.7.35"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
2024-10-01 11:05:44 -07:00
|
|
|
"byteorder",
|
2023-10-24 11:24:59 -07:00
|
|
|
"zerocopy-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerocopy-derive"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "0.7.35"
|
2023-10-24 11:24:59 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
|
2023-10-24 11:24:59 -07:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
]
|
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "zerofrom"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.5"
|
2024-11-06 11:22:21 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e"
|
2024-11-06 11:22:21 -05:00
|
|
|
dependencies = [
|
|
|
|
"zerofrom-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerofrom-derive"
|
2025-02-05 17:53:49 +13:00
|
|
|
version = "0.1.5"
|
2024-11-06 11:22:21 -05:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-02-05 17:53:49 +13:00
|
|
|
checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808"
|
2024-11-06 11:22:21 -05:00
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:22:21 -05:00
|
|
|
"synstructure",
|
|
|
|
]
|
|
|
|
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
[[package]]
|
|
|
|
name = "zeroize"
|
2024-10-01 11:05:44 -07:00
|
|
|
version = "1.8.1"
|
Grackle (KCL to EP compiler) (#1270)
* Start Grackle (KCL-to-EP compiler)
This begins work on a second, different executor. The old executor is a tree-walk interpreter, this executor compiles the KCL programs into the Execution Plan virtual machine defined in its [own crate](https://github.com/KittyCAD/modeling-api/tree/main/execution-plan). This executor is called "Grackle", after an Austin bird, and it's got its own module in wasm-lib so that I can keep merging small PRs and developing incrementally, rather than building a complete executor which replaces the old executor in one PR.
Grackle's "Planner" walks the AST, like the tree-walk executor. But it doesn't actually execute code. Instead, as it walks each AST node, it outputs a sequence of Execution Plan instructions which, when run, can compute that node's value. It also notes which Execution Plan virtual machine address will eventually contain each KCL variable.
Done:
- Storing KCL variables
- Computing primitives, literals, binary expressions
- Calling native (i.e. Rust) functions from KCL
- Storing arrays
Todo:
- KCL functions (i.e. user-defined functions)
- Member expressions
- Port over existing executor's native funtions (e.g. `lineTo`, `extrude` and `startSketchAt`)
2024-01-11 09:25:10 -06:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2024-10-01 11:05:44 -07:00
|
|
|
checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
|
2023-10-24 11:24:59 -07:00
|
|
|
|
2024-11-06 11:22:21 -05:00
|
|
|
[[package]]
|
|
|
|
name = "zerovec"
|
|
|
|
version = "0.10.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079"
|
|
|
|
dependencies = [
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerovec-derive"
|
|
|
|
version = "0.10.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
2025-01-13 10:04:30 -08:00
|
|
|
"syn 2.0.96",
|
2024-11-06 11:22:21 -05:00
|
|
|
]
|
|
|
|
|
2024-03-12 23:57:43 -07:00
|
|
|
[[package]]
|
|
|
|
name = "zip"
|
2025-01-07 18:06:37 +00:00
|
|
|
version = "2.2.2"
|
2024-03-12 23:57:43 -07:00
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2025-01-07 18:06:37 +00:00
|
|
|
checksum = "ae9c1ea7b3a5e1f4b922ff856a129881167511563dc219869afe3787fc0c1a45"
|
2024-03-12 23:57:43 -07:00
|
|
|
dependencies = [
|
2024-05-20 22:07:56 -07:00
|
|
|
"arbitrary",
|
2024-03-12 23:57:43 -07:00
|
|
|
"crc32fast",
|
|
|
|
"crossbeam-utils",
|
2024-05-20 22:07:56 -07:00
|
|
|
"displaydoc",
|
2025-02-05 17:53:49 +13:00
|
|
|
"indexmap 2.7.1",
|
2024-10-01 11:05:44 -07:00
|
|
|
"memchr",
|
2025-02-05 17:53:49 +13:00
|
|
|
"thiserror 2.0.11",
|
2024-03-12 23:57:43 -07:00
|
|
|
]
|