diff --git a/.rustfmt b/.rustfmt new file mode 100644 index 0000000..8e60d0c --- /dev/null +++ b/.rustfmt @@ -0,0 +1,3 @@ +max_width = 80 +tab_spaces = 2 +edition = "2021" \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index c28c4d6..97d96b5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,7 +1,8 @@ { "rust-analyzer.linkedProjects": [ - "./zflow_graph/Cargo.toml", + "./crates/zflow_graph/Cargo.toml", + "./crates/fbp/Cargo.toml", "./Cargo.toml", - "./zflow_runtime/Cargo.toml" + "./crates/zflow_runtime/Cargo.toml", ] } \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index aeccece..a0d42b3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -13,139 +13,130 @@ dependencies = [ ] [[package]] -name = "ab_glyph" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5110f1c78cf582855d895ecd0746b653db010cec6d9f5575293f27934d980a39" +name = "add_wasm" +version = "0.1.0" dependencies = [ - "ab_glyph_rasterizer", - "owned_ttf_parser", + "extism-pdk", + "serde", + "serde_json", + "zflow_plugin", ] [[package]] -name = "ab_glyph_rasterizer" -version = "0.1.8" +name = "addr2line" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] [[package]] -name = "accesskit" -version = "0.9.0" +name = "adler" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4803cf8c252f374ae6bfbb341e49e5a37f7601f2ce74a105927a663eba952c67" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] -name = "accesskit_consumer" -version = "0.13.0" +name = "aead" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cee8cf1202a4f94d31837f1902ab0a75c77b65bf59719e093703abe83efd74ec" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" dependencies = [ - "accesskit", - "parking_lot", + "crypto-common", + "generic-array", ] [[package]] -name = "accesskit_macos" -version = "0.5.0" +name = "aead-gcm-stream" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10be25f2b27bc33aa1647072e86b948b41596f1af1ae43a2b4b9be5d2011cbda" +checksum = "4a09ecb526d53de2842cc876ee5c9b51161ee60399edeca4cf74892a01b48177" dependencies = [ - "accesskit", - "accesskit_consumer", - "objc2", - "once_cell", - "parking_lot", + "aead", + "aes", + "cipher", + "ctr", + "ghash", + "subtle", ] [[package]] -name = "accesskit_unix" -version = "0.2.0" +name = "aes" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630e7ee8f93c6246478bf0df6760db899b28d9ad54353a5f2d3157138ba817fc" +checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" dependencies = [ - "accesskit", - "accesskit_consumer", - "async-channel", - "atspi", - "futures-lite", - "parking_lot", - "serde", - "zbus", + "cfg-if", + "cipher", + "cpufeatures", ] [[package]] -name = "accesskit_windows" -version = "0.12.0" +name = "aes-gcm" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a13c462fabdd950ef14308a9390b07fa2e2e3aabccba1f3ea36ea2231bb942ab" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" dependencies = [ - "accesskit", - "accesskit_consumer", - "arrayvec", - "once_cell", - "parking_lot", - "paste", - "windows", + "aead", + "aes", + "cipher", + "ctr", + "ghash", + "subtle", ] [[package]] -name = "accesskit_winit" -version = "0.10.0" +name = "aes-kw" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17727888757ec027ec221db33070e226ee07df44425b583bc67684204d35eff9" +checksum = "69fa2b352dcefb5f7f3a5fb840e02665d311d878955380515e4fd50095dd3d8c" dependencies = [ - "accesskit", - "accesskit_macos", - "accesskit_unix", - "accesskit_windows", - "parking_lot", - "winit", + "aes", ] [[package]] -name = "add_wasm" -version = "0.1.0" +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ - "extism-pdk", - "serde", - "serde_json", - "zflow_plugin", + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", ] [[package]] -name = "addr2line" -version = "0.21.0" +name = "aho-corasick" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ - "gimli", + "memchr", ] [[package]] -name = "adler" -version = "1.0.2" +name = "alloc-no-stdlib" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" [[package]] -name = "ahash" -version = "0.8.3" +name = "alloc-stdlib" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" dependencies = [ - "cfg-if", - "once_cell", - "version_check", + "alloc-no-stdlib", ] [[package]] -name = "aho-corasick" -version = "1.0.1" +name = "allocator-api2" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04" -dependencies = [ - "memchr", -] +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" [[package]] name = "ambient-authority" @@ -154,28 +145,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9d4ee0d472d1cd2e28c97dfa124b3d8d992e10eb0a035f33f5d12e3a177ba3b" [[package]] -name = "android-activity" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c77a0045eda8b888c76ea473c2b0515ba6f471d318f8927c5c72240937035a6" -dependencies = [ - "android-properties", - "bitflags 1.3.2", - "cc", - "jni-sys", - "libc", - "log", - "ndk", - "ndk-context", - "ndk-sys", - "num_enum", -] - -[[package]] -name = "android-properties" -version = "0.2.2" +name = "android-tzdata" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" [[package]] name = "android_system_properties" @@ -188,9 +161,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247" [[package]] name = "arbitrary" @@ -198,192 +171,136 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" -[[package]] -name = "arboard" -version = "3.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6041616acea41d67c4a984709ddab1587fd0b10efe5cc563fee954d2f011854" -dependencies = [ - "clipboard-win", - "log", - "objc", - "objc-foundation", - "objc_id", - "once_cell", - "parking_lot", - "thiserror", - "winapi", - "x11rb", -] - [[package]] name = "array_tool" version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f8cb5d814eb646a863c4f24978cff2880c4be96ad8cde2c0f0678732902e271" -[[package]] -name = "arrayref" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" - [[package]] name = "arrayvec" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" - -[[package]] -name = "assert-json-diff" -version = "2.0.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" dependencies = [ "serde", - "serde_json", ] [[package]] -name = "ast_node" -version = "0.9.6" +name = "ash" +version = "0.37.3+1.3.251" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3e3e06ec6ac7d893a0db7127d91063ad7d9da8988f8a1a256f03729e6eec026" +checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "swc_macros_common", - "syn 2.0.48", + "libloading 0.7.4", ] [[package]] -name = "async-broadcast" -version = "0.5.1" +name = "asn1-rs" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" +checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ - "event-listener", - "futures-core", + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom 7.1.3", + "num-traits", + "rusticata-macros", + "thiserror", + "time", ] [[package]] -name = "async-channel" -version = "1.8.0" +name = "asn1-rs-derive" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ - "concurrent-queue", - "event-listener", - "futures-core", + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", ] [[package]] -name = "async-executor" -version = "1.5.1" +name = "asn1-rs-impl" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fa3dc5f2a8564f07759c008b9109dc0d39de92a88d5588b8a5036d286383afb" +checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ - "async-lock", - "async-task", - "concurrent-queue", - "fastrand", - "futures-lite", - "slab", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "async-io" -version = "1.13.0" +name = "assert-json-diff" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" +checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12" dependencies = [ - "async-lock", - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-lite", - "log", - "parking", - "polling", - "rustix 0.37.19", - "slab", - "socket2 0.4.9", - "waker-fn", + "serde", + "serde_json", ] [[package]] -name = "async-lock" -version = "2.7.0" +name = "ast_node" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa24f727524730b077666307f2734b4a1a1c57acb79193127dcc8914d5242dd7" +checksum = "c3e3e06ec6ac7d893a0db7127d91063ad7d9da8988f8a1a256f03729e6eec026" dependencies = [ - "event-listener", + "proc-macro2", + "quote", + "swc_macros_common", + "syn 2.0.52", ] [[package]] -name = "async-recursion" -version = "1.0.4" +name = "async-compression" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba" +checksum = "a116f46a969224200a0a97f29cfd4c50e7534e4b4826bd23ea2c3c533039c82c" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "brotli", + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", ] [[package]] -name = "async-task" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae" - -[[package]] -name = "async-trait" -version = "0.1.77" +name = "async-stream" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "async-stream-impl", + "futures-core", + "pin-project-lite", ] [[package]] -name = "atomic_refcell" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79d6dc922a2792b006573f60b2648076355daeae5ce9cb59507e5908c9625d31" - -[[package]] -name = "atspi" -version = "0.8.7" +name = "async-stream-impl" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab84c09a770065868da0d713f1f4b35af85d96530a868f1c1a6c249178379187" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ - "async-recursion", - "async-trait", - "atspi-macros", - "enumflags2", - "futures-lite", - "serde", - "tracing", - "zbus", - "zbus_names", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "atspi-macros" -version = "0.1.4" +name = "async-trait" +version = "0.1.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3ebc5a6f61f6996eca56a4cece7b3fe7da3b86f0473c7b71ab44e229f3acce4" +checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "serde", - "syn 1.0.109", - "zbus", - "zbus_names", - "zvariant", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] @@ -408,10 +325,16 @@ dependencies = [ ] [[package]] -name = "base64" -version = "0.13.1" +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base32" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" [[package]] name = "base64" @@ -419,14 +342,39 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +[[package]] +name = "base64-simd" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "781dd20c3aff0bd194fe7d2a977dd92f21c173891f3a03b677359e5fa457e5d5" +dependencies = [ + "simd-abstraction", +] + +[[package]] +name = "base64-simd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +dependencies = [ + "outref 0.5.1", + "vsimd", +] + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + [[package]] name = "beady" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73eaba1c67834a03b75f8293fe01dcd2d215a8ceeb1ccf01f469c8491393db4b" +checksum = "ea791b289256530c955390eb13fa0b21638b0145d1b94dcf74632e02ec49cd4d" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "syn 1.0.109", ] @@ -474,6 +422,9 @@ name = "bitflags" version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" +dependencies = [ + "serde", +] [[package]] name = "block" @@ -491,74 +442,64 @@ dependencies = [ ] [[package]] -name = "block-sys" -version = "0.1.0-beta.1" +name = "block-padding" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa55741ee90902547802152aaf3f8e5248aab7e21468089560d4c8840561146" +checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" dependencies = [ - "objc-sys", + "generic-array", ] [[package]] -name = "block2" -version = "0.2.0-alpha.6" +name = "brotli" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dd9e63c1744f755c2f60332b88de39d341e5e86239014ad839bd71c106dec42" +checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" dependencies = [ - "block-sys", - "objc2-encode", + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", ] [[package]] -name = "bumpalo" -version = "3.14.0" +name = "brotli-decompressor" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] [[package]] -name = "bytemuck" -version = "1.14.0" +name = "bumpalo" +version = "3.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" -dependencies = [ - "bytemuck_derive", -] +checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa" [[package]] -name = "bytemuck_derive" -version = "1.4.1" +name = "bytemuck" +version = "1.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192" -dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", -] +checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f" [[package]] name = "byteorder" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" [[package]] -name = "calloop" -version = "0.10.5" +name = "cache_control" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a59225be45a478d772ce015d9743e49e92798ece9e34eda9a6aa2a6a7f40192" -dependencies = [ - "log", - "nix 0.25.1", - "slotmap", - "thiserror", - "vec_map", -] +checksum = "1bf2a5fb3207c12b5d208ebc145f967fea5cac41a021c37417ccc31ba40f39ee" [[package]] name = "cap-fs-ext" @@ -568,7 +509,7 @@ checksum = "88e341d15ac1029aadce600be764a1a1edafe40e03cde23285bc1d261b3a4866" dependencies = [ "cap-primitives", "cap-std", - "io-lifetimes 2.0.3", + "io-lifetimes", "windows-sys 0.52.0", ] @@ -580,7 +521,7 @@ checksum = "434168fe6533055f0f4204039abe3ff6d7db338ef46872a5fa39e9d5ad5ab7a9" dependencies = [ "cap-primitives", "cap-std", - "rustix 0.38.30", + "rustix", "smallvec", ] @@ -593,10 +534,10 @@ dependencies = [ "ambient-authority", "fs-set-times", "io-extras", - "io-lifetimes 2.0.3", + "io-lifetimes", "ipnet", "maybe-owned", - "rustix 0.38.30", + "rustix", "windows-sys 0.52.0", "winx", ] @@ -608,7 +549,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20e5695565f0cd7106bc3c7170323597540e772bb73e0be2cd2c662a0f8fa4ca" dependencies = [ "ambient-authority", - "rand", + "rand 0.8.5", ] [[package]] @@ -619,8 +560,8 @@ checksum = "593db20e4c51f62d3284bae7ee718849c3214f93a3b94ea1899ad85ba119d330" dependencies = [ "cap-primitives", "io-extras", - "io-lifetimes 2.0.3", - "rustix 0.38.30", + "io-lifetimes", + "rustix", ] [[package]] @@ -633,7 +574,7 @@ dependencies = [ "cap-primitives", "iana-time-zone", "once_cell", - "rustix 0.38.30", + "rustix", "winx", ] @@ -655,18 +596,18 @@ dependencies = [ "either", "proc-macro-crate 0.1.5", "proc-macro-error", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "syn 1.0.109", ] [[package]] -name = "catppuccin-egui" -version = "2.0.1" +name = "cbc" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c840bcad5f36bba893de10ad208359b4b6bab36c60262af8e7883f2843350475" +checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" dependencies = [ - "egui", + "cipher", ] [[package]] @@ -678,8 +619,8 @@ dependencies = [ "heck", "indexmap 1.9.3", "log", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "serde", "serde_json", "syn 1.0.109", @@ -689,20 +630,14 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.83" +version = "1.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5" dependencies = [ "jobserver", "libc", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfg-if" version = "1.0.0" @@ -710,44 +645,35 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - -[[package]] -name = "cgl" -version = "0.3.2" +name = "chrono" +version = "0.4.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ced0551234e87afee12411d535648dd89d2e7f34c78b753395567aff3d447ff" +checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a" dependencies = [ - "libc", + "android-tzdata", + "iana-time-zone", + "num-traits", + "serde", + "windows-targets 0.52.4", ] [[package]] -name = "chrono" -version = "0.4.24" +name = "cipher" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "iana-time-zone", - "js-sys", - "num-integer", - "num-traits", - "time 0.1.45", - "wasm-bindgen", - "winapi", + "crypto-common", + "inout", ] [[package]] name = "clipboard-win" -version = "4.5.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362" +checksum = "d517d4b86184dbb111d3556a10f1c8a04da7428d2987bf1081602bf11c3aa9ee" dependencies = [ "error-code", - "str-buf", - "winapi", ] [[package]] @@ -760,6 +686,12 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "color_quant" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + [[package]] name = "colored" version = "2.1.0" @@ -771,23 +703,20 @@ dependencies = [ ] [[package]] -name = "combine" -version = "4.6.6" +name = "console_static_text" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +checksum = "f4be93df536dfbcbd39ff7c129635da089901116b88bfc29ec1acb9b56f8ff35" dependencies = [ - "bytes", - "memchr", + "unicode-width", + "vte", ] [[package]] -name = "concurrent-queue" -version = "2.2.0" +name = "const-oid" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c" -dependencies = [ - "crossbeam-utils", -] +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "convert_case" @@ -803,9 +732,9 @@ checksum = "147be55d677052dabc6b22252d5dd0fd4c29c8c27aa4f2fbef0f94aa003b406f" [[package]] name = "core-foundation" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" dependencies = [ "core-foundation-sys", "libc", @@ -813,32 +742,18 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.4" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" - -[[package]] -name = "core-graphics" -version = "0.22.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "core-graphics-types", - "foreign-types", - "libc", -] +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "core-graphics-types" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" dependencies = [ "bitflags 1.3.2", "core-foundation", - "foreign-types", "libc", ] @@ -853,27 +768,27 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.7" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c1eaa2012c47becbbad2ab175484c2a84d1185b566fb2cc5b8707343dfe58" +checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" dependencies = [ "libc", ] [[package]] name = "cranelift-bforest" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c22542c0b95bd3302f7ed6839869c561f2324bac2fd5e7e99f5cfa65fdc8b92" +checksum = "95ffa62b81e6d1b987933240ed7de5d4d85ae2e07153e3f9b74fc27ecfd81d2c" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3db903ef2e9c8a4de2ea6db5db052c7857282952f9df604aa55d169e6000d8" +checksum = "3af519738eb5d96c0d48b04845c88d0412a40167b5c42884e090fe9e015842ff" dependencies = [ "bumpalo", "cranelift-bforest", @@ -883,7 +798,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli", - "hashbrown 0.14.0", + "hashbrown 0.14.3", "log", "regalloc2", "smallvec", @@ -892,33 +807,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6590feb5a1d6438f974bf6a5ac4dddf69fca14e1f07f3265d880f69e61a94463" +checksum = "ba2da643fa5ccaf53cbb8db6acf3372321e2e13507d62c7c565529dd6f2d0ea0" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7239038c56fafe77fddc8788fc8533dd6c474dc5bdc5637216404f41ba807330" +checksum = "b3745d6c656649940d3f42d263b8ba00805e9bf1203205a0d98a7517a2fe5a35" [[package]] name = "cranelift-control" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7dc9c595341404d381d27a3d950160856b35b402275f0c3990cd1ad683c8053" +checksum = "41a521e2d0b427fe026457b70ba1896d9d560af72a47982db19fef11aa0ee789" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44e3ee532fc4776c69bcedf7e62f9632cbb3f35776fa9a525cdade3195baa3f7" +checksum = "96a6b8d80c6235fd73c0e9218d89f498b398fb0c52d4b30abd9a388da613f71f" dependencies = [ "serde", "serde_derive", @@ -926,9 +841,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a612c94d09e653662ec37681dc2d6fd2b9856e6df7147be0afc9aabb0abf19df" +checksum = "a3d555819f3a49c01826ce5bf0f3e52a4e17be9c4ee09381d6a1d88549793f3c" dependencies = [ "cranelift-codegen", "log", @@ -938,15 +853,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85db9830abeb1170b7d29b536ffd55af1d4d26ac8a77570b5d1aca003bf225cc" +checksum = "53aeebed3b78faea701062d4e384bffe91aef33e47d949bad10e5c540a00916d" [[package]] name = "cranelift-native" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301ef0edafeaeda5771a5d2db64ac53e1818ae3111220a185677025fe91db4a1" +checksum = "cc99479323e678deac40abffec0ca7a52cc6c549c0fa351b2d3a76655202a5a7" dependencies = [ "cranelift-codegen", "libc", @@ -955,25 +870,25 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.103.0" +version = "0.104.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "380f0abe8264e4570ac615fc31cef32a3b90a77f7eb97b08331f9dd357b1f500" +checksum = "cab055df5f977a3fee2837cd447b899d98a5e72374341461535b758608f25175" dependencies = [ "cranelift-codegen", "cranelift-entity", "cranelift-frontend", - "itertools", + "itertools 0.10.5", "log", "smallvec", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmtime-types", ] [[package]] name = "crc32fast" -version = "1.3.2" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" dependencies = [ "cfg-if", ] @@ -993,9 +908,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.11" +version = "0.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" +checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" dependencies = [ "crossbeam-utils", ] @@ -1035,92 +950,73 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" [[package]] -name = "crypto-common" -version = "0.1.6" +name = "crypto-bigint" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "typenum", -] - -[[package]] -name = "cxx" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93" -dependencies = [ - "cc", - "cxxbridge-flags", - "cxxbridge-macro", - "link-cplusplus", + "rand_core 0.6.4", + "subtle", + "zeroize", ] [[package]] -name = "cxx-build" -version = "1.0.94" +name = "crypto-common" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "cc", - "codespan-reporting", - "once_cell", - "proc-macro2 1.0.76", - "quote 1.0.35", - "scratch", - "syn 2.0.48", + "generic-array", + "rand_core 0.6.4", + "typenum", ] [[package]] -name = "cxxbridge-flags" -version = "1.0.94" +name = "ctr" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb" - -[[package]] -name = "cxxbridge-macro" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "cipher", ] [[package]] -name = "darling" -version = "0.14.4" +name = "curve25519-dalek" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348" dependencies = [ - "darling_core", - "darling_macro", + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "fiat-crypto", + "platforms", + "rustc_version 0.4.0", + "subtle", + "zeroize", ] [[package]] -name = "darling_core" -version = "0.14.4" +name = "curve25519-dalek-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ - "fnv", - "ident_case", - "proc-macro2 1.0.76", - "quote 1.0.35", - "strsim", - "syn 1.0.109", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "darling_macro" -version = "0.14.4" +name = "d3d12" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +checksum = "e16e44ab292b1dddfdaf7be62cfd8877df52f2f3fde5858d95bab606be259f20" dependencies = [ - "darling_core", - "quote 1.0.35", - "syn 1.0.109", + "bitflags 2.4.2", + "libloading 0.8.3", + "winapi", ] [[package]] @@ -1130,7 +1026,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ "cfg-if", - "hashbrown 0.14.0", + "hashbrown 0.14.3", "lock_api", "once_cell", "parking_lot_core", @@ -1144,9 +1040,9 @@ checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" [[package]] name = "data-url" -version = "0.3.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a" +checksum = "41b319d1b62ffbd002e057f36bebd1f42b9f97927c9577461d855f3513c4289f" [[package]] name = "debugid" @@ -1160,14 +1056,17 @@ dependencies = [ [[package]] name = "deno_ast" -version = "1.0.1" +version = "0.34.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d87c67f73e749f78096f517cbb57967d98a8c713b39cf88b1f0b8750a84aa29" +checksum = "58d986a1df3f1538ffa04162b5c5f00b856121391b860dc003bde2a6a741e878" dependencies = [ "anyhow", - "base64 0.21.7", + "base64", "deno_media_type", + "deno_terminal", "dprint-swc-ext", + "once_cell", + "percent-encoding", "serde", "swc_atoms", "swc_common", @@ -1191,23 +1090,73 @@ dependencies = [ "swc_visit", "swc_visit_macros", "text_lines", + "unicode-width", "url", ] +[[package]] +name = "deno_broadcast_channel" +version = "0.136.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eabffd397f07309b53463257c9fc06c8942cc3cc00cdf9e8ee39cb98ad9b4f54" +dependencies = [ + "async-trait", + "deno_core", + "tokio", + "uuid", +] + +[[package]] +name = "deno_cache" +version = "0.74.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "942802e70c5dd03dd26e7175610a21dfc6a8966687c40caf07774206d23b0e46" +dependencies = [ + "async-trait", + "deno_core", + "rusqlite", + "serde", + "sha2", + "tokio", +] + +[[package]] +name = "deno_canvas" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db20e7ba139eaa4fac15f2454728e2f6e9023db67099c5f2f0d3993643757f4d" +dependencies = [ + "deno_core", + "deno_webgpu", + "image", + "serde", + "tokio", +] + +[[package]] +name = "deno_console" +version = "0.142.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1712de085595861d173f1cdaa05ef59521c63f78db9c9b7cd7b693ccde7e329b" +dependencies = [ + "deno_core", +] + [[package]] name = "deno_core" -version = "0.255.0" +version = "0.270.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66349d0fd8e9cad751435b59cf9e09e9fad9433301e9529ca4edf130ea3a06a0" +checksum = "2af854955a06a4bde79c68600a78d2269f5a783417f5adc1d2d1fd410b6cc434" dependencies = [ "anyhow", + "bincode", "bit-set", "bit-vec", "bytes", "cooked-waker", "deno_core_icudata", "deno_ops", - "deno_unsync", + "deno_unsync 0.3.2", "futures", "libc", "log", @@ -1218,7 +1167,7 @@ dependencies = [ "serde_json", "serde_v8", "smallvec", - "sourcemap 7.0.1", + "sourcemap 7.1.1", "static_assertions", "tokio", "url", @@ -1232,175 +1181,790 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a13951ea98c0a4c372f162d669193b4c9d991512de9f2381dd161027f34b26b1" [[package]] -name = "deno_media_type" -version = "0.1.2" +name = "deno_cron" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a798670c20308e5770cc0775de821424ff9e85665b602928509c8c70430b3ee0" +checksum = "1ec8e68f111b1a4a154de2060e5f1d10849df97d8fa126f6a21ee52a034d5a99" dependencies = [ - "data-url", - "serde", - "url", + "anyhow", + "async-trait", + "chrono", + "deno_core", + "deno_unsync 0.1.1", + "saffron", + "tokio", ] [[package]] -name = "deno_ops" -version = "0.131.0" +name = "deno_crypto" +version = "0.156.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee3363343cd15758aa02792e93b53b1def9cf1e8b23dd82bdce0f223e6046e76" +checksum = "505ce77750e138dd29e0bd51f944f3f52c27d1fbbdf2cfd388d848d05efe7000" dependencies = [ - "proc-macro-rules", - "proc-macro2 1.0.76", - "quote 1.0.35", - "strum", - "strum_macros", - "syn 2.0.48", - "thiserror", + "aes", + "aes-gcm", + "aes-kw", + "base64", + "cbc", + "const-oid", + "ctr", + "curve25519-dalek", + "deno_core", + "deno_web", + "elliptic-curve", + "num-traits", + "once_cell", + "p256", + "p384", + "p521", + "rand 0.8.5", + "ring", + "rsa", + "serde", + "serde_bytes", + "sha1", + "sha2", + "signature", + "spki", + "tokio", + "uuid", + "x25519-dalek", ] [[package]] -name = "deno_unsync" -version = "0.3.2" +name = "deno_fetch" +version = "0.166.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30dff7e03584dbae188dae96a0f1876740054809b2ad0cf7c9fc5d361f20e739" +checksum = "aea276018532007aa3c45dc5bdff9c707fb8747e879b16d7a7782138128738e1" dependencies = [ + "bytes", + "data-url", + "deno_core", + "deno_tls", + "dyn-clone", + "http 0.2.12", + "pin-project", + "reqwest", + "serde", + "serde_json", "tokio", + "tokio-util", ] [[package]] -name = "deranged" -version = "0.3.11" +name = "deno_ffi" +version = "0.129.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +checksum = "0d23418076a3f41b92256cc05e9f3dd3d593775534d0916a1964c6c9fe16466c" dependencies = [ - "powerfmt", + "deno_core", + "dlopen2", + "dynasmrt", + "libffi", + "libffi-sys", + "serde", + "serde-value", + "serde_json", + "tokio", + "winapi", ] [[package]] -name = "derivative" -version = "2.2.0" +name = "deno_fs" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +checksum = "887b3427b8eb9d0b4e992c52cdc94a6ec55b68094f6ca68391ae48f515dc8b61" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", + "async-trait", + "base32", + "deno_core", + "deno_io", + "filetime", + "fs3", + "junction", + "libc", + "log", + "nix 0.26.2", + "rand 0.8.5", + "rayon", + "serde", + "tokio", + "winapi", ] [[package]] -name = "derive_more" -version = "0.99.17" +name = "deno_http" +version = "0.139.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "fc6bf2e50170c72e7334219033637a6909416889f67f57f380b021f3f82d5aff" dependencies = [ - "convert_case", - "proc-macro2 1.0.76", - "quote 1.0.35", - "rustc_version 0.4.0", - "syn 1.0.109", + "async-compression", + "async-trait", + "base64", + "brotli", + "bytes", + "cache_control", + "deno_core", + "deno_net", + "deno_websocket", + "flate2", + "http 0.2.12", + "http 1.1.0", + "httparse", + "hyper 0.14.28", + "hyper 1.1.0", + "hyper-util", + "itertools 0.10.5", + "memmem", + "mime", + "once_cell", + "percent-encoding", + "phf", + "pin-project", + "ring", + "scopeguard", + "serde", + "smallvec", + "thiserror", + "tokio", + "tokio-util", ] [[package]] -name = "digest" -version = "0.10.6" +name = "deno_io" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "b5fc08a5df8aa7c78c92c79ada0bb9cad906eef1f3f466b5c4c523ff62802ff9" dependencies = [ - "block-buffer", - "crypto-common", + "async-trait", + "deno_core", + "filetime", + "fs3", + "once_cell", + "os_pipe", + "rand 0.8.5", + "tokio", + "winapi", ] [[package]] -name = "directories-next" -version = "2.0.0" +name = "deno_kv" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc" +checksum = "807aea26488d6e079e732f1dbfaafe659e62c7f117a6b5312681f11d68cad3e2" dependencies = [ - "cfg-if", - "dirs-sys-next", + "anyhow", + "async-trait", + "base64", + "chrono", + "deno_core", + "deno_fetch", + "deno_node", + "deno_tls", + "deno_unsync 0.1.1", + "denokv_proto", + "denokv_remote", + "denokv_sqlite", + "faster-hex", + "log", + "num-bigint", + "prost 0.11.9", + "prost-build", + "rand 0.8.5", + "reqwest", + "rusqlite", + "serde", + "serde_json", + "termcolor", + "tokio", + "url", + "uuid", ] [[package]] -name = "dirs" -version = "4.0.0" +name = "deno_lockfile" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +checksum = "8835418ae924f25ab20f508bf6240193b22d893519d44432b670a27b8fb1efeb" dependencies = [ - "dirs-sys", + "serde", + "serde_json", + "sha2", + "thiserror", ] [[package]] -name = "dirs-sys" -version = "0.3.7" +name = "deno_media_type" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +checksum = "a798670c20308e5770cc0775de821424ff9e85665b602928509c8c70430b3ee0" dependencies = [ - "libc", - "redox_users", - "winapi", + "data-url", + "serde", + "url", ] [[package]] -name = "dirs-sys-next" -version = "0.1.2" +name = "deno_napi" +version = "0.72.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +checksum = "13553afb6cc3292b96c989abd3ee9e9cdb58ba703c2b69941c1b9392839372f9" dependencies = [ - "libc", - "redox_users", - "winapi", + "deno_core", + "libloading 0.7.4", ] [[package]] -name = "dispatch" +name = "deno_native_certs" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" +checksum = "f4785d0bdc13819b665b71e4fb7e119d859568471e4c245ec5610857e70c9345" +dependencies = [ + "dlopen2", + "dlopen2_derive", + "once_cell", + "rustls-native-certs", + "rustls-pemfile", +] [[package]] -name = "dlib" -version = "0.5.0" +name = "deno_net" +version = "0.134.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794" +checksum = "8b508e548550610f9555b438ec4acceb829d3d1c921e125c5eb4f8a9831c3fd3" dependencies = [ - "libloading 0.7.4", + "deno_core", + "deno_tls", + "enum-as-inner", + "log", + "pin-project", + "rustls-tokio-stream", + "serde", + "socket2", + "tokio", + "trust-dns-proto", + "trust-dns-resolver", ] [[package]] -name = "dlopen" -version = "0.1.8" +name = "deno_node" +version = "0.79.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e80ad39f814a9abe68583cd50a2d45c8a67561c3361ab8da240587dda80937" +checksum = "819e7f31af77e7052e4cbea58845591484e99d1e12c591a7f360bc2267f0d855" dependencies = [ - "dlopen_derive", - "lazy_static", - "libc", - "winapi", + "aead-gcm-stream", + "aes", + "brotli", + "bytes", + "cbc", + "const-oid", + "data-encoding", + "deno_core", + "deno_fetch", + "deno_fs", + "deno_media_type", + "deno_net", + "deno_whoami", + "digest", + "dsa", + "ecb", + "elliptic-curve", + "errno 0.2.8", + "faster-hex", + "h2 0.3.24", + "hkdf", + "http 0.2.12", + "idna 0.3.0", + "indexmap 2.2.5", + "k256", + "lazy-regex", + "libc", + "libz-sys", + "md-5", + "md4", + "nix 0.26.2", + "num-bigint", + "num-bigint-dig", + "num-integer", + "num-traits", + "once_cell", + "p224", + "p256", + "p384", + "path-clean", + "pbkdf2", + "pin-project-lite", + "rand 0.8.5", + "regex", + "reqwest", + "ring", + "ripemd", + "rsa", + "scrypt", + "sec1", + "serde", + "sha-1", + "sha2", + "signature", + "simd-json", + "spki", + "tokio", + "typenum", + "url", + "winapi", + "windows-sys 0.48.0", + "x25519-dalek", + "x509-parser", ] [[package]] -name = "dlopen_derive" -version = "0.1.4" +name = "deno_ops" +version = "0.146.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13689abbb2af68c19b949a8852d9612f063fdc68a446a9c9d2b7b1e340f8516c" +dependencies = [ + "proc-macro-rules", + "proc-macro2", + "quote", + "strum", + "strum_macros", + "syn 2.0.52", + "thiserror", +] + +[[package]] +name = "deno_permissions" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f236d9e1b1fbd81cea0f9cbdc8dcc7e8ebcd80e6659cd7cb2ad5f6c05946c581" +checksum = "13947fbfb119f27f54f9d839d0484d610600b6b76b207ad544d134a36bd730ad" dependencies = [ + "console_static_text", + "deno_core", + "deno_terminal", "libc", - "quote 0.6.13", - "syn 0.15.44", + "log", + "once_cell", + "serde", + "termcolor", + "which 4.4.2", + "winapi", ] [[package]] -name = "downcast-rs" -version = "1.2.0" +name = "deno_runtime" +version = "0.150.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9886212735d0908f7cb18ab9758a8531acec2b6b24f2890a959b3f4edfa18444" +dependencies = [ + "console_static_text", + "deno_ast", + "deno_broadcast_channel", + "deno_cache", + "deno_canvas", + "deno_console", + "deno_core", + "deno_cron", + "deno_crypto", + "deno_fetch", + "deno_ffi", + "deno_fs", + "deno_http", + "deno_io", + "deno_kv", + "deno_napi", + "deno_net", + "deno_node", + "deno_permissions", + "deno_terminal", + "deno_tls", + "deno_url", + "deno_web", + "deno_webgpu", + "deno_webidl", + "deno_websocket", + "deno_webstorage", + "dlopen2", + "encoding_rs", + "fastwebsockets", + "filetime", + "flate2", + "fs3", + "fwdansi", + "http 1.1.0", + "http-body-util", + "hyper 0.14.28", + "hyper 1.1.0", + "hyper-util", + "libc", + "log", + "netif", + "nix 0.26.2", + "notify", + "ntapi", + "once_cell", + "regex", + "ring", + "rustyline", + "serde", + "signal-hook", + "signal-hook-registry", + "tokio", + "tokio-metrics", + "uuid", + "which 4.4.2", + "winapi", + "windows-sys 0.48.0", + "winres", +] + +[[package]] +name = "deno_terminal" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e6337d4e7f375f8b986409a76fbeecfa4bd8a1343e63355729ae4befa058eaf" +dependencies = [ + "once_cell", + "termcolor", +] + +[[package]] +name = "deno_tls" +version = "0.129.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "515e99b099065defd3e1039b50b386dec85d0a6621371ce9fc9b67cc4d945912" +dependencies = [ + "deno_core", + "deno_native_certs", + "once_cell", + "rustls 0.21.10", + "rustls-pemfile", + "rustls-tokio-stream", + "rustls-webpki 0.101.7", + "serde", + "webpki-roots 0.25.4", +] + +[[package]] +name = "deno_unsync" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac0984205f25e71ddd1be603d76e70255953c12ff864707359ab195d26dfc7b3" +dependencies = [ + "tokio", +] + +[[package]] +name = "deno_unsync" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30dff7e03584dbae188dae96a0f1876740054809b2ad0cf7c9fc5d361f20e739" +dependencies = [ + "tokio", +] + +[[package]] +name = "deno_url" +version = "0.142.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bd5afe3567e4dba73bd1bf50153bbff6bcb2781d8c7e0468794ddfc4e8e96a6" +dependencies = [ + "deno_core", + "serde", + "urlpattern", +] + +[[package]] +name = "deno_web" +version = "0.173.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff579a91d7c82a1bb9e71e3dba48c5b5fdb92953ac927a6f37d46bce49d3bdcd" +dependencies = [ + "async-trait", + "base64-simd 0.8.0", + "bytes", + "deno_core", + "encoding_rs", + "flate2", + "futures", + "serde", + "tokio", + "uuid", + "windows-sys 0.48.0", +] + +[[package]] +name = "deno_webgpu" +version = "0.109.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38726b678a589a95c962b6bc875f05962f3b2e826849bc024ed5d54ca8b93eaf" +dependencies = [ + "deno_core", + "raw-window-handle", + "serde", + "tokio", + "wgpu-core", + "wgpu-hal", + "wgpu-types", +] + +[[package]] +name = "deno_webidl" +version = "0.142.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4e1377b1548eb05421de51d533878425c200de952dcb45798af963a67fc76be" +dependencies = [ + "deno_core", +] + +[[package]] +name = "deno_websocket" +version = "0.147.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de022c3ed606c0a0df47bfd6d62b4f1fd0c4d57edfeba6c1202f7d6dec037658" +dependencies = [ + "bytes", + "deno_core", + "deno_net", + "deno_tls", + "fastwebsockets", + "h2 0.4.3", + "http 1.1.0", + "http-body-util", + "hyper 1.1.0", + "hyper-util", + "once_cell", + "rustls-tokio-stream", + "serde", + "tokio", +] + +[[package]] +name = "deno_webstorage" +version = "0.137.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" +checksum = "cd538d9a6b8f45a105e9f8c2cd3b345d8a437c563f42d85aea368a322d05ab51" +dependencies = [ + "deno_core", + "deno_web", + "rusqlite", + "serde", +] + +[[package]] +name = "deno_whoami" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e75e4caa92b98a27f09c671d1399aee0f5970aa491b9a598523aac000a2192e3" +dependencies = [ + "libc", + "whoami", +] + +[[package]] +name = "denokv_proto" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98a79f7e98bfd3c148ce782c27c1494e77c3c94ab87c9e7e86e901cbc1643449" +dependencies = [ + "anyhow", + "async-trait", + "chrono", + "futures", + "num-bigint", + "prost 0.11.9", + "prost-build", + "serde", + "uuid", +] + +[[package]] +name = "denokv_remote" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "518e181eb14f1a3b8fc423e48de431048249780fb0815d81e8139faf347c3269" +dependencies = [ + "anyhow", + "async-stream", + "async-trait", + "bytes", + "chrono", + "denokv_proto", + "futures", + "log", + "prost 0.11.9", + "rand 0.8.5", + "reqwest", + "serde", + "serde_json", + "tokio", + "tokio-util", + "url", + "uuid", +] + +[[package]] +name = "denokv_sqlite" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90af93f2ab8eec43fea9f8931fa99d38e73fa0af60aba0fae79de3fb87a0ed06" +dependencies = [ + "anyhow", + "async-stream", + "async-trait", + "chrono", + "denokv_proto", + "futures", + "hex", + "log", + "num-bigint", + "rand 0.8.5", + "rusqlite", + "serde_json", + "thiserror", + "tokio", + "uuid", +] + +[[package]] +name = "der" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +dependencies = [ + "const-oid", + "pem-rfc7468", + "zeroize", +] + +[[package]] +name = "der-parser" +version = "8.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom 7.1.3", + "num-bigint", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "derive_more" +version = "0.99.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version 0.4.0", + "syn 1.0.109", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "directories-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-sys" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "displaydoc" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.52", +] + +[[package]] +name = "dlopen2" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bc2c7ed06fd72a8513ded8d0d2f6fd2655a85d6885c48cae8625d80faf28c03" +dependencies = [ + "dlopen2_derive", + "libc", + "once_cell", + "winapi", +] + +[[package]] +name = "dlopen2_derive" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2b99bf03862d7f545ebc28ddd33a665b50865f4dfd84031a393823879bd4c54" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.52", +] [[package]] name = "dprint-swc-ext" -version = "0.13.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b2f24ce6b89a06ae3eb08d5d4f88c05d0aef1fa58e2eba8dd92c97b84210c25" +checksum = "5bad772f9e49af3a613fcddf1671d1e2e877e0a6d94f2b7162bfea4ac8140bee" dependencies = [ - "bumpalo", "num-bigint", "rustc-hash", "swc_atoms", @@ -1411,102 +1975,101 @@ dependencies = [ ] [[package]] -name = "dyn-clone" -version = "1.0.11" +name = "dsa" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30" +checksum = "48bc224a9084ad760195584ce5abb3c2c34a225fa312a128ad245a6b412b7689" +dependencies = [ + "digest", + "num-bigint-dig", + "num-traits", + "pkcs8", + "rfc6979", + "sha2", + "signature", + "zeroize", +] [[package]] -name = "ecolor" -version = "0.21.0" +name = "dyn-clone" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f99fe3cac305af9d6d92971af60d0f7ea4d783201ef1673571567b6699964d9" -dependencies = [ - "bytemuck", -] +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" [[package]] -name = "eframe" -version = "0.21.3" +name = "dynasm" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df3ce60931e5f2d83bab4484d1a283908534d5308cc6b0c5c22c59cd15ee7cc" +checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" dependencies = [ - "bytemuck", - "egui", - "egui-winit", - "egui_glow", - "glow", - "glutin", - "glutin-winit", - "js-sys", - "percent-encoding", - "raw-window-handle", - "thiserror", - "tracing", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "winit", + "bitflags 1.3.2", + "byteorder", + "lazy_static", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "egui" -version = "0.21.0" +name = "dynasmrt" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6412a21e0bde7c0918f7fb44bbbb86b5e1f88e63c026a4e747cc7af02f76dfbe" +checksum = "64fba5a42bd76a17cad4bfa00de168ee1cbfa06a5e8ce992ae880218c05641a9" dependencies = [ - "accesskit", - "ahash", - "epaint", - "nohash-hasher", - "tracing", + "byteorder", + "dynasm", + "memmap2", ] [[package]] -name = "egui-winit" -version = "0.21.1" +name = "ecb" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab43597ba41f0ce39a364ad83185594578bfd8b3409b99dbcbb01df23afc3dbb" +checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7" dependencies = [ - "accesskit_winit", - "android-activity", - "arboard", - "egui", - "instant", - "smithay-clipboard", - "tracing", - "webbrowser", - "winit", + "cipher", ] [[package]] -name = "egui_glow" -version = "0.21.0" +name = "ecdsa" +version = "0.16.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8257332fb168a965b3dca81d6a344e053153773c889cabdba0b3b76f1629ae81" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" dependencies = [ - "bytemuck", - "egui", - "glow", - "memoffset 0.6.5", - "tracing", - "wasm-bindgen", - "web-sys", + "der", + "digest", + "elliptic-curve", + "rfc6979", + "signature", + "spki", ] [[package]] name = "either" -version = "1.8.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a" [[package]] -name = "emath" -version = "0.21.0" +name = "elliptic-curve" +version = "0.13.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ecd80612937e0267909d5351770fe150004e24dab93954f69ca62eecd3f77e" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ - "bytemuck", + "base16ct", + "crypto-bigint", + "digest", + "ff", + "generic-array", + "group", + "hkdf", + "pem-rfc7468", + "pkcs8", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", ] [[package]] @@ -1519,40 +2082,21 @@ dependencies = [ ] [[package]] -name = "enumflags2" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c041f5090df68b32bcd905365fd51769c8b9d553fe87fde0b683534f10c01bd2" -dependencies = [ - "enumflags2_derive", - "serde", -] - -[[package]] -name = "enumflags2_derive" -version = "0.7.7" +name = "endian-type" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" -dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", -] +checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" [[package]] -name = "epaint" -version = "0.21.0" +name = "enum-as-inner" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12e78b5c58a1f7f621f9d546add2adce20636422c9b251e29f749e8a2f713c95" +checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116" dependencies = [ - "ab_glyph", - "ahash", - "atomic_refcell", - "bytemuck", - "ecolor", - "emath", - "nohash-hasher", - "parking_lot", + "heck", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -1561,6 +2105,17 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +[[package]] +name = "errno" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" +dependencies = [ + "errno-dragonfly", + "libc", + "winapi", +] + [[package]] name = "errno" version = "0.3.8" @@ -1572,26 +2127,26 @@ dependencies = [ ] [[package]] -name = "error-code" -version = "2.3.1" +name = "errno-dragonfly" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" dependencies = [ + "cc", "libc", - "str-buf", ] [[package]] -name = "event-listener" -version = "2.5.3" +name = "error-code" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" +checksum = "a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b" [[package]] name = "extism" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f671f4ebf55af0b783a13a03babac5973c276347893db13c548a0cf04db5f844" +checksum = "7360c0823a0e303eb0b5bdb1125a5dae0867a77bfc533bd7e306b5989a53aab6" dependencies = [ "anyhow", "cbindgen", @@ -1602,7 +2157,7 @@ dependencies = [ "serde", "serde_json", "sha2", - "toml 0.8.8", + "toml 0.8.11", "tracing", "tracing-subscriber", "ureq", @@ -1614,38 +2169,52 @@ dependencies = [ [[package]] name = "extism-convert" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389563033064477066d6beb9c321cf066f9080878421ae969d354b3b461cc26a" +checksum = "8e78a2317936c20806cb60fa98c15dcc5ccf43458e4cbddad3c6cce17a05b31c" dependencies = [ "anyhow", - "base64 0.21.7", + "base64", "bytemuck", - "prost", + "extism-convert-macros", + "prost 0.12.3", "rmp-serde", "serde", "serde_json", ] +[[package]] +name = "extism-convert-macros" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d190cc0c058346b7750868de96dab17e047e7588ec91691a29b6db4eafd51a7e" +dependencies = [ + "manyhow", + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.52", +] + [[package]] name = "extism-manifest" -version = "1.0.2" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713caa4f88b485d8e03a969f5ccd41cf173194fc1a7f5617688cc51efdc724f6" +checksum = "a08af46dc0633e0874e6c1a66ac1226bf2fad6fa67568538238af8b316569d06" dependencies = [ - "base64 0.21.7", + "base64", "serde", "serde_json", ] [[package]] name = "extism-pdk" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ac12d16e778ccf351f39a45efb65c0bbdb45bc9928c557507e808efafa51cf" +checksum = "1f9a87d636d30b75e697642dd4f6cff2054db5a7a5d69d6601041a76265bb681" dependencies = [ "anyhow", - "base64 0.21.7", + "base64", "extism-convert", "extism-manifest", "extism-pdk-derive", @@ -1655,28 +2224,74 @@ dependencies = [ [[package]] name = "extism-pdk-derive" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61a79239414de9041626020530854cef77027a28d92bf542c7854e271101e9aa" +checksum = "d83995c2023720a0fd5ef2a349c89c1670efb37a979228b0218705f5ddb50d4b" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] +[[package]] +name = "fallible-iterator" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" + [[package]] name = "fallible-iterator" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" +[[package]] +name = "fallible-streaming-iterator" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" + +[[package]] +name = "faster-hex" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2a2b11eda1d40935b26cf18f6833c526845ae8c41e58d09af6adeb6f0269183" +dependencies = [ + "serde", +] + [[package]] name = "fastrand" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "fastwebsockets" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f63dd7b57f9b33b1741fa631c9522eb35d43e96dcca4a6a91d5e4ca7c93acdc1" dependencies = [ - "instant", + "base64", + "http-body-util", + "hyper 1.1.0", + "hyper-util", + "pin-project", + "rand 0.8.5", + "sha1", + "simdutf8", + "thiserror", + "tokio", + "utf-8", ] [[package]] @@ -1696,19 +2311,53 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947" dependencies = [ "cfg-if", - "rustix 0.38.30", + "rustix", "windows-sys 0.52.0", ] [[package]] name = "fdeflate" -version = "0.3.0" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10" +checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645" dependencies = [ "simd-adler32", ] +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "fiat-crypto" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382" + +[[package]] +name = "filetime" +version = "0.2.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "windows-sys 0.52.0", +] + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + [[package]] name = "flate2" version = "1.0.26" @@ -1719,6 +2368,15 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "float-cmp" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" +dependencies = [ + "num-traits", +] + [[package]] name = "fnv" version = "1.0.7" @@ -1733,18 +2391,30 @@ checksum = "6e40f949ebdea38c2472c6b5108809b8d06289ef95e05be0d85db44de03d6d92" [[package]] name = "foreign-types" -version = "0.3.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" dependencies = [ + "foreign-types-macros", "foreign-types-shared", ] +[[package]] +name = "foreign-types-macros" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.52", +] + [[package]] name = "foreign-types-shared" -version = "0.1.1" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" [[package]] name = "form_urlencoded" @@ -1771,9 +2441,9 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a0b11eeb173ce52f84ebd943d42e58813a2ebb78a6a3ff0a243b71c5199cd7b" dependencies = [ - "proc-macro2 1.0.76", + "proc-macro2", "swc_macros_common", - "syn 2.0.48", + "syn 2.0.52", ] [[package]] @@ -1782,11 +2452,31 @@ version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "033b337d725b97690d86893f9de22b67b80dcc4e9ad815f348254c38119db8fb" dependencies = [ - "io-lifetimes 2.0.3", - "rustix 0.38.30", + "io-lifetimes", + "rustix", "windows-sys 0.52.0", ] +[[package]] +name = "fs3" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb17cf6ed704f72485332f6ab65257460c4f9f3083934cf402bf9f5b3b600a90" +dependencies = [ + "libc", + "rustc_version 0.2.3", + "winapi", +] + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + [[package]] name = "fslock" version = "0.2.1" @@ -1797,11 +2487,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "fuchsia-cprng" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" + [[package]] name = "futures" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ "futures-channel", "futures-core", @@ -1814,9 +2510,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", "futures-sink", @@ -1824,15 +2520,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" [[package]] name = "futures-executor" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" dependencies = [ "futures-core", "futures-task", @@ -1842,9 +2538,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-lite" @@ -1852,7 +2548,7 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", + "fastrand 1.9.0", "futures-core", "futures-io", "memchr", @@ -1863,32 +2559,32 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "futures-sink" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" [[package]] name = "futures-task" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-test" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84af27744870a4a325fa342ce65a940dfba08957b260b790ec278c1d81490349" +checksum = "ce388237b32ac42eca0df1ba55ed3bbda4eaf005d7d4b5dbc0b20ab962928ac9" dependencies = [ "futures-core", "futures-executor", @@ -1903,9 +2599,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ "futures-channel", "futures-core", @@ -1919,6 +2615,16 @@ dependencies = [ "slab", ] +[[package]] +name = "fwdansi" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08c1f5787fe85505d1f7777268db5103d80a7a374d2316a7ce262e57baf8f208" +dependencies = [ + "memchr", + "termcolor", +] + [[package]] name = "fxhash" version = "0.2.1" @@ -1949,27 +2655,30 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", + "zeroize", ] [[package]] -name = "gethostname" -version = "0.2.3" +name = "getrandom" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e" +checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" dependencies = [ + "cfg-if", + "js-sys", "libc", - "winapi", + "wasi", + "wasm-bindgen", ] [[package]] -name = "getrandom" -version = "0.2.11" +name = "ghash" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" +checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" dependencies = [ - "cfg-if", - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "opaque-debug", + "polyval", ] [[package]] @@ -1978,8 +2687,8 @@ version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" dependencies = [ - "fallible-iterator", - "indexmap 2.0.0", + "fallible-iterator 0.3.0", + "indexmap 2.2.5", "stable_deref_trait", ] @@ -2002,9 +2711,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "glow" -version = "0.12.1" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e007a07a24de5ecae94160f141029e9a347282cfe25d1d58d85d845cf3130f1" +checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1" dependencies = [ "js-sys", "slotmap", @@ -2013,67 +2722,76 @@ dependencies = [ ] [[package]] -name = "glutin" -version = "0.30.8" +name = "glutin_wgl_sys" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f9b771a65f0a1e3ddb6aa16f867d87dc73c922411c255e6c4ab7f6d45c7327" +checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead" dependencies = [ - "bitflags 1.3.2", - "cfg_aliases", - "cgl", - "core-foundation", - "dispatch", - "glutin_egl_sys", - "glutin_glx_sys", - "glutin_wgl_sys", - "libloading 0.7.4", - "objc2", - "once_cell", - "raw-window-handle", - "wayland-sys 0.30.1", - "windows-sys 0.45.0", - "x11-dl", + "gl_generator", +] + +[[package]] +name = "gpu-alloc" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" +dependencies = [ + "bitflags 2.4.2", + "gpu-alloc-types", ] [[package]] -name = "glutin-winit" +name = "gpu-alloc-types" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "629a873fc04062830bfe8f97c03773bcd7b371e23bcc465d0a61448cd1588fa4" +checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" dependencies = [ - "cfg_aliases", - "glutin", - "raw-window-handle", - "winit", + "bitflags 2.4.2", ] [[package]] -name = "glutin_egl_sys" -version = "0.5.0" +name = "gpu-allocator" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b3bcbddc51573b977fc6dca5d93867e4f29682cdbaf5d13e48f4fa4346d4d87" +checksum = "40fe17c8a05d60c38c0a4e5a3c802f2f1ceb66b76c67d96ffb34bef0475a7fad" dependencies = [ - "gl_generator", - "windows-sys 0.45.0", + "backtrace", + "log", + "presser", + "thiserror", + "winapi", + "windows", ] [[package]] -name = "glutin_glx_sys" -version = "0.4.0" +name = "gpu-descriptor" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b53cb5fe568964aa066a3ba91eac5ecbac869fb0842cd0dc9e412434f1a1494" +checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" dependencies = [ - "gl_generator", - "x11-dl", + "bitflags 2.4.2", + "gpu-descriptor-types", + "hashbrown 0.14.3", ] [[package]] -name = "glutin_wgl_sys" -version = "0.4.0" +name = "gpu-descriptor-types" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef89398e90033fc6bc65e9bd42fd29bbbfd483bda5b56dc5562f455550618165" +checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c" dependencies = [ - "gl_generator", + "bitflags 2.4.2", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core 0.6.4", + "subtle", ] [[package]] @@ -2087,14 +2805,43 @@ dependencies = [ "futures-core", "futures-sink", "futures-util", - "http", - "indexmap 2.0.0", + "http 0.2.12", + "indexmap 2.2.5", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51ee2dd2e4f378392eeff5d51618cd9a63166a2513846bbc55f21cfacd9199d4" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http 1.1.0", + "indexmap 2.2.5", "slab", "tokio", "tokio-util", "tracing", ] +[[package]] +name = "halfbrown" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8588661a8607108a5ca69cab034063441a0413a0b041c13618a7dd348021ef6f" +dependencies = [ + "hashbrown 0.14.3", + "serde", +] + [[package]] name = "hashbrown" version = "0.12.3" @@ -2112,33 +2859,34 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.0" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" dependencies = [ "ahash", + "allocator-api2", ] [[package]] -name = "heck" -version = "0.4.1" +name = "hashlink" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.3", +] [[package]] -name = "hermit-abi" -version = "0.2.6" +name = "heck" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" -version = "0.3.1" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" [[package]] name = "hex" @@ -2146,6 +2894,30 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hexf-parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" + +[[package]] +name = "hkdf" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +dependencies = [ + "hmac", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest", +] + [[package]] name = "home" version = "0.5.9" @@ -2155,6 +2927,17 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + [[package]] name = "hstr" version = "0.2.7" @@ -2163,16 +2946,27 @@ checksum = "17fafeca18cf0927e23ea44d7a5189c10536279dfe9094e0dfa953053fbb5377" dependencies = [ "new_debug_unreachable", "once_cell", - "phf 0.11.2", + "phf", "rustc-hash", "smallvec", ] [[package]] name = "http" -version = "0.2.11" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" dependencies = [ "bytes", "fnv", @@ -2186,7 +2980,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" dependencies = [ "bytes", - "http", + "http 0.2.12", + "pin-project-lite", +] + +[[package]] +name = "http-body" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" +dependencies = [ + "bytes", + "http 1.1.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" +dependencies = [ + "bytes", + "futures-core", + "http 1.1.0", + "http-body 1.0.0", "pin-project-lite", ] @@ -2212,14 +3029,14 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2", - "http", - "http-body", + "h2 0.3.24", + "http 0.2.12", + "http-body 0.4.6", "httparse", "httpdate", "itoa", "pin-project-lite", - "socket2 0.5.5", + "socket2", "tokio", "tower-service", "tracing", @@ -2227,40 +3044,78 @@ dependencies = [ ] [[package]] -name = "hyper-tls" -version = "0.5.0" +name = "hyper" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5aa53871fc917b1a9ed87b683a5d86db645e23acb32c2e0785a353e522fb75" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.3", + "http 1.1.0", + "http-body 1.0.0", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http 0.2.12", + "hyper 0.14.28", + "rustls 0.21.10", + "tokio", + "tokio-rustls", +] + +[[package]] +name = "hyper-util" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +checksum = "bdea9aac0dbe5a9240d68cfd9501e2db94222c6dc06843e06640b9e07f0fdc67" dependencies = [ "bytes", - "hyper", - "native-tls", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "hyper 1.1.0", + "pin-project-lite", + "socket2", "tokio", - "tokio-native-tls", + "tracing", ] [[package]] name = "iana-time-zone" -version = "0.1.59" +version = "0.1.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows-core 0.52.0", ] [[package]] name = "iana-time-zone-haiku" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" dependencies = [ - "cxx", - "cxx-build", + "cc", ] [[package]] @@ -2270,16 +3125,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" [[package]] -name = "ident_case" -version = "1.0.1" +name = "idna" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +dependencies = [ + "matches", + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] [[package]] name = "idna" -version = "0.5.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -2291,6 +3161,19 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" +[[package]] +name = "image" +version = "0.24.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "num-traits", + "png", +] + [[package]] name = "indexmap" version = "1.9.3" @@ -2303,15 +3186,45 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.0.0" +version = "2.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" dependencies = [ "equivalent", - "hashbrown 0.14.0", + "hashbrown 0.14.3", "serde", ] +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags 1.3.2", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "block-padding", + "generic-array", +] + [[package]] name = "instant" version = "0.1.12" @@ -2319,9 +3232,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", ] [[package]] @@ -2330,32 +3240,33 @@ version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c301e73fb90e8a29e600a9f402d095765f74310d582916a952f618836a1bd1ed" dependencies = [ - "io-lifetimes 2.0.3", + "io-lifetimes", "windows-sys 0.52.0", ] [[package]] name = "io-lifetimes" -version = "1.0.10" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" -dependencies = [ - "hermit-abi 0.3.1", - "libc", - "windows-sys 0.48.0", -] +checksum = "5a611371471e98973dbcab4e0ec66c31a10bc356eeb4d54a0e05eac8158fe38c" [[package]] -name = "io-lifetimes" -version = "2.0.3" +name = "ipconfig" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a611371471e98973dbcab4e0ec66c31a10bc356eeb4d54a0e05eac8158fe38c" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2", + "widestring", + "windows-sys 0.48.0", + "winreg", +] [[package]] name = "ipnet" -version = "2.7.2" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "is-macro" @@ -2364,9 +3275,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59a85abdc13717906baccb5a1e435556ce0df215f242892f721dff62bf25288f" dependencies = [ "Inflector", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] @@ -2388,11 +3299,20 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" [[package]] name = "ittapi" @@ -2415,43 +3335,31 @@ dependencies = [ ] [[package]] -name = "jni" -version = "0.21.1" +name = "jobserver" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" dependencies = [ - "cesu8", - "cfg-if", - "combine", - "jni-sys", - "log", - "thiserror", - "walkdir", - "windows-sys 0.45.0", + "libc", ] [[package]] -name = "jni-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" - -[[package]] -name = "jobserver" -version = "0.1.26" +name = "js-sys" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" dependencies = [ - "libc", + "wasm-bindgen", ] [[package]] -name = "js-sys" -version = "0.3.61" +name = "junction" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +checksum = "be39922b087cecaba4e2d5592dedfc8bda5d4a5a1231f143337cca207950b61d" dependencies = [ - "wasm-bindgen", + "scopeguard", + "winapi", ] [[package]] @@ -2464,17 +3372,88 @@ dependencies = [ "rayon", ] +[[package]] +name = "k256" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +dependencies = [ + "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2", + "signature", +] + +[[package]] +name = "khronos-egl" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" +dependencies = [ + "libc", + "libloading 0.8.3", + "pkg-config", +] + [[package]] name = "khronos_api" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" +[[package]] +name = "kqueue" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "lazy-regex" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d12be4595afdf58bd19e4a9f4e24187da2a66700786ff660a418e9059937a4c" +dependencies = [ + "lazy-regex-proc_macros", + "once_cell", + "regex", +] + +[[package]] +name = "lazy-regex-proc_macros" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44bcd58e6c97a7fcbaffcdc95728b393b8d98933bfadad49ed4097845b57ef0b" +dependencies = [ + "proc-macro2", + "quote", + "regex", + "syn 2.0.52", +] + [[package]] name = "lazy_static" version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +dependencies = [ + "spin 0.5.2", +] [[package]] name = "leb128" @@ -2482,11 +3461,94 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" +[[package]] +name = "lexical-core" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cde5de06e8d4c2faabc400238f9ae1c74d5412d03a7bd067645ccbc47070e46" +dependencies = [ + "lexical-parse-float", + "lexical-parse-integer", + "lexical-util", + "lexical-write-float", + "lexical-write-integer", +] + +[[package]] +name = "lexical-parse-float" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683b3a5ebd0130b8fb52ba0bdc718cc56815b6a097e28ae5a6997d0ad17dc05f" +dependencies = [ + "lexical-parse-integer", + "lexical-util", + "static_assertions", +] + +[[package]] +name = "lexical-parse-integer" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d0994485ed0c312f6d965766754ea177d07f9c00c9b82a5ee62ed5b47945ee9" +dependencies = [ + "lexical-util", + "static_assertions", +] + +[[package]] +name = "lexical-util" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5255b9ff16ff898710eb9eb63cb39248ea8a5bb036bea8085b1a767ff6c4e3fc" +dependencies = [ + "static_assertions", +] + +[[package]] +name = "lexical-write-float" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accabaa1c4581f05a3923d1b4cfd124c329352288b7b9da09e766b0668116862" +dependencies = [ + "lexical-util", + "lexical-write-integer", + "static_assertions", +] + +[[package]] +name = "lexical-write-integer" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1b6f3d1f4422866b68192d62f77bc5c700bee84f3069f2469d7bc8c77852446" +dependencies = [ + "lexical-util", + "static_assertions", +] + [[package]] name = "libc" -version = "0.2.152" +version = "0.2.153" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" + +[[package]] +name = "libffi" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce826c243048e3d5cec441799724de52e2d42f820468431fc3fceee2341871e2" +dependencies = [ + "libc", + "libffi-sys", +] + +[[package]] +name = "libffi-sys" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" +checksum = "f36115160c57e8529781b4183c2bb51fdc1f6d6d1ed345591d84be7703befb3c" +dependencies = [ + "cc", +] [[package]] name = "libloading" @@ -2500,28 +3562,58 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" +checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" dependencies = [ "cfg-if", - "windows-sys 0.48.0", + "windows-targets 0.52.4", ] [[package]] -name = "link-cplusplus" -version = "1.0.8" +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "libredox" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +dependencies = [ + "bitflags 2.4.2", + "libc", + "redox_syscall", +] + +[[package]] +name = "libsqlite3-sys" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "libz-sys" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" +checksum = "037731f5d3aaa87a5675e895b63ddff1a87624bc29f77004ea829809654e48f6" dependencies = [ "cc", + "pkg-config", + "vcpkg", ] [[package]] -name = "linux-raw-sys" -version = "0.3.7" +name = "linked-hash-map" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" @@ -2541,11 +3633,17 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "lru-cache" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" dependencies = [ - "cfg-if", + "linked-hash-map", ] [[package]] @@ -2566,15 +3664,50 @@ dependencies = [ "libc", ] +[[package]] +name = "manyhow" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8cd8783b626890c6e8124a894135b3bebca18af66a00f8e246dc378084d56e8" +dependencies = [ + "manyhow-macros", + "proc-macro2", + "quote", + "syn 2.0.52", +] + +[[package]] +name = "manyhow-macros" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "532aa12d5846b38a524b3acd99fb74dc8a5f193b33e65dac142ef92bd60f9416" +dependencies = [ + "proc-macro-utils", + "proc-macro2", + "quote", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + [[package]] name = "matchers" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "regex-automata", + "regex-automata 0.1.10", ] +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + [[package]] name = "maths_provider" version = "0.1.0" @@ -2591,6 +3724,25 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest", +] + +[[package]] +name = "md4" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da5ac363534dce5fabf69949225e174fbf111a498bf0ff794c8ea1fba9f3dda" +dependencies = [ + "digest", +] + [[package]] name = "memchr" version = "2.7.1" @@ -2599,11 +3751,11 @@ checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" [[package]] name = "memfd" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc89ccdc6e10d6907450f753537ebc5c5d3460d2e4e62ea74bd571db62c0f9e" +checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.37.19", + "rustix", ] [[package]] @@ -2615,11 +3767,17 @@ dependencies = [ "libc", ] +[[package]] +name = "memmem" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15" + [[package]] name = "memoffset" -version = "0.6.5" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" dependencies = [ "autocfg", ] @@ -2633,6 +3791,21 @@ dependencies = [ "autocfg", ] +[[package]] +name = "metal" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25" +dependencies = [ + "bitflags 2.4.2", + "block", + "core-graphics-types", + "foreign-types", + "log", + "objc", + "paste", +] + [[package]] name = "mime" version = "0.3.17" @@ -2647,9 +3820,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" dependencies = [ "adler", "simd-adler32", @@ -2657,100 +3830,102 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", "log", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "windows-sys 0.48.0", ] [[package]] -name = "native-tls" -version = "0.2.11" +name = "multimap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" + +[[package]] +name = "naga" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +checksum = "ae585df4b6514cf8842ac0f1ab4992edc975892704835b549cf818dc0191249e" dependencies = [ - "lazy_static", - "libc", + "bit-set", + "bitflags 2.4.2", + "codespan-reporting", + "hexf-parse", + "indexmap 2.2.5", "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", + "num-traits", + "rustc-hash", + "serde", + "spirv", + "termcolor", + "thiserror", + "unicode-xid", ] [[package]] -name = "ndk" -version = "0.7.0" +name = "netif" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0" +checksum = "d29a01b9f018d6b7b277fef6c79fdbd9bf17bb2d1e298238055cafab49baa5ee" dependencies = [ - "bitflags 1.3.2", - "jni-sys", - "ndk-sys", - "num_enum", - "raw-window-handle", - "thiserror", + "libc", + "winapi", ] [[package]] -name = "ndk-context" -version = "0.1.1" +name = "new_debug_unreachable" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] -name = "ndk-sys" -version = "0.4.1+23.1.7779620" +name = "nibble_vec" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3" +checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" dependencies = [ - "jni-sys", + "smallvec", ] -[[package]] -name = "new_debug_unreachable" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" - [[package]] name = "nix" -version = "0.24.3" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" dependencies = [ "bitflags 1.3.2", "cfg-if", "libc", - "memoffset 0.6.5", + "memoffset 0.7.1", + "pin-utils", + "static_assertions", ] [[package]] name = "nix" -version = "0.25.1" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" dependencies = [ - "autocfg", - "bitflags 1.3.2", + "bitflags 2.4.2", "cfg-if", "libc", - "memoffset 0.6.5", - "pin-utils", ] [[package]] -name = "nohash-hasher" -version = "0.2.0" +name = "nom" +version = "5.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" +checksum = "08959a387a676302eebf4ddbcbc611da04285579f76f88ee0506c63b1a61dd4b" +dependencies = [ + "memchr", + "version_check", +] [[package]] name = "nom" @@ -2762,6 +3937,33 @@ dependencies = [ "minimal-lexical", ] +[[package]] +name = "notify" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed2c66da08abae1c024c01d635253e402341b4060a12e99b31c7594063bf490a" +dependencies = [ + "bitflags 1.3.2", + "crossbeam-channel", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "mio", + "walkdir", + "winapi", +] + +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -2779,77 +3981,91 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20c1bb65186718d348306bf1afdeb20d9ab45b2ab80fb793c0fdcf59ffbb4f38" dependencies = [ "lazy_static", - "rand", + "rand 0.8.5", ] [[package]] name = "num-bigint" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" dependencies = [ "autocfg", "num-integer", "num-traits", - "rand", + "rand 0.8.5", "serde", ] [[package]] -name = "num-integer" -version = "0.1.45" +name = "num-bigint-dig" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" dependencies = [ - "autocfg", + "byteorder", + "lazy_static", + "libm", + "num-integer", + "num-iter", "num-traits", + "rand 0.8.5", + "serde", + "smallvec", + "zeroize", ] [[package]] -name = "num-traits" -version = "0.2.15" +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-integer" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "autocfg", + "num-traits", ] [[package]] -name = "num_cpus" -version = "1.15.0" +name = "num-iter" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9" dependencies = [ - "hermit-abi 0.2.6", - "libc", + "autocfg", + "num-integer", + "num-traits", ] [[package]] -name = "num_enum" -version = "0.5.11" +name = "num-traits" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" dependencies = [ - "num_enum_derive", + "autocfg", + "libm", ] [[package]] -name = "num_enum_derive" -version = "0.5.11" +name = "num_cpus" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", + "hermit-abi", + "libc", ] [[package]] name = "num_threads" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" dependencies = [ "libc", ] @@ -2861,155 +4077,149 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" dependencies = [ "malloc_buf", + "objc_exception", ] [[package]] -name = "objc-foundation" -version = "0.1.1" +name = "objc_exception" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" +checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" dependencies = [ - "block", - "objc", - "objc_id", + "cc", ] [[package]] -name = "objc-sys" -version = "0.2.0-beta.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7" - -[[package]] -name = "objc2" -version = "0.3.0-beta.3" +name = "object" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe31e5425d3d0b89a15982c024392815da40689aceb34bad364d58732bcfd649" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ - "block2", - "objc-sys", - "objc2-encode", + "crc32fast", + "hashbrown 0.14.3", + "indexmap 2.2.5", + "memchr", ] [[package]] -name = "objc2-encode" -version = "2.0.0-pre.2" +name = "oid-registry" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abfcac41015b00a120608fdaa6938c44cb983fee294351cc4bac7638b4e50512" +checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "objc-sys", + "asn1-rs", ] [[package]] -name = "objc_id" -version = "0.1.1" +name = "once_cell" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" -dependencies = [ - "objc", -] +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] -name = "object" -version = "0.32.2" +name = "opaque-debug" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" -dependencies = [ - "crc32fast", - "hashbrown 0.14.0", - "indexmap 2.0.0", - "memchr", -] +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] -name = "once_cell" -version = "1.19.0" +name = "openssl-probe" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] -name = "openssl" -version = "0.10.63" +name = "ordered-float" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" +checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" dependencies = [ - "bitflags 2.4.2", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", + "num-traits", ] [[package]] -name = "openssl-macros" -version = "0.1.1" +name = "os_pipe" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +checksum = "57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "libc", + "windows-sys 0.52.0", ] [[package]] -name = "openssl-probe" -version = "0.1.5" +name = "outref" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4" [[package]] -name = "openssl-sys" -version = "0.9.99" +name = "outref" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] +checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] -name = "orbclient" -version = "0.3.45" +name = "p224" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "221d488cd70617f1bd599ed8ceb659df2147d9393717954d82a0f5e8032a6ab1" +checksum = "30c06436d66652bc2f01ade021592c80a2aad401570a18aa18b82e440d2b9aa1" dependencies = [ - "redox_syscall 0.3.5", + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2", ] [[package]] -name = "ordered-stream" -version = "0.2.0" +name = "p256" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" dependencies = [ - "futures-core", - "pin-project-lite", + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2", ] [[package]] -name = "overload" -version = "0.1.1" +name = "p384" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2", +] [[package]] -name = "owned_ttf_parser" -version = "0.19.0" +name = "p521" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "706de7e2214113d63a8238d1910463cfce781129a6f263d13fdb09ff64355ba4" +checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2" dependencies = [ - "ttf-parser", + "base16ct", + "ecdsa", + "elliptic-curve", + "primeorder", + "rand_core 0.6.4", + "sha2", ] [[package]] name = "parking" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" [[package]] name = "parking_lot" @@ -3029,16 +4239,33 @@ checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.4.1", + "redox_syscall", "smallvec", - "windows-targets 0.48.0", + "windows-targets 0.48.5", +] + +[[package]] +name = "password-hash" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" +dependencies = [ + "base64ct", + "rand_core 0.6.4", + "subtle", ] [[package]] name = "paste" -version = "1.0.12" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "path-clean" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" +checksum = "ecba01bf2678719532c5e3059e0b5f0811273d94b397088b82e3bd0a78c78fdd" [[package]] name = "pathdiff" @@ -3046,6 +4273,25 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest", + "hmac", +] + +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + [[package]] name = "percent-encoding" version = "2.3.1" @@ -3053,12 +4299,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] -name = "phf" -version = "0.10.1" +name = "petgraph" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" +checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ - "phf_shared 0.10.0", + "fixedbitset", + "indexmap 2.2.5", ] [[package]] @@ -3068,17 +4315,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" dependencies = [ "phf_macros", - "phf_shared 0.11.2", -] - -[[package]] -name = "phf_generator" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" -dependencies = [ - "phf_shared 0.10.0", - "rand", + "phf_shared", ] [[package]] @@ -3087,8 +4324,8 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ - "phf_shared 0.11.2", - "rand", + "phf_shared", + "rand 0.8.5", ] [[package]] @@ -3097,20 +4334,11 @@ version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" dependencies = [ - "phf_generator 0.11.2", - "phf_shared 0.11.2", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", -] - -[[package]] -name = "phf_shared" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" -dependencies = [ - "siphasher", + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] @@ -3124,22 +4352,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.3" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.3" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] @@ -3149,16 +4377,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] -name = "pin-utils" -version = "0.1.0" +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs1" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" +dependencies = [ + "der", + "pkcs8", + "spki", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + +[[package]] +name = "pkg-config" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] -name = "pkg-config" -version = "0.3.27" +name = "platforms" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" +checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c" [[package]] name = "pmutil" @@ -3166,16 +4421,16 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52a40bc70c2c58040d2d8b167ba9a5ff59fc9dab7ad44771cfde3dcfde7a09c6" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "png" -version = "0.17.8" +version = "0.17.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaeebc51f9e7d2c150d3f3bfeb667f2aa985db5ef1e3d212847bdedb488beeaa" +checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1" dependencies = [ "bitflags 1.3.2", "crc32fast", @@ -3185,19 +4440,15 @@ dependencies = [ ] [[package]] -name = "polling" -version = "2.8.0" +name = "polyval" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" dependencies = [ - "autocfg", - "bitflags 1.3.2", "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", + "cpufeatures", + "opaque-debug", + "universal-hash", ] [[package]] @@ -3212,6 +4463,31 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +[[package]] +name = "presser" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" + +[[package]] +name = "prettyplease" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86" +dependencies = [ + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "primeorder" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +dependencies = [ + "elliptic-curve", +] + [[package]] name = "proc-macro-crate" version = "0.1.5" @@ -3223,12 +4499,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.3.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" dependencies = [ - "once_cell", - "toml_edit 0.19.8", + "toml_edit 0.21.1", ] [[package]] @@ -3238,8 +4513,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "syn 1.0.109", "version_check", ] @@ -3250,8 +4525,8 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "version_check", ] @@ -3262,8 +4537,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07c277e4e643ef00c1233393c673f655e3672cf7eb3ba08a00bdd0ea59139b5f" dependencies = [ "proc-macro-rules-macros", - "proc-macro2 1.0.76", - "syn 2.0.48", + "proc-macro2", + "syn 2.0.52", ] [[package]] @@ -3273,29 +4548,47 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "207fffb0fe655d1d47f6af98cc2793405e85929bdbc420d685554ff07be27ac7" dependencies = [ "once_cell", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "proc-macro2" -version = "0.4.30" +name = "proc-macro-utils" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" +checksum = "3f59e109e2f795a5070e69578c4dc101068139f74616778025ae1011d4cd41a8" dependencies = [ - "unicode-xid 0.1.0", + "proc-macro2", + "quote", + "smallvec", ] [[package]] name = "proc-macro2" -version = "1.0.76" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" +checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" dependencies = [ "unicode-ident", ] +[[package]] +name = "profiling" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58" + +[[package]] +name = "prost" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" +dependencies = [ + "bytes", + "prost-derive 0.11.9", +] + [[package]] name = "prost" version = "0.12.3" @@ -3303,7 +4596,42 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a" dependencies = [ "bytes", - "prost-derive", + "prost-derive 0.12.3", +] + +[[package]] +name = "prost-build" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" +dependencies = [ + "bytes", + "heck", + "itertools 0.10.5", + "lazy_static", + "log", + "multimap", + "petgraph", + "prettyplease", + "prost 0.11.9", + "prost-types", + "regex", + "syn 1.0.109", + "tempfile", + "which 4.4.2", +] + +[[package]] +name = "prost-derive" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" +dependencies = [ + "anyhow", + "itertools 0.10.5", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -3313,10 +4641,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e" dependencies = [ "anyhow", - "itertools", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "itertools 0.11.0", + "proc-macro2", + "quote", + "syn 2.0.52", +] + +[[package]] +name = "prost-types" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13" +dependencies = [ + "prost 0.11.9", ] [[package]] @@ -3329,13 +4666,10 @@ dependencies = [ ] [[package]] -name = "quote" -version = "0.6.13" +name = "quick-error" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" -dependencies = [ - "proc-macro2 0.4.30", -] +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" @@ -3343,7 +4677,30 @@ version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" dependencies = [ - "proc-macro2 1.0.76", + "proc-macro2", +] + +[[package]] +name = "radix_trie" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" +dependencies = [ + "endian-type", + "nibble_vec", +] + +[[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", ] [[package]] @@ -3354,7 +4711,7 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", "rand_chacha", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -3364,9 +4721,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[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" + [[package]] name = "rand_core" version = "0.6.4" @@ -3376,6 +4748,12 @@ dependencies = [ "getrandom", ] +[[package]] +name = "range-alloc" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab" + [[package]] name = "raw-window-handle" version = "0.5.2" @@ -3384,9 +4762,9 @@ checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" [[package]] name = "rayon" -version = "1.7.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" +checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd" dependencies = [ "either", "rayon-core", @@ -3394,32 +4772,21 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.11.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ - "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "num_cpus", -] - -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags 1.3.2", ] [[package]] -name = "redox_syscall" -version = "0.3.5" +name = "rdrand" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" dependencies = [ - "bitflags 1.3.2", + "rand_core 0.3.1", ] [[package]] @@ -3433,15 +4800,35 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" dependencies = [ "getrandom", - "redox_syscall 0.2.16", + "libredox", "thiserror", ] +[[package]] +name = "ref-cast" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4846d4c50d1721b1a3bef8af76924eef20d5e723647333798c1b519b3a9473f" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fddb4f8d99b0a2ebafc65a87a69a7b9875e4b1ae1f00db265d300ef7f28bccc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.52", +] + [[package]] name = "regalloc2" version = "0.9.3" @@ -3457,13 +4844,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.8.1" +version = "1.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af83e617f331cc6ae2da5443c602dfa5af81e517212d9d611a5b3ba1777b5370" +checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.7.1", + "regex-automata 0.4.6", + "regex-syntax 0.8.2", ] [[package]] @@ -3475,6 +4863,17 @@ dependencies = [ "regex-syntax 0.6.29", ] +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.2", +] + [[package]] name = "regex-lexer" version = "0.2.0" @@ -3492,74 +4891,111 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5996294f19bd3aae0453a862ad728f60e6600695733dd5df01da90c54363a3c" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] -name = "relative-path" -version = "1.8.0" +name = "remove_dir_all" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bf2521270932c3c7bed1a59151222bd7643c79310f2916f01925e1e16255698" +checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" +dependencies = [ + "winapi", +] [[package]] name = "reqwest" -version = "0.11.23" +version = "0.11.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41" +checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" dependencies = [ - "base64 0.21.7", + "async-compression", + "base64", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-tls", + "h2 0.3.24", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.28", + "hyper-rustls", "ipnet", "js-sys", "log", "mime", - "native-tls", "once_cell", "percent-encoding", "pin-project-lite", + "rustls 0.21.10", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", - "system-configuration", "tokio", - "tokio-native-tls", + "tokio-rustls", + "tokio-socks", + "tokio-util", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams", "web-sys", + "webpki-roots 0.25.4", "winreg", ] +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + [[package]] name = "ring" -version = "0.16.20" +version = "0.17.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", + "cfg-if", + "getrandom", "libc", - "once_cell", - "spin", + "spin 0.9.8", "untrusted", - "web-sys", - "winapi", + "windows-sys 0.52.0", +] + +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest", ] [[package]] name = "rmp" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44519172358fd6d58656c86ab8e7fbc9e1490c3e8f14d35ed78ca0dd07403c9f" +checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20" dependencies = [ "byteorder", "num-traits", @@ -3578,60 +5014,49 @@ dependencies = [ ] [[package]] -name = "rquickjs" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc022cc82b5de6f38b2f4ddb8ed9c49cdbd7ce112e650b181598e102157257de" -dependencies = [ - "either", - "indexmap 1.9.3", - "rquickjs-core", - "rquickjs-macro", -] - -[[package]] -name = "rquickjs-core" -version = "0.1.7" +name = "ron" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74fa1ecc1c84b31da87e5b26ce2b5218d36ffeb5c322141c78b79fa86a6ee3b9" +checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" dependencies = [ - "chrono", - "dlopen", - "either", - "fxhash", - "indexmap 1.9.3", - "phf 0.10.1", - "relative-path", - "rquickjs-sys", + "base64", + "bitflags 2.4.2", + "serde", + "serde_derive", ] [[package]] -name = "rquickjs-macro" -version = "0.1.7" +name = "rsa" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a59ea6b93ccb811b02fefef0eec225d7fed0366b929ebf849afb22013c2953a0" +checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc" dependencies = [ - "darling", - "fnv", - "ident_case", - "indexmap 1.9.3", - "phf_generator 0.10.0", - "phf_shared 0.10.0", - "proc-macro-crate 1.3.1", - "proc-macro-error", - "proc-macro2 1.0.76", - "quote 1.0.35", - "rquickjs-core", - "syn 1.0.109", + "const-oid", + "digest", + "num-bigint-dig", + "num-integer", + "num-traits", + "pkcs1", + "pkcs8", + "rand_core 0.6.4", + "signature", + "spki", + "subtle", + "zeroize", ] [[package]] -name = "rquickjs-sys" -version = "0.1.7" +name = "rusqlite" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24311952af42d8252e399cf48e7d470cb413b1a11a1a5b7fab648cd2edec76c5" +checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2" dependencies = [ - "cc", + "bitflags 2.4.2", + "fallible-iterator 0.2.0", + "fallible-streaming-iterator", + "hashlink", + "libsqlite3-sys", + "smallvec", ] [[package]] @@ -3661,48 +5086,117 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.18", + "semver 1.0.22", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom 7.1.3", +] + +[[package]] +name = "rustix" +version = "0.38.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" +dependencies = [ + "bitflags 2.4.2", + "errno 0.3.8", + "itoa", + "libc", + "linux-raw-sys", + "once_cell", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls" +version = "0.21.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +dependencies = [ + "log", + "ring", + "rustls-webpki 0.101.7", + "sct", +] + +[[package]] +name = "rustls" +version = "0.22.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41" +dependencies = [ + "log", + "ring", + "rustls-pki-types", + "rustls-webpki 0.102.2", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64", ] [[package]] -name = "rustix" -version = "0.37.19" +name = "rustls-pki-types" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ede67b28608b4c60685c7d54122d4400d90f62b40caee7700e700380a390fa8" + +[[package]] +name = "rustls-tokio-stream" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" +checksum = "ded7a36e8ac05b8ada77a84c5ceec95361942ee9dedb60a82f93f788a791aae8" dependencies = [ - "bitflags 1.3.2", - "errno", - "io-lifetimes 1.0.10", - "libc", - "linux-raw-sys 0.3.7", - "windows-sys 0.48.0", + "futures", + "rustls 0.21.10", + "socket2", + "tokio", ] [[package]] -name = "rustix" -version = "0.38.30" +name = "rustls-webpki" +version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ - "bitflags 2.4.2", - "errno", - "itoa", - "libc", - "linux-raw-sys 0.4.13", - "once_cell", - "windows-sys 0.52.0", + "ring", + "untrusted", ] [[package]] -name = "rustls" -version = "0.20.8" +name = "rustls-webpki" +version = "0.102.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" +checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610" dependencies = [ - "log", "ring", - "sct", - "webpki", + "rustls-pki-types", + "untrusted", ] [[package]] @@ -3711,17 +5205,58 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" +[[package]] +name = "rustyline" +version = "13.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02a2d683a4ac90aeef5b1013933f6d977bd37d51ff3f4dad829d4931a7e6be86" +dependencies = [ + "bitflags 2.4.2", + "cfg-if", + "clipboard-win", + "fd-lock", + "home", + "libc", + "log", + "memchr", + "nix 0.27.1", + "radix_trie", + "unicode-segmentation", + "unicode-width", + "utf8parse", + "winapi", +] + [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] name = "ryu-js" -version = "1.0.0" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5" + +[[package]] +name = "saffron" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03fb9a628596fc7590eb7edbf7b0613287be78df107f5f97b118aad59fb2eea9" +dependencies = [ + "chrono", + "nom 5.1.3", +] + +[[package]] +name = "salsa20" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4950d85bc52415f8432144c97c4791bd0c4f7954de32a7270ee9cccd3c22b12b" +checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +dependencies = [ + "cipher", +] [[package]] name = "same-file" @@ -3749,37 +5284,44 @@ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] -name = "scratch" -version = "1.0.5" +name = "scrypt" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" +checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" +dependencies = [ + "password-hash", + "pbkdf2", + "salsa20", + "sha2", +] [[package]] name = "sct" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ "ring", "untrusted", ] [[package]] -name = "sctk-adwaita" -version = "0.5.4" +name = "sec1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda4e97be1fd174ccc2aae81c8b694e803fa99b34e8fd0f057a9d70698e3ed09" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ - "ab_glyph", - "log", - "memmap2", - "smithay-client-toolkit", - "tiny-skia", + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", ] [[package]] @@ -3816,9 +5358,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.18" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" [[package]] name = "semver-parser" @@ -3828,57 +5370,53 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.195" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] [[package]] -name = "serde-xml-rs" -version = "0.4.1" +name = "serde-value" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0bf1ba0696ccf0872866277143ff1fd14d22eec235d2b23702f95e6660f7dfa" +checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" dependencies = [ - "log", + "ordered-float", "serde", - "thiserror", - "xml-rs", ] [[package]] -name = "serde_derive" -version = "1.0.195" +name = "serde_bytes" +version = "0.11.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "serde", ] [[package]] -name = "serde_json" -version = "1.0.111" +name = "serde_derive" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ - "indexmap 2.0.0", - "itoa", - "ryu", - "serde", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "serde_repr" -version = "0.1.12" +name = "serde_json" +version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "indexmap 2.2.5", + "itoa", + "ryu", + "serde", ] [[package]] @@ -3904,12 +5442,11 @@ dependencies = [ [[package]] name = "serde_v8" -version = "0.164.0" +version = "0.179.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f96a94476f3d22fe9f70c2d992d020173ccd61ad6fa1b62ed8090abe835c4e9f" +checksum = "80ed6b8604315921ba50f2a872b89b93327aa53a1219d11304ee29fb625344bc" dependencies = [ "bytes", - "derive_more", "num-bigint", "serde", "smallvec", @@ -3930,9 +5467,9 @@ dependencies = [ [[package]] name = "sha1" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", "cpufeatures", @@ -3941,9 +5478,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -3968,6 +5505,16 @@ dependencies = [ "dirs", ] +[[package]] +name = "signal-hook" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" +dependencies = [ + "libc", + "signal-hook-registry", +] + [[package]] name = "signal-hook-registry" version = "1.4.1" @@ -3977,11 +5524,52 @@ dependencies = [ "libc", ] +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest", + "rand_core 0.6.4", +] + +[[package]] +name = "simd-abstraction" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987" +dependencies = [ + "outref 0.1.0", +] + [[package]] name = "simd-adler32" -version = "0.3.5" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + +[[package]] +name = "simd-json" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2faf8f101b9bc484337a6a6b0409cf76c139f2fb70a9e3aee6b6774be7bfbf76" +dependencies = [ + "getrandom", + "halfbrown", + "lexical-core", + "ref-cast", + "serde", + "serde_json", + "simdutf8", + "value-trait", +] + +[[package]] +name = "simdutf8" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "238abfbb77c1915110ad968465608b68e869e0772622c9656714e73e5a1a522f" +checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" [[package]] name = "simple_logger" @@ -3991,7 +5579,7 @@ checksum = "8e7e46c8c90251d47d08b28b8a419ffb4aede0f87c2eea95e17d1d5bacbf3ef1" dependencies = [ "colored", "log", - "time 0.3.31", + "time", "windows-sys 0.48.0", ] @@ -4003,9 +5591,9 @@ checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" [[package]] name = "slab" -version = "0.4.8" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" dependencies = [ "autocfg", ] @@ -4018,9 +5606,9 @@ checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" [[package]] name = "slotmap" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" +checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" dependencies = [ "version_check", ] @@ -4042,53 +5630,14 @@ dependencies = [ "version_check", ] -[[package]] -name = "smithay-client-toolkit" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f307c47d32d2715eb2e0ece5589057820e0e5e70d07c247d1063e844e107f454" -dependencies = [ - "bitflags 1.3.2", - "calloop", - "dlib", - "lazy_static", - "log", - "memmap2", - "nix 0.24.3", - "pkg-config", - "wayland-client", - "wayland-cursor", - "wayland-protocols", -] - -[[package]] -name = "smithay-clipboard" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a345c870a1fae0b1b779085e81b51e614767c239e93503588e54c5b17f4b0e8" -dependencies = [ - "smithay-client-toolkit", - "wayland-client", -] - -[[package]] -name = "socket2" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "socket2" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871" dependencies = [ "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -4109,17 +5658,18 @@ dependencies = [ [[package]] name = "sourcemap" -version = "7.0.1" +version = "7.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10da010a590ed2fa9ca8467b00ce7e9c5a8017742c0c09c45450efc172208c4b" +checksum = "e7768edd06c02535e0d50653968f46e1e0d3aa54742190d35dd9466f59de9c71" dependencies = [ + "base64-simd 0.7.0", "data-encoding", "debugid", "if_chain", "rustc_version 0.2.3", "serde", "serde_json", - "unicode-id", + "unicode-id-start", "url", ] @@ -4129,6 +5679,32 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + +[[package]] +name = "spirv" +version = "0.2.0+1.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830" +dependencies = [ + "bitflags 1.3.2", + "num-traits", +] + +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der", +] + [[package]] name = "sptr" version = "0.3.2" @@ -4160,36 +5736,18 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "str-buf" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0" - -[[package]] -name = "strict-num" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9df65f20698aeed245efdde3628a6b559ea1239bbb871af1b6e3b58c413b2bd1" - [[package]] name = "string_enum" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b650ea2087d32854a0f20b837fc56ec987a1cb4f758c9757e1171ee9812da63" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "swc_macros_common", - "syn 2.0.48", + "syn 2.0.52", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strum" version = "0.25.0" @@ -4206,12 +5764,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" dependencies = [ "heck", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "rustversion", - "syn 2.0.48", + "syn 2.0.52", ] +[[package]] +name = "subtle" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" + [[package]] name = "swc_atoms" version = "0.6.5" @@ -4224,11 +5788,25 @@ dependencies = [ "serde", ] +[[package]] +name = "swc_cached" +version = "0.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630c761c74ac8021490b78578cc2223aa4a568241e26505c27bf0e4fd4ad8ec2" +dependencies = [ + "ahash", + "anyhow", + "dashmap", + "once_cell", + "regex", + "serde", +] + [[package]] name = "swc_common" -version = "0.33.12" +version = "0.33.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b3ae36feceded27f0178dc9dabb49399830847ffb7f866af01798844de8f973" +checksum = "c85e8b15d0fb87691e27c8f3cf953748db3ccd2a39e165d6d5275a48fb0d29e3" dependencies = [ "ast_node", "better_scoped_tls", @@ -4252,13 +5830,15 @@ dependencies = [ [[package]] name = "swc_config" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112884e66b60e614c0f416138b91b8b82b7fea6ed0ecc5e26bad4726c57a6c99" +checksum = "ce837c5eae1cb200a310940de989fd9b3d12ed62d7752bc69b39ef8aa775ec04" dependencies = [ - "indexmap 2.0.0", + "anyhow", + "indexmap 2.2.5", "serde", "serde_json", + "swc_cached", "swc_config_macro", ] @@ -4268,22 +5848,22 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b2574f75082322a27d990116cd2a24de52945fc94172b24ca0b3e9e2a6ceb6b" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "swc_macros_common", - "syn 2.0.48", + "syn 2.0.52", ] [[package]] name = "swc_ecma_ast" -version = "0.110.17" +version = "0.112.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79401a45da704f4fb2552c5bf86ee2198e8636b121cb81f8036848a300edd53b" +checksum = "36226eb87bfd2f5620bde04f149a4b869ab34e78496d60cb0d8eb9da765d0732" dependencies = [ "bitflags 2.4.2", "is-macro", "num-bigint", - "phf 0.11.2", + "phf", "scoped-tls", "serde", "string_enum", @@ -4294,9 +5874,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen" -version = "0.146.54" +version = "0.148.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99b61ca275e3663238b71c4b5da8e6fb745bde9989ef37d94984dfc81fc6d009" +checksum = "5ba8669ab28bb5d1e65c1e8690257c026745ac368e0101c2c6544d4a03afc95e" dependencies = [ "memchr", "num-bigint", @@ -4317,36 +5897,37 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "394b8239424b339a12012ceb18726ed0244fce6bf6345053cb9320b2791dcaa5" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "swc_macros_common", - "syn 2.0.48", + "syn 2.0.52", ] [[package]] name = "swc_ecma_loader" -version = "0.45.13" +version = "0.45.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5713ab3429530c10bdf167170ebbde75b046c8003558459e4de5aaec62ce0f1" +checksum = "d0058cf970880f5382effe43eb2b727a73ba09ae41922fa140c2c3fa6ca9b2d1" dependencies = [ "anyhow", "pathdiff", "serde", + "swc_atoms", "swc_common", "tracing", ] [[package]] name = "swc_ecma_parser" -version = "0.141.37" +version = "0.143.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4d17401dd95048a6a62b777d533c0999dabdd531ef9d667e22f8ae2a2a0d294" +checksum = "20823cac99a9adbd4c03fb5e126aaccbf92446afedad99252a0e1fc76e2ffc43" dependencies = [ "either", "new_debug_unreachable", "num-bigint", "num-traits", - "phf 0.11.2", + "phf", "serde", "smallvec", "smartstring", @@ -4360,15 +5941,15 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_base" -version = "0.135.11" +version = "0.137.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d4ab26ec124b03e47f54d4daade8e9a9dcd66d3a4ca3cd47045f138d267a60e" +checksum = "66539401f619730b26d380a120b91b499f80cbdd9bb15d00aa73bc3a4d4cc394" dependencies = [ "better_scoped_tls", "bitflags 2.4.2", - "indexmap 2.0.0", + "indexmap 2.2.5", "once_cell", - "phf 0.11.2", + "phf", "rustc-hash", "serde", "smallvec", @@ -4383,9 +5964,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_classes" -version = "0.124.11" +version = "0.126.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fe4376c024fa04394cafb8faecafb4623722b92dbbe46532258cc0a6b569d9c" +checksum = "ebf9048e687b746d2bbe6149601c3eedd819fef08d7657e5fddcef99b22febba" dependencies = [ "swc_atoms", "swc_common", @@ -4401,17 +5982,17 @@ version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17e309b88f337da54ef7fe4c5b99c2c522927071f797ee6c9fb8b6bf2d100481" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "swc_macros_common", - "syn 2.0.48", + "syn 2.0.52", ] [[package]] name = "swc_ecma_transforms_proposal" -version = "0.169.14" +version = "0.171.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86de99757fc31d8977f47c02a26e5c9a243cb63b03fe8aa8b36d79924b8fa29c" +checksum = "35f0a72ee781aa9208836046fd2c12e483f5515898858511b68863290cb97b45" dependencies = [ "either", "rustc-hash", @@ -4429,13 +6010,13 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_react" -version = "0.181.15" +version = "0.183.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9918e22caf1ea4a71085f5d818d6c0bf5c19d669cfb9d38f9fdc3da0496abdc7" +checksum = "f0ec75c1194365abe4d44d94e58f918ec853469ecd39733b381a089cfdcdee1a" dependencies = [ - "base64 0.21.7", + "base64", "dashmap", - "indexmap 2.0.0", + "indexmap 2.2.5", "once_cell", "serde", "sha-1", @@ -4453,9 +6034,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_typescript" -version = "0.186.14" +version = "0.188.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d1495c969ffdc224384f1fb73646b9c1b170779f20fdb984518deb054aa522" +checksum = "fec5e95a9c840eb13562884123eaa627cb6e05e0461c94a2ce69ae7e70313010" dependencies = [ "ryu-js", "serde", @@ -4470,11 +6051,11 @@ dependencies = [ [[package]] name = "swc_ecma_utils" -version = "0.125.4" +version = "0.127.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cead1083e46b0f072a82938f16d366014468f7510350957765bb4d013496890" +checksum = "14482e455df85486d68a51533a31645d511e56df93a35cadf0eabbe7abe96b98" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.2.5", "num_cpus", "once_cell", "rustc-hash", @@ -4488,9 +6069,9 @@ dependencies = [ [[package]] name = "swc_ecma_visit" -version = "0.96.17" +version = "0.98.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d0100c383fb08b6f34911ab6f925950416a5d14404c1cd520d59fb8dfbb3bf" +checksum = "df0127694c36d656ea9eab5c170cdd8ab398246ae2a335de26961c913a4aca47" dependencies = [ "num-bigint", "swc_atoms", @@ -4506,9 +6087,9 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "695a1d8b461033d32429b5befbf0ad4d7a2c4d6ba9cd5ba4e0645c615839e8e4" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] @@ -4517,16 +6098,16 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "50176cfc1cbc8bb22f41c6fe9d1ec53fbe057001219b5954961b8ad0f336fce9" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "swc_visit" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b27078d8571abe23aa52ef608dd1df89096a37d867cf691cbb4f4c392322b7c9" +checksum = "358e246dedeb4ae8efacebcce1360dc2f9b6c0b4c1ad8b737cc60f5b6633691a" dependencies = [ "either", "swc_visit_macros", @@ -4534,27 +6115,16 @@ dependencies = [ [[package]] name = "swc_visit_macros" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa8bb05975506741555ea4d10c3a3bdb0e2357cd58e1a4a4332b8ebb4b44c34d" +checksum = "fbbbb9d77d5112f90ed7ea00477135b16c4370c872b93a0b63b766e8710650ad" dependencies = [ "Inflector", "pmutil", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "swc_macros_common", - "syn 2.0.48", -] - -[[package]] -name = "syn" -version = "0.15.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" -dependencies = [ - "proc-macro2 0.4.30", - "quote 0.6.13", - "unicode-xid 0.1.0", + "syn 2.0.52", ] [[package]] @@ -4563,41 +6133,32 @@ version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "unicode-ident", ] [[package]] name = "syn" -version = "2.0.48" +version = "2.0.52" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "unicode-ident", ] [[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" +name = "synstructure" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ - "core-foundation-sys", - "libc", + "proc-macro2", + "quote", + "syn 1.0.109", + "unicode-xid", ] [[package]] @@ -4610,36 +6171,45 @@ dependencies = [ "cap-fs-ext", "cap-std", "fd-lock", - "io-lifetimes 2.0.3", - "rustix 0.38.30", + "io-lifetimes", + "rustix", "windows-sys 0.52.0", "winx", ] [[package]] name = "target-lexicon" -version = "0.12.13" +version = "0.12.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" + +[[package]] +name = "tempdir" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" +checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8" +dependencies = [ + "rand 0.4.6", + "remove_dir_all", +] [[package]] name = "tempfile" -version = "3.5.0" +version = "3.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998" +checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" dependencies = [ "cfg-if", - "fastrand", - "redox_syscall 0.3.5", - "rustix 0.37.19", - "windows-sys 0.45.0", + "fastrand 2.0.1", + "rustix", + "windows-sys 0.52.0", ] [[package]] name = "termcolor" -version = "1.2.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" dependencies = [ "winapi-util", ] @@ -4655,29 +6225,29 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.56" +version = "1.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" +checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.56" +version = "1.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" +checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "thread_local" -version = "1.1.7" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ "cfg-if", "once_cell", @@ -4685,24 +6255,14 @@ dependencies = [ [[package]] name = "time" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a" -dependencies = [ - "libc", - "wasi 0.10.0+wasi-snapshot-preview1", - "winapi", -] - -[[package]] -name = "time" -version = "0.3.31" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e" +checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" dependencies = [ "deranged", "itoa", "libc", + "num-conv", "num_threads", "powerfmt", "serde", @@ -4711,43 +6271,19 @@ dependencies = [ ] [[package]] -name = "time-core" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" - -[[package]] -name = "time-macros" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f" -dependencies = [ - "time-core", -] - -[[package]] -name = "tiny-skia" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8493a203431061e901613751931f047d1971337153f96d0e5e363d6dbf6a67" -dependencies = [ - "arrayref", - "arrayvec", - "bytemuck", - "cfg-if", - "png", - "tiny-skia-path", -] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] -name = "tiny-skia-path" -version = "0.8.4" +name = "time-macros" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adbfb5d3f3dd57a0e11d12f4f13d4ebbbc1b5c15b7ab0a156d030b21da5f677c" +checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" dependencies = [ - "arrayref", - "bytemuck", - "strict-num", + "num-conv", + "time-core", ] [[package]] @@ -4767,9 +6303,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.35.1" +version = "1.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" +checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" dependencies = [ "backtrace", "bytes", @@ -4779,7 +6315,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.5", + "socket2", "tokio-macros", "windows-sys 0.48.0", ] @@ -4790,18 +6326,53 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "tokio-native-tls" +name = "tokio-metrics" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +checksum = "eace09241d62c98b7eeb1107d4c5c64ca3bd7da92e8c218c153ab3a78f9be112" +dependencies = [ + "futures-util", + "pin-project-lite", + "tokio", + "tokio-stream", +] + +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls 0.21.10", + "tokio", +] + +[[package]] +name = "tokio-socks" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51165dfa029d2a65969413a6cc96f354b86b464498702f174a4efa13608fd8c0" +dependencies = [ + "either", + "futures-util", + "thiserror", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" dependencies = [ - "native-tls", + "futures-core", + "pin-project-lite", "tokio", ] @@ -4830,14 +6401,14 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.8" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" +checksum = "af06656561d28735e9c1cd63dfd57132c8155426aa6af24f36a00a351f88c48e" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.21.0", + "toml_edit 0.22.7", ] [[package]] @@ -4851,26 +6422,26 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.19.8" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 1.9.3", + "indexmap 2.2.5", "toml_datetime", - "winnow 0.4.6", + "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.21.0" +version = "0.22.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" +checksum = "18769cd1cec395d70860ceb4d932812a0b4d06b1a4bb336745a4d21b9496e992" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.2.5", "serde", "serde_spanned", "toml_datetime", - "winnow 0.5.34", + "winnow 0.6.5", ] [[package]] @@ -4881,11 +6452,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.37" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if", "log", "pin-project-lite", "tracing-attributes", @@ -4894,20 +6464,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.24" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "tracing-core" -version = "0.1.30" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -4943,16 +6513,57 @@ dependencies = [ ] [[package]] -name = "try-lock" -version = "0.2.5" +name = "trust-dns-proto" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" +checksum = "4f7f83d1e4a0e4358ac54c5c3681e5d7da5efc5a7a632c90bb6d6669ddd9bc26" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.2.3", + "ipnet", + "lazy_static", + "rand 0.8.5", + "serde", + "smallvec", + "thiserror", + "tinyvec", + "tokio", + "tracing", + "url", +] [[package]] -name = "ttf-parser" -version = "0.19.0" +name = "trust-dns-resolver" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44dcf002ae3b32cd25400d6df128c5babec3927cd1eb7ce813cfff20eb6c3746" +checksum = "aff21aa4dcefb0a1afbfac26deb0adc93888c7d295fb63ab273ef276ba2b7cfe" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lazy_static", + "lru-cache", + "parking_lot", + "resolv-conf", + "serde", + "smallvec", + "thiserror", + "tokio", + "tracing", + "trust-dns-proto", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "typed-arena" @@ -4962,25 +6573,56 @@ checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" [[package]] name = "typenum" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] -name = "uds_windows" -version = "1.0.2" +name = "unic-char-property" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce65604324d3cce9b966701489fbd0cf318cb1f7bd9dd07ac9a4ee6fb791930d" +checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" dependencies = [ - "tempfile", - "winapi", + "unic-char-range", +] + +[[package]] +name = "unic-char-range" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" + +[[package]] +name = "unic-common" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" + +[[package]] +name = "unic-ucd-ident" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e230a37c0381caa9219d67cf063aa3a375ffed5bf541a452db16e744bdab6987" +dependencies = [ + "unic-char-property", + "unic-char-range", + "unic-ucd-version", +] + +[[package]] +name = "unic-ucd-version" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" +dependencies = [ + "unic-common", ] [[package]] name = "unicode-bidi" -version = "0.3.13" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" [[package]] name = "unicode-id" @@ -4988,32 +6630,38 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1b6def86329695390197b82c1e244a54a131ceb66c996f2088a3876e2ae083f" +[[package]] +name = "unicode-id-start" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8f73150333cb58412db36f2aca8f2875b013049705cc77b94ded70a1ab1f5da" + [[package]] name = "unicode-ident" -version = "1.0.8" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" dependencies = [ "tinyvec", ] [[package]] -name = "unicode-width" -version = "0.1.10" +name = "unicode-segmentation" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" [[package]] -name = "unicode-xid" -version = "0.1.0" +name = "unicode-width" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" [[package]] name = "unicode-xid" @@ -5021,59 +6669,96 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +[[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle", +] + [[package]] name = "untrusted" -version = "0.7.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "2.6.2" +version = "2.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "338b31dd1314f68f3aabf3ed57ab922df95ffcd902476ca7ba3c4ce7b908c46d" +checksum = "11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35" dependencies = [ - "base64 0.13.1", + "base64", "flate2", "log", "once_cell", - "rustls", + "rustls 0.22.2", + "rustls-pki-types", + "rustls-webpki 0.102.2", "url", - "webpki", - "webpki-roots", + "webpki-roots 0.26.1", ] [[package]] name = "url" -version = "2.5.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", - "idna", + "idna 0.4.0", "percent-encoding", "serde", ] +[[package]] +name = "urlpattern" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9bd5ff03aea02fa45b13a7980151fe45009af1980ba69f651ec367121a31609" +dependencies = [ + "derive_more", + "regex", + "serde", + "unic-ucd-ident", + "url", +] + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + [[package]] name = "uuid" -version = "1.3.2" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dad5567ad0cf5b760e5665964bec1b47dfd077ba8a2544b513f3556d3d239a2" +checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" dependencies = [ "getrandom", + "serde", ] [[package]] name = "v8" -version = "0.83.1" +version = "0.85.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "546dcbb978f58aea3ad9286bd1df553f4ab7bbdc2e191cd4ae6c9a98fa95d1cd" +checksum = "ec8e09551fa5c3500b47f08912b4a39e07ae20a3874051941408fbd52e3e5190" dependencies = [ "bitflags 2.4.2", "fslock", "once_cell", - "which", + "which 5.0.0", ] [[package]] @@ -5083,16 +6768,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] -name = "vcpkg" -version = "0.2.15" +name = "value-trait" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +checksum = "dad8db98c1e677797df21ba03fca7d3bf9bec3ca38db930954e4fe6e1ea27eb4" +dependencies = [ + "float-cmp", + "halfbrown", + "itoa", + "ryu", +] [[package]] -name = "vec_map" -version = "0.8.2" +name = "vcpkg" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" [[package]] name = "version_check" @@ -5100,17 +6791,44 @@ version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + +[[package]] +name = "vte" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5022b5fbf9407086c180e9557be968742d839e68346af7792b8592489732197" +dependencies = [ + "arrayvec", + "utf8parse", + "vte_generate_state_changes", +] + +[[package]] +name = "vte_generate_state_changes" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff" +dependencies = [ + "proc-macro2", + "quote", +] + [[package]] name = "waker-fn" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" +checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" [[package]] name = "walkdir" -version = "2.3.3" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" dependencies = [ "same-file", "winapi-util", @@ -5125,12 +6843,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "wasi" -version = "0.10.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -5139,9 +6851,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasi-cap-std-sync" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "154528979a211aa28d969846e883df75705809ed9bcc70aba61460683ea7355b" +checksum = "a518b394ec5808ad2221646898eb1564f0db47a8f6d6dcf95059f5089d6d8f28" dependencies = [ "anyhow", "async-trait", @@ -5151,20 +6863,20 @@ dependencies = [ "cap-time-ext", "fs-set-times", "io-extras", - "io-lifetimes 2.0.3", + "io-lifetimes", "once_cell", - "rustix 0.38.30", + "rustix", "system-interface", "tracing", "wasi-common", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasi-common" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d888b611fee7d273dd057dc009d2dd3132736f36710ffd65657ac83628d1e3b" +checksum = "8fec11da24eed0ca98c3e071cf9186051b51b6436db21a7613498a9191d6f35a" dependencies = [ "anyhow", "bitflags 2.4.2", @@ -5172,19 +6884,25 @@ dependencies = [ "cap-std", "io-extras", "log", - "rustix 0.38.30", + "rustix", "thiserror", "tracing", "wasmtime", "wiggle", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] +[[package]] +name = "wasite" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" + [[package]] name = "wasm-bindgen" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -5192,24 +6910,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" dependencies = [ "bumpalo", "log", "once_cell", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", + "proc-macro2", + "quote", + "syn 2.0.52", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.34" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" dependencies = [ "cfg-if", "js-sys", @@ -5219,32 +6937,32 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" dependencies = [ - "quote 1.0.35", + "quote", "wasm-bindgen-macro-support", ] [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", + "proc-macro2", + "quote", + "syn 2.0.52", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.84" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] name = "wasm-encoder" @@ -5257,49 +6975,62 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.39.0" +version = "0.201.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "111495d6204760238512f57a9af162f45086504da332af210f2f75dd80b34f1d" +checksum = "b9c7d2731df60006819b013f64ccc2019691deccf6e11a1804bc850cd6748f1a" dependencies = [ "leb128", ] +[[package]] +name = "wasm-streams" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + [[package]] name = "wasmparser" -version = "0.118.1" +version = "0.118.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95ee9723b928e735d53000dec9eae7b07a60e490c85ab54abb66659fc61bfcd9" +checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" dependencies = [ - "indexmap 2.0.0", - "semver 1.0.18", + "indexmap 2.2.5", + "semver 1.0.22", ] [[package]] name = "wasmparser" -version = "0.119.0" +version = "0.121.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c35daf77afb4f9b14016625144a391085ec2ca99ca9cc53ed291bb53ab5278d" +checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab" dependencies = [ "bitflags 2.4.2", - "indexmap 2.0.0", - "semver 1.0.18", + "indexmap 2.2.5", + "semver 1.0.22", ] [[package]] name = "wasmprinter" -version = "0.2.76" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cac2a7745372074e5573e365e17100f5a26058740576313784ef03fb900ea8d2" +checksum = "60e73986a6b7fdfedb7c5bf9e7eb71135486507c8fbc4c0c42cffcb6532988b7" dependencies = [ "anyhow", - "wasmparser 0.119.0", + "wasmparser 0.121.2", ] [[package]] name = "wasmtime" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8e539fded2495422ea3c4dfa7beeddba45904eece182cf315294009e1a323bf" +checksum = "0d9aebf4be5afc2b9d3b8aff8ce5a107440ae3174090a8720a31538e88464156" dependencies = [ "anyhow", "async-trait", @@ -5308,7 +7039,7 @@ dependencies = [ "cfg-if", "encoding_rs", "fxprof-processed-profile", - "indexmap 2.0.0", + "indexmap 2.2.5", "libc", "log", "object", @@ -5320,7 +7051,7 @@ dependencies = [ "serde_json", "target-lexicon", "wasm-encoder 0.38.1", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmtime-cache", "wasmtime-component-macro", "wasmtime-component-util", @@ -5331,48 +7062,48 @@ dependencies = [ "wasmtime-runtime", "wasmtime-winch", "wat", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-asm-macros" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "660ba9143e15a2acd921820df221b73aee256bd3ca2d208d73d8adc9587ccbb9" +checksum = "d3ed1bdfec9cca409d6562fe51abc75440c85fde2dc4c5b5ad65bc0405f31475" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ce373743892002f9391c6741ef0cb0335b55ec899d874f311222b7e36f4594" +checksum = "8222c4317b8bc3d8566b0e605fcf9c56d14947d86fb18e83128badd5cb90f237" dependencies = [ "anyhow", - "base64 0.21.7", + "base64", "bincode", "directories-next", "log", - "rustix 0.38.30", + "rustix", "serde", "serde_derive", "sha2", "toml 0.5.11", - "windows-sys 0.48.0", + "windows-sys 0.52.0", "zstd", ] [[package]] name = "wasmtime-component-macro" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12ef32643324e564e1c359e9044daa06cbf90d7e2d6c99a738d17a12959f01a5" +checksum = "8d185b5a280ec07edaaf8e353e83a3c7f99381ada711a2b35173e0961d32c1b6" dependencies = [ "anyhow", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", "wasmtime-component-util", "wasmtime-wit-bindgen", "wit-parser", @@ -5380,15 +7111,15 @@ dependencies = [ [[package]] name = "wasmtime-component-util" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c87d06c18d21a4818f354c00a85f4ebc62b2270961cd022968452b0e4dbed9d" +checksum = "0981617835bf3e8c3f29762faedd7ade0ca0e796b51e3355a3861f0a78b5688e" [[package]] name = "wasmtime-cranelift" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d648c8b4064a7911093b02237cd5569f71ca171d3a0a486bf80600b19e1cba2" +checksum = "e1f2e04e2a08c1f73fc36a8a6d0da38fbe3ff396e42c47826435239a26bf187a" dependencies = [ "anyhow", "cfg-if", @@ -5403,7 +7134,7 @@ dependencies = [ "object", "target-lexicon", "thiserror", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmtime-cranelift-shared", "wasmtime-environ", "wasmtime-versioned-export-macros", @@ -5411,9 +7142,9 @@ dependencies = [ [[package]] name = "wasmtime-cranelift-shared" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290a89027688782da8ff60b12bb95695494b1874e0d0ba2ba387d23dace6d70c" +checksum = "a1e3cef89d8ed4cdf08618c303afc512305399fbfb23810a681a5a007a65feba" dependencies = [ "anyhow", "cranelift-codegen", @@ -5427,14 +7158,14 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61eb64fb3e0da883e2df4a13a81d6282e072336e6cb6295021d0f7ab2e352754" +checksum = "099836c3583b85d16e8d1801fe793fa017e9256c5d08bd032cdab0754425be64" dependencies = [ "anyhow", "cranelift-entity", "gimli", - "indexmap 2.0.0", + "indexmap 2.2.5", "log", "object", "serde", @@ -5442,7 +7173,7 @@ dependencies = [ "target-lexicon", "thiserror", "wasm-encoder 0.38.1", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmprinter", "wasmtime-component-util", "wasmtime-types", @@ -5450,24 +7181,24 @@ dependencies = [ [[package]] name = "wasmtime-fiber" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ecf1d3a838b0956b71ad3f8cb80069a228339775bf02dd35d86a5a68bbe443" +checksum = "e19865170650ca6cdb3b1924e42e628d29d03a1766e6de71f57d879b108ee46a" dependencies = [ "anyhow", "cc", "cfg-if", - "rustix 0.38.30", + "rustix", "wasmtime-asm-macros", "wasmtime-versioned-export-macros", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-jit" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f485336add49267d8859e8f8084d2d4b9a4b1564496b6f30ba5b168d50c10ceb" +checksum = "cdae2c6da571b051c3c1520c9c4206a49939e855cb64c4119ab06ff08a3fc460" dependencies = [ "addr2line", "anyhow", @@ -5479,7 +7210,7 @@ dependencies = [ "log", "object", "rustc-demangle", - "rustix 0.38.30", + "rustix", "serde", "serde_derive", "target-lexicon", @@ -5487,43 +7218,43 @@ dependencies = [ "wasmtime-jit-debug", "wasmtime-jit-icache-coherence", "wasmtime-runtime", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-jit-debug" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65e119affec40edb2fab9044f188759a00c2df9c3017278d047012a2de1efb4f" +checksum = "793787308417b7ad72cfa22e54d97324d1d9810c2ecf47b8fd8263d5b122e30c" dependencies = [ "object", "once_cell", - "rustix 0.38.30", + "rustix", "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-jit-icache-coherence" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b6d197fcc34ad32ed440e1f9552fd57d1f377d9699d31dee1b5b457322c1f8a" +checksum = "c6d01b771888f8cc32fc491247095715c6971d70903f9a82803d707836998815" dependencies = [ "cfg-if", "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-runtime" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "794b2bb19b99ef8322ff0dd9fe1ba7e19c41036dfb260b3f99ecce128c42ff92" +checksum = "b1f0f306436812a253a934444bd25230eaf33a007218a6fe92f67d3646f8dd19" dependencies = [ "anyhow", "cc", "cfg-if", "encoding_rs", - "indexmap 2.0.0", + "indexmap 2.2.5", "libc", "log", "mach", @@ -5531,7 +7262,7 @@ dependencies = [ "memoffset 0.9.0", "paste", "psm", - "rustix 0.38.30", + "rustix", "sptr", "wasm-encoder 0.38.1", "wasmtime-asm-macros", @@ -5540,38 +7271,38 @@ dependencies = [ "wasmtime-jit-debug", "wasmtime-versioned-export-macros", "wasmtime-wmemcheck", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-types" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d995db8bb56f2cd8d2dc0ed5ffab94ffb435283b0fe6747f80f7aab40b2d06a1" +checksum = "158b87374f29ff040e865537674d610d970ccff28383853d1dc09b439eee7a87" dependencies = [ "cranelift-entity", "serde", "serde_derive", "thiserror", - "wasmparser 0.118.1", + "wasmparser 0.118.2", ] [[package]] name = "wasmtime-versioned-export-macros" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55c5565959287c21dd0f4277ae3518dd2ae62679f655ee2dbc4396e19d210db" +checksum = "e78ba3989894471c172329d42d1fc03edf2efe883fcc05a5d42f7bd5030de0ff" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "wasmtime-wasi" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccd8370078149d49a3a47e93741553fd79b700421464b6a27ca32718192ab130" +checksum = "e666a7340688aa3a7ee2d4ceb4fee4c175e331ecaeb5ac5b4d45231af718cfc2" dependencies = [ "anyhow", "async-trait", @@ -5585,11 +7316,11 @@ dependencies = [ "fs-set-times", "futures", "io-extras", - "io-lifetimes 2.0.3", + "io-lifetimes", "libc", "log", "once_cell", - "rustix 0.38.30", + "rustix", "system-interface", "thiserror", "tokio", @@ -5599,21 +7330,21 @@ dependencies = [ "wasi-common", "wasmtime", "wiggle", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "wasmtime-winch" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c6f945ff9bad96e0a69973d74f193c19f627c8adbf250e7cb73ae7564b6cc8a" +checksum = "131924cb850fd2c96e87868e101490f738e607fe0eba5ec8dc7c3b43115d8223" dependencies = [ "anyhow", "cranelift-codegen", "gimli", "object", "target-lexicon", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmtime-cranelift-shared", "wasmtime-environ", "winch-codegen", @@ -5621,21 +7352,21 @@ dependencies = [ [[package]] name = "wasmtime-wit-bindgen" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f328b2d4a690270324756e886ed5be3a4da4c00be0eea48253f4595ad068062b" +checksum = "81b149b61bd1402bcd5d456c616302812f8bebd65c56f720cefd86ab6cf5c8d8" dependencies = [ "anyhow", "heck", - "indexmap 2.0.0", + "indexmap 2.2.5", "wit-parser", ] [[package]] name = "wasmtime-wmemcheck" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67761d8f8c0b3c13a5d34356274b10a40baba67fe9cfabbfc379a8b414e45de2" +checksum = "e9b9a897e713f3d78ac66c751e4d34ec3a1cd100b85083a6dcf054940accde05" [[package]] name = "wast" @@ -5648,154 +7379,139 @@ dependencies = [ [[package]] name = "wast" -version = "70.0.0" +version = "201.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ee4bc54bbe1c6924160b9f75e374a1d07532e7580eb632c0ee6cdd109bb217e" +checksum = "1ef6e1ef34d7da3e2b374fd2b1a9c0227aff6cad596e1b24df9b58d0f6222faa" dependencies = [ + "bumpalo", "leb128", "memchr", "unicode-width", - "wasm-encoder 0.39.0", + "wasm-encoder 0.201.0", ] [[package]] name = "wat" -version = "1.0.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f0dce8cdc288c717cf01e461a1e451a7b8445d53451123536ba576e423a101a" -dependencies = [ - "wast 70.0.0", -] - -[[package]] -name = "wayland-client" -version = "0.29.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715" -dependencies = [ - "bitflags 1.3.2", - "downcast-rs", - "libc", - "nix 0.24.3", - "scoped-tls", - "wayland-commons", - "wayland-scanner", - "wayland-sys 0.29.5", -] - -[[package]] -name = "wayland-commons" -version = "0.29.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8691f134d584a33a6606d9d717b95c4fa20065605f798a3f350d78dced02a902" -dependencies = [ - "nix 0.24.3", - "once_cell", - "smallvec", - "wayland-sys 0.29.5", -] - -[[package]] -name = "wayland-cursor" -version = "0.29.5" +version = "1.201.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6865c6b66f13d6257bef1cd40cbfe8ef2f150fb8ebbdb1e8e873455931377661" +checksum = "453d5b37a45b98dee4f4cb68015fc73634d7883bbef1c65e6e9c78d454cf3f32" dependencies = [ - "nix 0.24.3", - "wayland-client", - "xcursor", + "wast 201.0.0", ] [[package]] -name = "wayland-protocols" -version = "0.29.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6" -dependencies = [ - "bitflags 1.3.2", - "wayland-client", - "wayland-commons", - "wayland-scanner", -] - -[[package]] -name = "wayland-scanner" -version = "0.29.5" +name = "web-sys" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "xml-rs", + "js-sys", + "wasm-bindgen", ] [[package]] -name = "wayland-sys" -version = "0.29.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4" -dependencies = [ - "dlib", - "lazy_static", - "pkg-config", -] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] -name = "wayland-sys" -version = "0.30.1" +name = "webpki-roots" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06" +checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009" dependencies = [ - "dlib", - "lazy_static", - "log", - "pkg-config", + "rustls-pki-types", ] [[package]] -name = "web-sys" -version = "0.3.61" +name = "wgpu-core" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97" +checksum = "ef91c1d62d1e9e81c79e600131a258edf75c9531cbdbde09c44a011a47312726" dependencies = [ - "js-sys", - "wasm-bindgen", + "arrayvec", + "bit-vec", + "bitflags 2.4.2", + "codespan-reporting", + "log", + "naga", + "parking_lot", + "profiling", + "raw-window-handle", + "ron", + "rustc-hash", + "serde", + "smallvec", + "thiserror", + "web-sys", + "wgpu-hal", + "wgpu-types", ] [[package]] -name = "webbrowser" -version = "0.8.9" +name = "wgpu-hal" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b692165700260bbd40fbc5ff23766c03e339fbaca907aeea5cb77bf0a553ca83" +checksum = "b84ecc802da3eb67b4cf3dd9ea6fe45bbb47ef13e6c49c5c3240868a9cc6cdd9" dependencies = [ - "core-foundation", - "dirs", - "jni", + "android_system_properties", + "arrayvec", + "ash", + "bit-set", + "bitflags 2.4.2", + "block", + "core-graphics-types", + "d3d12", + "glow", + "glutin_wgl_sys", + "gpu-alloc", + "gpu-allocator", + "gpu-descriptor", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.3", "log", - "ndk-context", + "metal", + "naga", "objc", + "once_cell", + "parking_lot", + "profiling", + "range-alloc", "raw-window-handle", - "url", + "rustc-hash", + "smallvec", + "thiserror", + "wasm-bindgen", "web-sys", + "wgpu-types", + "winapi", ] [[package]] -name = "webpki" -version = "0.22.0" +name = "wgpu-types" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" +checksum = "0d5ed5f0edf0de351fe311c53304986315ce866f394a2e6df0c4b3c70774bcdd" dependencies = [ - "ring", - "untrusted", + "bitflags 2.4.2", + "js-sys", + "serde", + "web-sys", ] [[package]] -name = "webpki-roots" -version = "0.22.6" +name = "which" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" dependencies = [ - "webpki", + "either", + "home", + "once_cell", + "rustix", ] [[package]] @@ -5807,15 +7523,32 @@ dependencies = [ "either", "home", "once_cell", - "rustix 0.38.30", + "rustix", "windows-sys 0.48.0", ] +[[package]] +name = "whoami" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44ab49fad634e88f55bf8f9bb3abd2f27d7204172a112c7c9987e01c1c94ea9" +dependencies = [ + "redox_syscall", + "wasite", + "web-sys", +] + +[[package]] +name = "widestring" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" + [[package]] name = "wiggle" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0afb26cd3269289bb314a361ff0a6685e5ce793b62181a9fe3f81ace15051697" +checksum = "a5530d063ee9ccb1d503fed91e3d509419f43733a05fcc99c9f7aa3482703189" dependencies = [ "anyhow", "async-trait", @@ -5828,28 +7561,28 @@ dependencies = [ [[package]] name = "wiggle-generate" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cef2868fed7584d2b552fa317104858ded80021d23b073b2d682d3c932a027bd" +checksum = "ea274a806c3eeef5008d32881a999065591c646f0f889ca07fd1223f54378e8b" dependencies = [ "anyhow", "heck", - "proc-macro2 1.0.76", - "quote 1.0.35", + "proc-macro2", + "quote", "shellexpand", - "syn 2.0.48", + "syn 2.0.52", "witx", ] [[package]] name = "wiggle-macro" -version = "16.0.0" +version = "17.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31ae1ec11a17ea481539ee9a5719a278c9790d974060fbf71db4b2c05378780b" +checksum = "505e4f6b7b46e693e0027f650956b662de0fcedfc3a2506ce6a4f9f08281791c" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 2.0.48", + "proc-macro2", + "quote", + "syn 2.0.52", "wiggle-generate", ] @@ -5871,18 +7604,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" -dependencies = [ - "winapi", -] - -[[package]] -name = "winapi-wsapoll" -version = "0.1.1" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" dependencies = [ "winapi", ] @@ -5895,9 +7619,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winch-codegen" -version = "0.14.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e58c236a6abdd9ab454552b4f29e16cfa837a86897c1503313b2e62e7609ec" +checksum = "f114f3f980c00f13ee164e431e3abac9cd20b10853849fa6b030d3e4d6be307a" dependencies = [ "anyhow", "cranelift-codegen", @@ -5905,53 +7629,36 @@ dependencies = [ "regalloc2", "smallvec", "target-lexicon", - "wasmparser 0.118.1", + "wasmparser 0.118.2", "wasmtime-environ", ] [[package]] name = "windows" -version = "0.42.0" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0286ba339aa753e70765d521bb0242cc48e1194562bfa2a2ad7ac8a6de28f5d5" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" dependencies = [ - "windows-implement", - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-core 0.51.1", + "windows-targets 0.48.5", ] [[package]] name = "windows-core" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" -dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-implement" -version = "0.42.0" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9539b6bd3eadbd9de66c9666b22d802b833da7e996bc06896142e09854a61767" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", + "windows-targets 0.48.5", ] [[package]] -name = "windows-sys" -version = "0.45.0" +name = "windows-core" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.42.2", + "windows-targets 0.52.4", ] [[package]] @@ -5960,7 +7667,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] @@ -5969,229 +7676,137 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.0", -] - -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-targets 0.52.4", ] [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", ] [[package]] name = "windows-targets" -version = "0.52.0" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", + "windows_aarch64_gnullvm 0.52.4", + "windows_aarch64_msvc 0.52.4", + "windows_i686_gnu 0.52.4", + "windows_i686_msvc 0.52.4", + "windows_x86_64_gnu 0.52.4", + "windows_x86_64_gnullvm 0.52.4", + "windows_x86_64_msvc 0.52.4", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" +checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" +checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" +checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" +checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" +checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" +checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" - -[[package]] -name = "winit" -version = "0.28.6" +version = "0.52.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "866db3f712fffba75d31bf0cdecf357c8aeafd158c5b7ab51dba2a2b2d47f196" -dependencies = [ - "android-activity", - "bitflags 1.3.2", - "cfg_aliases", - "core-foundation", - "core-graphics", - "dispatch", - "instant", - "libc", - "log", - "mio", - "ndk", - "objc2", - "once_cell", - "orbclient", - "percent-encoding", - "raw-window-handle", - "redox_syscall 0.3.5", - "sctk-adwaita", - "smithay-client-toolkit", - "wasm-bindgen", - "wayland-client", - "wayland-commons", - "wayland-protocols", - "wayland-scanner", - "web-sys", - "windows-sys 0.45.0", - "x11-dl", -] +checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" [[package]] name = "winnow" -version = "0.4.6" +version = "0.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61de7bac303dc551fe038e2b3cef0f571087a47571ea6e79a87692ac99b99699" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" dependencies = [ "memchr", ] [[package]] name = "winnow" -version = "0.5.34" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16" +checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8" dependencies = [ "memchr", ] @@ -6206,6 +7821,15 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "winres" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b68db261ef59e9e52806f688020631e987592bd83619edccda9c47d42cde4f6c" +dependencies = [ + "toml 0.5.11", +] + [[package]] name = "winx" version = "0.36.3" @@ -6218,19 +7842,19 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.13.1" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df4913a2219096373fd6512adead1fb77ecdaa59d7fc517972a7d30b12f625be" +checksum = "316b36a9f0005f5aa4b03c39bc3728d045df136f8c13a73b7db4510dec725e08" dependencies = [ "anyhow", "id-arena", - "indexmap 2.0.0", + "indexmap 2.2.5", "log", - "semver 1.0.18", + "semver 1.0.22", "serde", "serde_derive", "serde_json", - "unicode-xid 0.2.4", + "unicode-xid", ] [[package]] @@ -6246,146 +7870,90 @@ dependencies = [ ] [[package]] -name = "x11-dl" -version = "2.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" -dependencies = [ - "libc", - "once_cell", - "pkg-config", -] - -[[package]] -name = "x11rb" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "592b4883219f345e712b3209c62654ebda0bb50887f330cbd018d0f654bfd507" -dependencies = [ - "gethostname", - "nix 0.24.3", - "winapi", - "winapi-wsapoll", - "x11rb-protocol", -] - -[[package]] -name = "x11rb-protocol" -version = "0.10.0" +name = "x25519-dalek" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b245751c0ac9db0e006dc812031482784e434630205a93c73cfefcaabeac67" +checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" dependencies = [ - "nix 0.24.3", + "curve25519-dalek", + "rand_core 0.6.4", + "serde", + "zeroize", ] [[package]] -name = "xcursor" -version = "0.3.4" +name = "x509-parser" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7" +checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da" dependencies = [ - "nom", + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom 7.1.3", + "oid-registry", + "rusticata-macros", + "thiserror", + "time", ] [[package]] name = "xml-rs" -version = "0.8.11" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1690519550bfa95525229b9ca2350c63043a4857b3b0013811b2ccf4a2420b01" +checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a" [[package]] -name = "zbus" -version = "3.10.0" +name = "zerocopy" +version = "0.7.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f770930448dd412a4a7131dd968a8e6df0064db4d7916fbbd2d6c3f26b566938" +checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" dependencies = [ - "async-broadcast", - "async-executor", - "async-io", - "async-lock", - "async-recursion", - "async-task", - "async-trait", - "byteorder", - "derivative", - "dirs", - "enumflags2", - "event-listener", - "futures-core", - "futures-sink", - "futures-util", - "hex", - "nix 0.25.1", - "once_cell", - "ordered-stream", - "rand", - "serde", - "serde-xml-rs", - "serde_repr", - "sha1", - "static_assertions", - "tracing", - "uds_windows", - "winapi", - "zbus_macros", - "zbus_names", - "zvariant", + "zerocopy-derive", ] [[package]] -name = "zbus_macros" -version = "3.10.0" +name = "zerocopy-derive" +version = "0.7.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4832059b438689017db7340580ebabba07f114eab91bf990c6e55052408b40d8" +checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2 1.0.76", - "quote 1.0.35", - "regex", - "syn 1.0.109", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] -name = "zbus_names" -version = "2.5.1" +name = "zeroize" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82441e6033be0a741157a72951a3e4957d519698f3a824439cc131c5ba77ac2a" -dependencies = [ - "serde", - "static_assertions", - "zvariant", -] - -[[package]] -name = "zflow" -version = "0.1.12" +checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" dependencies = [ - "serde_json", - "zflow_graph", - "zflow_plugin", - "zflow_runtime", + "zeroize_derive", ] [[package]] -name = "zflow_editor" -version = "0.1.0" +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ - "catppuccin-egui", - "eframe", - "egui", - "serde", - "serde_json", - "zflow", + "proc-macro2", + "quote", + "syn 2.0.52", ] [[package]] name = "zflow_graph" version = "0.1.0" dependencies = [ + "anyhow", "assert-json-diff", "async-trait", "beady", "cast_trait_object", + "fbp", "foreach", "log", "nuid", @@ -6393,18 +7961,6 @@ dependencies = [ "serde_json", ] -[[package]] -name = "zflow_js_runner" -version = "0.1.0" -dependencies = [ - "anyhow", - "libloading 0.8.1", - "rquickjs", - "serde", - "serde_json", - "zflow_runtime", -] - [[package]] name = "zflow_plugin" version = "0.1.0" @@ -6421,11 +7977,41 @@ dependencies = [ "anyhow", "array_tool", "assert-json-diff", - "base64 0.21.7", + "base64", "beady", "bincode", + "chrono", "deno_ast", + "deno_broadcast_channel", + "deno_cache", + "deno_canvas", + "deno_console", "deno_core", + "deno_cron", + "deno_crypto", + "deno_fetch", + "deno_ffi", + "deno_fs", + "deno_http", + "deno_io", + "deno_kv", + "deno_lockfile", + "deno_media_type", + "deno_napi", + "deno_net", + "deno_node", + "deno_permissions", + "deno_runtime", + "deno_tls", + "deno_url", + "deno_web", + "deno_webgpu", + "deno_webidl", + "deno_websocket", + "deno_webstorage", + "denokv_proto", + "denokv_remote", + "denokv_sqlite", "dyn-clone", "extism", "extism-pdk", @@ -6435,7 +8021,7 @@ dependencies = [ "futures-lite", "is-url", "jwalk", - "libloading 0.8.1", + "libloading 0.8.3", "log", "once_cell", "rayon", @@ -6443,10 +8029,9 @@ dependencies = [ "reqwest", "serde", "serde_json", - "serde_v8", "simple_logger", + "tempdir", "tokio", - "v8", "zflow_graph", "zflow_plugin", ] @@ -6472,49 +8057,10 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.8+zstd.1.5.5" +version = "2.0.9+zstd.1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" dependencies = [ "cc", - "libc", "pkg-config", ] - -[[package]] -name = "zvariant" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622cc473f10cef1b0d73b7b34a266be30ebdcfaea40ec297dd8cbda088f9f93c" -dependencies = [ - "byteorder", - "enumflags2", - "libc", - "serde", - "static_assertions", - "zvariant_derive", -] - -[[package]] -name = "zvariant_derive" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d9c1b57352c25b778257c661f3c4744b7cefb7fc09dd46909a153cce7773da2" -dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", - "zvariant_utils", -] - -[[package]] -name = "zvariant_utils" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200" -dependencies = [ - "proc-macro2 1.0.76", - "quote 1.0.35", - "syn 1.0.109", -] diff --git a/Cargo.toml b/Cargo.toml index 0e854bc..671d7b6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,33 +1,42 @@ -[package] -name = "zflow" -version = "0.1.12" -edition = "2021" -authors = ["Damilare Akinlaja "] -license = "MIT" -description = "Flow-based programming library" -keywords = ["fbp", "DAG", "flowbased", "low-code", "no-code", "visual-programming"] -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[dependencies] -zflow_graph = {path = "./zflow_graph"} -zflow_runtime = {path ="./zflow_runtime"} -zflow_plugin = {path ="./zflow_plugin"} -serde_json = "1.0" - -[lib] -doctest = false - [workspace] - +resolver = "2" members = [ - "fbp", - "zflow_graph", - "zflow_editor", - "zflow_runtime", - "zflow_plugin", - "zflow_runtime/test_components/add_wasm", - "zflow_runtime/test_providers/maths_provider", - "zflow_js_runner" + "./crates/fbp", + "./crates/zflow_graph", + # "zflow_editor", + "./crates/zflow_runtime", + "./crates/zflow_plugin", + # "./crates/zflow_js_runner", + "./crates/test_components/add_wasm", + "./crates/test_providers/maths_provider", ] - - +[workspace.dependencies] +extism-pdk = "1.0.0" +serde_json = "1.0" +serde = { version = "1.0", features = ["derive"] } +anyhow = "1.0.71" +log = "0.4" +foreach = "0.3.0" +nuid = "0.3.2" +beady = "0.6.0" +assert-json-diff = "2.0.2" +cast_trait_object = "0.1.3" +async-trait = "0.1.60" +regex-lexer = "0.2.0" +regex = "1.8.1" +fp_rust = {version = "0.3.5", features = ["for_futures"]} +rayon = "1.7.0" +futures = {version = "0.3.25", features = ["thread-pool"] } +futures-lite = "1.12.0" +simple_logger = "4.3.3" +base64 = "0.21.7" +is-url = "1.0.4" +tokio = {version="1", features=["full"]} +chrono = {version="0.4.34", default-features = false, features = ["clock"]} +tempdir = "0.3.7" +array_tool = "1.0.3" +dyn-clone = "1.0.11" +bincode = "1.3.3" +once_cell = "1.18.0" +bytes = "1.4.0" +reqwest = { version = "0.11.20", default-features = false, features = ["rustls-tls", "stream", "gzip", "brotli", "socks", "json"] } diff --git a/fbp/Cargo.toml b/crates/fbp/Cargo.toml similarity index 54% rename from fbp/Cargo.toml rename to crates/fbp/Cargo.toml index 184cd43..f191620 100644 --- a/fbp/Cargo.toml +++ b/crates/fbp/Cargo.toml @@ -6,7 +6,10 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -regex-lexer = "0.2.0" -regex = "1.8.1" -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } +regex-lexer= {workspace = true} +regex= {workspace = true} +serde_json= {workspace = true} +serde= {workspace = true} + +[lib] +path = "lib.rs" diff --git a/fbp/README.md b/crates/fbp/README.md similarity index 100% rename from fbp/README.md rename to crates/fbp/README.md diff --git a/crates/fbp/lib.rs b/crates/fbp/lib.rs new file mode 100644 index 0000000..1d8a99e --- /dev/null +++ b/crates/fbp/lib.rs @@ -0,0 +1,704 @@ +pub mod types; + +use regex::Regex; +use serde_json::{json, Map, Value}; + +pub struct FBP<'a> { + source: &'a str, + graph: GraphJson, +} + +use regex_lexer::{Error, LexerBuilder, Token}; +use types::*; + +struct FBPLexer; + +impl FBPLexer { + pub(crate) fn run<'a>(source: &'a str) -> Result, Error> { + let lexer = LexerBuilder::new() + .token(r"->", Kind::Arrow) + .token(r"\[", Kind::BkOpen) + .token(r"\]", Kind::BkClose) + .token(r"\(", Kind::BrOpen) + .token(r"\)", Kind::BrClose) + .token(r":", Kind::Col) + .token(r",", Kind::Comma) + .token(r"^'.*'", Kind::IIPChar) + .token(r"^#.+", Kind::Doc) + .token(r"^#\s+@.+", Kind::At) + .token(r"\.", Kind::Dot) + .token(r"\(([a-zA-Z/\-0-9_]*)?(:.+)?(\))?", Kind::Component) + .token(r"[a-zA-Z_][a-zA-Z0-9_\-]*", Kind::Name) + // .token(r"->\s+[a-zA-Z_][a-zA-Z.0-9_]*", Kind::RightPort) + .token(r"[0-9]+", Kind::PortIndex) + .ignore(r"\n+") + .token( + r"(INPORT|OUTPORT)=([a-zA-Z_][a-zA-Z0-9_\-]*)", + Kind::InPortOutPort, + ) + .token( + r"([a-zA-Z_][a-zA-Z.0-9_]*)(:)([a-zA-Z_][a-zA-Z.0-9_]*)", + Kind::LeftRightPort, + ) + .ignore(r"\s+") + .build() + .expect("expected to parse source"); + + let mut atoms = lexer.tokens(source).collect::>(); + + let mut tokens = Vec::new(); + + loop { + match atoms.clone().as_slice() { + [Token { + kind: Kind::IIPChar, + span: _, + text: iip, + }, ..] => { + atoms.remove(0); + tokens.push(FBPToken::IIPChar( + iip.to_string().replace("'", "").to_string(), + )); + } + [Token { + kind: Kind::InPortOutPort, + span: _, + text, + }, ..] => { + let first_operands = text.split("=").collect::>(); + let operand = first_operands[0]; + let node = first_operands[1]; + + let mut node = NodeInfo { + name: node.to_string(), + port: None, + }; + atoms.remove(0); + match atoms.clone().as_slice() { + [Token { + kind: Kind::Dot, + span: _, + text: _, + }, ..] => { + atoms.remove(0); + + match atoms.clone().as_slice() { + [Token { + kind: Kind::LeftRightPort, + span:_, + text: name, + }, ..] => { + let operands = name.split(":").collect::>(); + let left_port = operands[0]; + let right_port = operands[1]; + node.port = Some(PortInfo { + name: left_port.to_string(), + index: None, + }); + atoms.remove(0); + + match operand { + "INPORT" => { + tokens.push(FBPToken::Inport( + node, + PortInfo { + name: right_port.to_string(), + index: None, + }, + )); + } + "OUTPORT" => { + tokens.push(FBPToken::Outport( + node, + PortInfo { + name: right_port.to_string(), + index: None, + }, + )); + } + _ => {} + } + } + [..] => {} + } + } + [..] => {} + } + } + [Token { + kind: Kind::Doc, + span:_, + text, + }, ..] => { + atoms.remove(0); + tokens.push(FBPToken::Doc(text.to_string())); + } + [Token { + kind: Kind::At, + span:_, + text, + }, ..] => { + let text = text.to_string(); + let text = text.replace("#", ""); + let annotations = text.trim().split(" ").collect::>(); + atoms.remove(0); + tokens.push(FBPToken::Annotation( + annotations[0].replace("@", "").to_string(), + annotations[1].to_string(), + )) + } + [Token { + kind: Kind::Name, + span:_, + text: name, + }, ..] => { + atoms.remove(0); + + match atoms.clone().as_slice() { + [Token { + kind: Kind::Component, + span: _, + text: comp, + }, ..] => { + let mut node = NodeInfo { + name: name.to_string(), + port: None, + }; + atoms.remove(0); + let component = comp.replace("(", "").replace(")", ""); + let component = component.split(":").collect::>(); + let component_name = component[0].to_string(); + let mut meta = "".to_string(); + if component.len() > 1 { + meta = component[1].to_string(); + } + if comp.starts_with('(') && !comp.ends_with(')') { + if atoms[1].kind == Kind::BrClose { + atoms.remove(0); + } else { + return Err(Error::Syntax(format!( + "Opened bracket should be closed for component at {} <==", + comp + ))); + } + } + + if atoms.len() > 0 { + if atoms[0].kind == Kind::Name && atoms[1].kind == Kind::Arrow { + let port = atoms[0].text; + let mut port_info = PortInfo { + name: port.to_string(), + index: None, + }; + match atoms.clone().as_slice() { + [Token { + kind: Kind::PortIndex, + span:_, + text: index, + }, ..] => { + atoms.remove(0); + let port_index = index + .parse::() + .expect("expected port index to be an integer"); + port_info.index = Some(port_index); + node.port = Some(port_info.clone()); + } + [..] => { + node.port = Some(port_info.clone()); + } + } + } + } + + tokens.push(FBPToken::Node( + node, + Some(Box::new(FBPToken::Component( + component_name.to_string(), + meta, + ))), + )); + } + [Token { + kind: Kind::Name, + span:_, + text: port, + }, ..] => { + let mut node = NodeInfo { + name: name.to_string(), + port: None, + }; + atoms.remove(0); + let mut port_info = PortInfo { + name: port.to_string(), + index: None, + }; + match atoms.clone().as_slice() { + [Token { + kind: Kind::PortIndex, + span:_, + text: index, + }, ..] => { + atoms.remove(0); + let port_index = index + .parse::() + .expect("expected port index to be an integer"); + port_info.index = Some(port_index); + node.port = Some(port_info.clone()); + } + [..] => { + node.port = Some(port_info.clone()); + } + } + + tokens.push(FBPToken::Node(node, None)); + } + [..] => {} + } + } + [Token { + kind: Kind::Arrow, + span: _, + text: _, + }, Token { + kind: Kind::Name, + span:_, + text: port, + }, ..] => { + atoms.remove(0); + atoms.remove(0); + let mut port_info = PortInfo { + name: port.to_string().replace("-> ", ""), + index: None, + }; + + match atoms.clone().as_slice() { + [Token { + kind: Kind::PortIndex, + span:_, + text: index, + }, ..] => { + atoms.remove(0); + let port_index = index + .parse::() + .expect("expected port index to be an integer"); + port_info.index = Some(port_index); + } + [..] => {} + } + + tokens.push(FBPToken::Arrow); + tokens.push(FBPToken::Port(port_info)); + } + [..] => { + if !atoms.is_empty() { + atoms.remove(0); + } else { + break; + } + } + } + } + + Ok(tokens) + } +} + +impl<'a> FBP<'a> { + pub fn new(source: &'a str, name: &'a str, case_sensitive: bool) -> Self { + Self { + source, + graph: GraphJson { + case_sensitive, + properties: Map::from_iter([("name".to_owned(), json!(name))]), + ..Default::default() + }, + } + } + + fn advance(tokens: &mut Vec) { + if tokens.is_empty() { + return; + } + tokens.remove(0); + } + + fn resolve_process_name(node: &'a str, component: &'a str) -> String { + return format!("{}/{}", node, component); + } + + pub fn parse(&mut self) -> Result { + let tokens = &mut FBPLexer::run(self.source)?; + + while !tokens.is_empty() { + match &tokens.clone()[..] { + [FBPToken::Doc(_), ..] => { + FBP::advance(tokens); + } + [FBPToken::Annotation(data1, data2), ..] => { + self.graph.properties.insert(data1.clone(), json!(data2)); + FBP::advance(tokens); + } + [FBPToken::Inport(node_info, port_info), ..] => { + self.graph.inports.insert( + port_info.name.clone(), + GraphExportedPort { + process: node_info.name.clone(), + port: if let Some(port) = node_info.port.clone() { + port.name + } else { + port_info.name.clone() + }, + ..Default::default() + }, + ); + FBP::advance(tokens); + } + [FBPToken::Outport(node_info, port_info), ..] => { + self.graph.outports.insert( + port_info.name.clone(), + GraphExportedPort { + process: node_info.name.clone(), + port: if let Some(port) = node_info.port.clone() { + port.name + } else { + port_info.name.clone() + }, + ..Default::default() + }, + ); + FBP::advance(tokens); + } + [FBPToken::Node(node1, op1), FBPToken::Arrow, FBPToken::Port(port2), FBPToken::Node(node2, op2), ..] => + { + let re_map_data = Regex::new( + r"(([a-zA-Z0-9_\-]*=[a-zA-Z0-9_\-]*),?)+([a-zA-Z0-9_\-]*=[a-zA-Z0-9_\-]*)?", + )?; + + let component_meta = |meta: &str| -> Option> { + let mut map = Map::new(); + let metas: Vec<&str> = meta.split(",").collect(); + for meta in metas { + let split: Vec<&str> = meta.split("=").collect(); + if split.len() > 1 { + let key = split[0]; + let val = split[1]; + if !key.is_empty() && !val.is_empty() { + map.insert(key.to_string(), json!(val.to_string())); + } + } + } + Some(map) + }; + + let mut node1_name = node1.name.clone(); + if !self.graph.case_sensitive { + node1_name = node1_name.to_lowercase(); + } + let mut node2_name = node2.name.clone(); + if !self.graph.case_sensitive { + node2_name = node2_name.to_lowercase(); + } + + let port1 = node1.port.clone().unwrap(); + + let mut port1_name = port1.name; + if !self.graph.case_sensitive { + port1_name = port1_name.to_lowercase(); + } + let mut port2_name = port2.name.clone(); + if !self.graph.case_sensitive { + port2_name = port2_name.to_lowercase(); + } + + + let (process1_name, compname1, meta1) = if let Some(tok) = op1 { + match tok.as_ref() { + FBPToken::Component(compname, meta) => { + + if !compname.is_empty() { + let mut compname = compname.clone(); + let mut name = FBP::resolve_process_name(&node1_name, &compname); + if !self.graph.case_sensitive { + name = name.to_lowercase(); + compname = compname.to_lowercase(); + } + (name, compname.clone(), Some(meta)) + } else { + (node1_name.clone(), node1_name.clone(), None) + } + } + _ => (node1_name.clone(), node1_name.clone(), None), + } + } else { + (node1_name.clone(), node1_name.clone(), None) + }; + + if self.graph.processes.contains_key(&process1_name) { + if let Some(meta) = meta1 { + if let Some(comp) = self.graph.processes.get_mut(&process1_name) { + if re_map_data.is_match(meta) { + comp.metadata = component_meta(meta); + } + } + } + } else { + self.graph.processes.insert( + process1_name.clone(), + GraphNodeJson { + component: compname1, + metadata: if let Some(meta) = meta1 { + if re_map_data.is_match(meta) { + component_meta(meta) + } else { + None + } + } else { + None + }, + }, + ); + } + + let (process2_name, compname2, meta2) = if let Some(tok) = op2 { + match tok.as_ref() { + FBPToken::Component(compname, meta) => { + if !compname.is_empty() { + let mut compname = compname.clone(); + let mut name = FBP::resolve_process_name(&node2_name, &compname); + if !self.graph.case_sensitive { + name = name.to_lowercase(); + compname = compname.to_lowercase(); + } + (name, compname.clone(), Some(meta)) + } else { + (node2_name.clone(), node2_name.clone(), None) + } + } + _ => (node2_name.clone(), node2_name.clone(), None), + } + } else { + (node2_name.clone(), node2_name.clone(), None) + }; + + if self.graph.processes.contains_key(&process2_name) { + if let Some(meta) = meta2 { + if let Some(comp) = self.graph.processes.get_mut(&process2_name) { + if re_map_data.is_match(meta) { + comp.metadata = component_meta(meta) + } + } + } + } else { + self.graph.processes.insert( + process2_name.clone(), + GraphNodeJson { + component: compname2, + metadata: if let Some(meta) = meta2 { + if re_map_data.is_match(meta) { + component_meta(meta) + } else { + None + } + } else { + None + }, + }, + ); + } + + + self.graph.connections.push(GraphEdgeJson { + src: Some(GraphLeafJson { + port: port1_name, + process: process1_name.clone(), + index: port1.index, + }), + tgt: Some(GraphLeafJson { + port: port2_name.clone(), + process: process2_name.clone(), + index: port2.index, + }), + metadata: if let Some(meta) = meta2 { + if !re_map_data.is_match(meta) && !meta.is_empty(){ + Some(Map::from_iter([("name".to_owned(), json!(meta))])) + } else { + None + } + } else { + None + }, + ..Default::default() + }); + FBP::advance(tokens); + FBP::advance(tokens); + FBP::advance(tokens); + }, + [FBPToken::IIPChar(data), FBPToken::Arrow, FBPToken::Port(port2), FBPToken::Node(node2, op2), ..] => { + let re_map_data = Regex::new( + r"(([a-zA-Z0-9_\-]*=[a-zA-Z0-9_\-]*),?)+([a-zA-Z0-9_\-]*=[a-zA-Z0-9_\-]*)?", + )?; + + let component_meta = |meta: &str| -> Option> { + let mut map = Map::new(); + let metas: Vec<&str> = meta.split(",").collect(); + for meta in metas { + let split: Vec<&str> = meta.split("=").collect(); + if split.len() > 1 { + let key = split[0]; + let val = split[1]; + if !key.is_empty() && !val.is_empty() { + map.insert(key.to_string(), json!(val.to_string())); + } + } + } + Some(map) + }; + + let mut node2_name = node2.name.clone(); + if !self.graph.case_sensitive { + node2_name = node2_name.to_lowercase(); + } + + let mut port2_name = port2.name.clone(); + if !self.graph.case_sensitive { + port2_name = port2_name.to_lowercase(); + } + + let (process2_name, compname2, meta2) = if let Some(tok) = op2 { + match tok.as_ref() { + FBPToken::Component(compname, meta) => { + if !compname.is_empty() { + let mut compname = compname.clone(); + let mut name = FBP::resolve_process_name(&node2_name, &compname); + if !self.graph.case_sensitive { + name = name.to_lowercase(); + compname = compname.to_lowercase(); + } + (name, compname.clone(), Some(meta)) + } else { + (node2_name.clone(), node2_name.clone(), None) + } + } + _ => (node2_name.clone(), node2_name.clone(), None), + } + } else { + (node2_name.clone(), node2_name.clone(), None) + }; + + if self.graph.processes.contains_key(&process2_name) { + if let Some(meta) = meta2 { + if let Some(comp) = self.graph.processes.get_mut(&process2_name) { + if re_map_data.is_match(meta) { + comp.metadata = component_meta(meta) + } + } + } + } else { + self.graph.processes.insert( + process2_name.clone(), + GraphNodeJson { + component: compname2, + metadata: if let Some(meta) = meta2 { + if re_map_data.is_match(meta) { + component_meta(meta) + } else { + None + } + } else { + None + }, + }, + ); + } + + self.graph.connections.push(GraphEdgeJson { + src: None, + tgt: Some(GraphLeafJson { + port: port2_name.clone(), + process: process2_name.clone(), + index: port2.index, + }), + metadata: if let Some(meta) = meta2 { + if !re_map_data.is_match(meta) && !meta.is_empty(){ + Some(Map::from_iter([("name".to_owned(), json!(meta))])) + } else { + None + } + } else { + None + }, + data: Some(json!(data)), + ..Default::default() + }); + + FBP::advance(tokens); + FBP::advance(tokens); + FBP::advance(tokens) + }, + [FBPToken::Node(_, __), ..] => { + FBP::advance(tokens); + }, + [FBPToken::IIPChar(_), ..] => { + FBP::advance(tokens); + } + [FBPToken::Port(_), ..] => FBP::advance(tokens), + [FBPToken::LongSpace, ..] => FBP::advance(tokens), + [FBPToken::ShortSpace, ..] => FBP::advance(tokens), + [FBPToken::Ap, ..] => FBP::advance(tokens), + [FBPToken::AnyChar(_), ..] => FBP::advance(tokens), + [FBPToken::Arrow, ..] => FBP::advance(tokens), + [FBPToken::At, ..] => FBP::advance(tokens), + [FBPToken::Index(_), ..] => FBP::advance(tokens), + [FBPToken::BkOpen, ..] => FBP::advance(tokens), + [FBPToken::BkClose, ..] => FBP::advance(tokens), + [FBPToken::BrOpen, ..] => FBP::advance(tokens), + [FBPToken::BrClose, ..] => FBP::advance(tokens), + [FBPToken::Col, ..] => FBP::advance(tokens), + [FBPToken::Comma, ..] => FBP::advance(tokens), + [FBPToken::Dot, ..] => FBP::advance(tokens), + [FBPToken::Hash, ..] => FBP::advance(tokens), + [FBPToken::Eof, ..] => break, + [FBPToken::NewLine, ..] => FBP::advance(tokens), + [FBPToken::Component(_, _), ..] => FBP::advance(tokens), + &[] => {} + } + } + + Ok(self.graph.clone()) + } +} + +#[cfg(test)] +mod tests { + use super::FBP; + + #[test] + fn parse_fbp() { + let graph = FBP::new( + r" + # A comment line + # @runtime foo + INPORT=Read.OPTIONS:CONFIG + OUTPORT=Process.OUT:RESULT + Read(ReadFile) OUT -> IN Process(Output:key=value) + Forward OUT -> IN Log(core/console) + 'somefile.txt' -> SOURCE Read(ReadFile) OUT -> IN Split(SplitStr) + Split OUT -> IN Count(Counter) COUNT -> IN Display(Output) + Read() ERROR -> IN Display() + INPORT=Read.IN:FILENAME + 'somefile.txt' -> SOURCE Read(ReadFile:main) + Read() OUT -> IN Split(SplitStr:main) + Split() OUT -> IN Count(Counter:main) + Count() COUNT -> IN Display(Output:main) + Read() ERROR -> IN Display() + Read() OUT -> IN Split(SplitStr:foo=bar,baz=123) + ", + "MyGraph", + false, + ) + .parse() + .expect("Syntax error"); + + println!("{:?}", graph); + } +} diff --git a/crates/fbp/types.rs b/crates/fbp/types.rs new file mode 100644 index 0000000..92aeac4 --- /dev/null +++ b/crates/fbp/types.rs @@ -0,0 +1,133 @@ +use std::collections::HashMap; + +use serde::{Deserialize, Serialize}; +use serde_json::{Value, Map}; + +pub type Spanned = Result<(Loc, Token, Loc), Error>; + +#[derive(Clone, Debug)] +pub struct NodeInfo { + pub name: String, + pub port: Option, +} + +#[derive(Clone, Debug)] +pub struct PortInfo { + pub name: String, + pub index: Option, +} + +#[derive(Clone, Debug)] +pub enum FBPToken { + Inport(NodeInfo, PortInfo), + Outport(NodeInfo, PortInfo), + Port(PortInfo), + LongSpace, + ShortSpace, + IIPChar(String), + Ap, + AnyChar(String), + Node(NodeInfo, Option>), + At, + Annotation(String, String), + Doc(String), + Index(usize), + BkOpen, + BkClose, + BrOpen, + BrClose, + Col, + Comma, + Dot, + Hash, + Eof, + NewLine, + Arrow, + Component(String, String), +} + +#[derive(Debug, PartialEq, Eq, Clone, Copy)] +pub enum Kind { + InPortOutPort, + Outport, + Inport, + LongSpace, + ShortSpace, + StartIIP, + CloseIIP, + IIPChar, + Ap, + AnyChar, + Node, + NodeName, + At, + AnnotationKey, + AnnotationValue, + Doc, + Index, + BkOpen, + BkClose, + BrOpen, + BrClose, + Col, + Comma, + Dot, + Hash, + Eof, + NewLine, + Arrow, + Component, + Name, + CompMeta, + CompName, + Port, + LeftRightPort, + PortIndex, +} + +#[derive(Clone, Serialize, Deserialize, Debug, Default)] +pub struct GraphLeafJson { + pub port: String, + pub process: String, + pub index: Option, +} + +#[derive(Clone, Serialize, Deserialize, Debug, Default)] +pub struct GraphEdgeJson { + pub src: Option, + pub tgt: Option, + pub data: Option, + pub metadata: Option>, +} + +#[derive(Clone, Serialize, Deserialize, Debug, Default)] +pub struct GraphNodeJson { + pub component: String, + pub metadata: Option>, +} + +#[derive(Clone, Serialize, Deserialize, Debug, Default)] +pub struct GraphExportedPort { + pub process: String, + pub port: String, + pub metadata: Option>, +} + +#[derive(Clone, Serialize, Deserialize, Debug, Default)] +pub struct GraphGroup { + pub name: String, + pub nodes: Vec, + pub metadata: Option>, +} + +#[derive(Serialize, Deserialize, Clone, Debug, Default)] +#[serde(rename_all = "camelCase")] +pub struct GraphJson { + pub case_sensitive: bool, + pub properties: Map, + pub inports: HashMap, + pub outports: HashMap, + pub groups: Vec, + pub processes: HashMap, + pub connections: Vec, +} \ No newline at end of file diff --git a/crates/http_utils/Cargo.toml b/crates/http_utils/Cargo.toml new file mode 100644 index 0000000..fbf4e67 --- /dev/null +++ b/crates/http_utils/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "http_utils" +version = "0.1.0" +edition = "2021" + +[dependencies] +tokio = { workspace = true } +tokio-util = { workspace = true, features = ["rt"] } +futures-util = { workspace = true } +bytes = { workspace = true } +hyper = { workspace = true, features = ["full"] } +http = { version = "0.2" } \ No newline at end of file diff --git a/crates/http_utils/src/io/mod.rs b/crates/http_utils/src/io/mod.rs new file mode 100644 index 0000000..fd99c30 --- /dev/null +++ b/crates/http_utils/src/io/mod.rs @@ -0,0 +1,5 @@ +mod rewind; +mod upgraded2; + +pub use self::rewind::Rewind; +pub use self::upgraded2::Upgraded2; diff --git a/crates/http_utils/src/io/rewind.rs b/crates/http_utils/src/io/rewind.rs new file mode 100644 index 0000000..dbf7ec0 --- /dev/null +++ b/crates/http_utils/src/io/rewind.rs @@ -0,0 +1,87 @@ +// Copyright 2014-2021 Sean McArthur +// SPDX-License-Identifier: MIT + +use std::marker::Unpin; +use std::pin::Pin; +use std::task::{Context, Poll}; +use std::{cmp, io}; + +use bytes::{Buf, Bytes}; +use tokio::io::{AsyncRead, AsyncWrite, ReadBuf}; + +/// Combine a buffer with an IO, rewinding reads to use the buffer. +#[derive(Debug)] +pub struct Rewind { + pre: Option, + inner: T, +} + +impl Rewind { + pub fn new_buffered(io: T, buf: Bytes) -> Self { + Rewind { + pre: Some(buf), + inner: io, + } + } +} + +impl AsyncRead for Rewind +where + T: AsyncRead + Unpin, +{ + fn poll_read( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + buf: &mut ReadBuf<'_>, + ) -> Poll> { + if let Some(mut prefix) = self.pre.take() { + // If there are no remaining bytes, let the bytes get dropped. + if !prefix.is_empty() { + let copy_len = cmp::min(prefix.len(), buf.remaining()); + // TODO: There should be a way to do following two lines cleaner... + buf.put_slice(&prefix[..copy_len]); + prefix.advance(copy_len); + // Put back what's left + if !prefix.is_empty() { + self.pre = Some(prefix); + } + + return Poll::Ready(Ok(())); + } + } + Pin::new(&mut self.inner).poll_read(cx, buf) + } +} + +impl AsyncWrite for Rewind +where + T: AsyncWrite + Unpin, +{ + fn poll_write( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + buf: &[u8], + ) -> Poll> { + Pin::new(&mut self.inner).poll_write(cx, buf) + } + + fn poll_write_vectored( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + bufs: &[io::IoSlice<'_>], + ) -> Poll> { + Pin::new(&mut self.inner).poll_write_vectored(cx, bufs) + } + + fn poll_flush(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + Pin::new(&mut self.inner).poll_flush(cx) + } + + fn poll_shutdown(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + Pin::new(&mut self.inner).poll_shutdown(cx) + } + + fn is_write_vectored(&self) -> bool { + self.inner.is_write_vectored() + } +} diff --git a/crates/http_utils/src/io/upgraded2.rs b/crates/http_utils/src/io/upgraded2.rs new file mode 100644 index 0000000..d338abd --- /dev/null +++ b/crates/http_utils/src/io/upgraded2.rs @@ -0,0 +1,78 @@ +// Copyright 2014-2021 Sean McArthur +// SPDX-License-Identifier: MIT + +use std::{ + fmt, io, + pin::Pin, + task::{Context, Poll}, +}; + +use bytes::Bytes; +use tokio::io::{AsyncRead, AsyncWrite, ReadBuf}; + +use super::Rewind; + +trait Io: AsyncRead + AsyncWrite + Unpin + 'static {} + +impl Io for T {} + +pub struct Upgraded2 { + io: Rewind>, +} + +impl Upgraded2 { + pub fn new(io: T, read_buf: Bytes) -> Self + where + T: AsyncRead + AsyncWrite + Unpin + Send + 'static, + { + Upgraded2 { + io: Rewind::new_buffered(Box::new(io), read_buf), + } + } +} + +impl AsyncRead for Upgraded2 { + fn poll_read( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + buf: &mut ReadBuf<'_>, + ) -> Poll> { + Pin::new(&mut self.io).poll_read(cx, buf) + } +} + +impl AsyncWrite for Upgraded2 { + fn poll_write( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + buf: &[u8], + ) -> Poll> { + Pin::new(&mut self.io).poll_write(cx, buf) + } + + fn poll_write_vectored( + mut self: Pin<&mut Self>, + cx: &mut Context<'_>, + bufs: &[io::IoSlice<'_>], + ) -> Poll> { + Pin::new(&mut self.io).poll_write_vectored(cx, bufs) + } + + fn poll_flush(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + Pin::new(&mut self.io).poll_flush(cx) + } + + fn poll_shutdown(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + Pin::new(&mut self.io).poll_shutdown(cx) + } + + fn is_write_vectored(&self) -> bool { + self.io.is_write_vectored() + } +} + +impl fmt::Debug for Upgraded2 { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + f.debug_struct("Upgraded2").finish() + } +} diff --git a/crates/http_utils/src/lib.rs b/crates/http_utils/src/lib.rs new file mode 100644 index 0000000..94db7d3 --- /dev/null +++ b/crates/http_utils/src/lib.rs @@ -0,0 +1,2 @@ +pub mod io; +pub mod utils; diff --git a/crates/http_utils/src/utils.rs b/crates/http_utils/src/utils.rs new file mode 100644 index 0000000..e15bf3a --- /dev/null +++ b/crates/http_utils/src/utils.rs @@ -0,0 +1,29 @@ +use http::{header, response, HeaderMap, Response, StatusCode}; +use hyper::Body; + +pub fn get_upgrade_type(headers: &HeaderMap) -> Option { + let connection_header_exists = headers + .get(header::CONNECTION) + .map(|it| { + it.to_str() + .unwrap_or("") + .split(',') + .any(|str| str.trim() == header::UPGRADE) + }) + .unwrap_or(false); + + if connection_header_exists { + if let Some(upgrade) = headers.get(header::UPGRADE) { + return upgrade.to_str().ok().map(str::to_owned); + } + } + + None +} + +pub fn emit_status_code(status: StatusCode) -> Response { + response::Builder::new() + .status(status) + .body(Body::empty()) + .unwrap() +} diff --git a/zflow_runtime/test_components/add_go/add.gos b/crates/test_components/add_go/add.gos similarity index 100% rename from zflow_runtime/test_components/add_go/add.gos rename to crates/test_components/add_go/add.gos diff --git a/zflow_runtime/test_components/add_go/zflow.json b/crates/test_components/add_go/zflow.json similarity index 100% rename from zflow_runtime/test_components/add_go/zflow.json rename to crates/test_components/add_go/zflow.json diff --git a/zflow_runtime/test_components/add_js/add.js b/crates/test_components/add_js/add.js similarity index 100% rename from zflow_runtime/test_components/add_js/add.js rename to crates/test_components/add_js/add.js diff --git a/zflow_runtime/test_components/add_js/runner/libzflow_runner_js.dylib b/crates/test_components/add_js/runner/libzflow_runner_js.dylib similarity index 100% rename from zflow_runtime/test_components/add_js/runner/libzflow_runner_js.dylib rename to crates/test_components/add_js/runner/libzflow_runner_js.dylib diff --git a/zflow_runtime/test_components/add_js/zflow.json b/crates/test_components/add_js/zflow.json similarity index 100% rename from zflow_runtime/test_components/add_js/zflow.json rename to crates/test_components/add_js/zflow.json diff --git a/zflow_runtime/test_components/add_lua/add.lua b/crates/test_components/add_lua/add.lua similarity index 100% rename from zflow_runtime/test_components/add_lua/add.lua rename to crates/test_components/add_lua/add.lua diff --git a/zflow_runtime/test_components/add_lua/zflow.json b/crates/test_components/add_lua/zflow.json similarity index 100% rename from zflow_runtime/test_components/add_lua/zflow.json rename to crates/test_components/add_lua/zflow.json diff --git a/zflow_runtime/test_components/add_wasm/Cargo.toml b/crates/test_components/add_wasm/Cargo.toml similarity index 69% rename from zflow_runtime/test_components/add_wasm/Cargo.toml rename to crates/test_components/add_wasm/Cargo.toml index e8c0e76..9ab9f9c 100644 --- a/zflow_runtime/test_components/add_wasm/Cargo.toml +++ b/crates/test_components/add_wasm/Cargo.toml @@ -6,10 +6,11 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -extism-pdk = "1.0.0" -serde = { version = "1.0", features = ["derive"] } +extism-pdk= {workspace = true} serde_json = "1.0" -zflow_plugin = {path= "../../../zflow_plugin"} +serde = { version = "1.0", features = ["derive"] } +zflow_plugin = {path= "../../zflow_plugin"} [lib] -crate_type = ["cdylib"] \ No newline at end of file +crate_type = ["cdylib"] +path = "lib.rs" \ No newline at end of file diff --git a/zflow_runtime/test_components/add_wasm/add_wasm.wasm b/crates/test_components/add_wasm/add_wasm.wasm similarity index 100% rename from zflow_runtime/test_components/add_wasm/add_wasm.wasm rename to crates/test_components/add_wasm/add_wasm.wasm diff --git a/zflow_runtime/test_components/add_wasm/src/lib.rs b/crates/test_components/add_wasm/lib.rs similarity index 100% rename from zflow_runtime/test_components/add_wasm/src/lib.rs rename to crates/test_components/add_wasm/lib.rs diff --git a/zflow_runtime/test_components/add_wasm/zflow.json b/crates/test_components/add_wasm/zflow.json similarity index 100% rename from zflow_runtime/test_components/add_wasm/zflow.json rename to crates/test_components/add_wasm/zflow.json diff --git a/zflow_runtime/test_components/add_wren/main.wren b/crates/test_components/add_wren/main.wren similarity index 100% rename from zflow_runtime/test_components/add_wren/main.wren rename to crates/test_components/add_wren/main.wren diff --git a/zflow_runtime/test_components/add_wren/zflow.json b/crates/test_components/add_wren/zflow.json similarity index 100% rename from zflow_runtime/test_components/add_wren/zflow.json rename to crates/test_components/add_wren/zflow.json diff --git a/zflow_runtime/test_providers/maths_provider/.cargo/config.toml b/crates/test_providers/maths_provider/.cargo/config.toml similarity index 100% rename from zflow_runtime/test_providers/maths_provider/.cargo/config.toml rename to crates/test_providers/maths_provider/.cargo/config.toml diff --git a/zflow_runtime/test_providers/maths_provider/Cargo.toml b/crates/test_providers/maths_provider/Cargo.toml similarity index 69% rename from zflow_runtime/test_providers/maths_provider/Cargo.toml rename to crates/test_providers/maths_provider/Cargo.toml index 47564a1..3f3a951 100644 --- a/zflow_runtime/test_providers/maths_provider/Cargo.toml +++ b/crates/test_providers/maths_provider/Cargo.toml @@ -6,10 +6,11 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -extism-pdk = "1.0.0" -serde = { version = "1.0", features = ["derive"] } +extism-pdk= {workspace = true} serde_json = "1.0" -zflow_plugin = {path= "../../../zflow_plugin"} +serde = { version = "1.0", features = ["derive"] } +zflow_plugin = {path= "../../zflow_plugin"} [lib] -crate_type = ["cdylib"] \ No newline at end of file +crate_type = ["cdylib"] +path = "lib.rs" \ No newline at end of file diff --git a/zflow_runtime/test_providers/maths_provider/bin/.rustc_info.json b/crates/test_providers/maths_provider/bin/.rustc_info.json similarity index 100% rename from zflow_runtime/test_providers/maths_provider/bin/.rustc_info.json rename to crates/test_providers/maths_provider/bin/.rustc_info.json diff --git a/zflow_js_runner/bin/CACHEDIR.TAG b/crates/test_providers/maths_provider/bin/CACHEDIR.TAG similarity index 100% rename from zflow_js_runner/bin/CACHEDIR.TAG rename to crates/test_providers/maths_provider/bin/CACHEDIR.TAG diff --git a/zflow_runtime/test_providers/maths_provider/bin/maths_provider.wasm b/crates/test_providers/maths_provider/bin/maths_provider.wasm similarity index 100% rename from zflow_runtime/test_providers/maths_provider/bin/maths_provider.wasm rename to crates/test_providers/maths_provider/bin/maths_provider.wasm diff --git a/zflow_runtime/test_providers/maths_provider/bin/CACHEDIR.TAG b/crates/test_providers/maths_provider/bin/wasm32-wasi/CACHEDIR.TAG similarity index 100% rename from zflow_runtime/test_providers/maths_provider/bin/CACHEDIR.TAG rename to crates/test_providers/maths_provider/bin/wasm32-wasi/CACHEDIR.TAG diff --git a/zflow_runtime/test_providers/maths_provider/build b/crates/test_providers/maths_provider/build similarity index 100% rename from zflow_runtime/test_providers/maths_provider/build rename to crates/test_providers/maths_provider/build diff --git a/zflow_runtime/test_providers/maths_provider/src/lib.rs b/crates/test_providers/maths_provider/lib.rs similarity index 100% rename from zflow_runtime/test_providers/maths_provider/src/lib.rs rename to crates/test_providers/maths_provider/lib.rs diff --git a/crates/test_providers/maths_provider/math.js b/crates/test_providers/maths_provider/math.js new file mode 100644 index 0000000..f8e87a1 --- /dev/null +++ b/crates/test_providers/maths_provider/math.js @@ -0,0 +1,78 @@ +const add = async (context,input) => { + context.sendDone({ result: input.a + input.b }) +} + +const sub = async (context,input) => { + context.sendDone({ result: input.a - input.b }) +} + + +export const providerId = () => "@test/deno_provider"; + +export const getLogo = () => ""; + +export const getPlatform = () => "System"; + +export const getPackages = () => [ + { + "package_id": "math", + "components": [ + { + "name": "math/add", + "inports": { + "a": { + "trigerring": true, + "control": true + }, + "b": { + "trigerring": true, + "control": true + } + }, + "outports": { + "result": {} + }, + "description": "Addition of two numbers", + "ordered": true + }, + { + "name": "math/sub", + "inports": { + "input": { + "trigerring": true, + "control": true + } + }, + "outports": { + "result": {} + }, + "description": "Substraction of two numbers", + "ordered": true + } + ] + } +]; + + +export const runComponent = (context, payload) => { + const componentName = payload.component.name; + // fmt.printf("%s", JSON.stringify(payload)); + fetch("https://deno.com").then(async (response)=>{ + console.log(response.status); + console.log(response.statusText); + const jsonData = await response.json(); + console.log(jsonData) + }); + + switch (componentName) { + case "math/add": { + add(context, payload.input); + break; + } + case "math/sub": { + sub(context, payload.input); + break; + } + default: throw "Unknown process" + } +} \ No newline at end of file diff --git a/zflow_runtime/test_providers/maths_provider/math.ts b/crates/test_providers/maths_provider/math.ts similarity index 81% rename from zflow_runtime/test_providers/maths_provider/math.ts rename to crates/test_providers/maths_provider/math.ts index 7dc6ca0..fec7d36 100644 --- a/zflow_runtime/test_providers/maths_provider/math.ts +++ b/crates/test_providers/maths_provider/math.ts @@ -2,7 +2,7 @@ declare global { interface Context { sendDone: (data: any) => void; send: (data: any) => void; - sendBuffer: (port:string, data:Uint8Array)=>void; + sendBuffer: (port: string, data: Uint8Array) => void; } } @@ -11,11 +11,11 @@ type Input = { b: number; } -const add = async (context:Context,input: Input) => { +const add = async (context: Context, input: Input) => { context.sendDone({ result: input.a + input.b }) } -const sub = async (context:Context,input: Input) => { +const sub = async (context: Context, input: Input) => { context.sendDone({ result: input.a - input.b }) } @@ -67,16 +67,16 @@ export const getPackages = () => [ ]; -export const runComponent = (context:Context, payload: any) => { +export const runComponent = async (context: Context, payload: any) => { const componentName = payload.component.name; - + await fetch('http://github.com'); switch (componentName) { case "math/add": { - add(context, payload.input as Input); + await add(context, payload.input as Input); break; } case "math/sub": { - sub(context, payload.input as Input); + await sub(context, payload.input as Input); break; } default: throw "Unknown process" diff --git a/zflow_runtime/test_providers/maths_provider/zflow.provider.json b/crates/test_providers/maths_provider/zflow.provider.json similarity index 100% rename from zflow_runtime/test_providers/maths_provider/zflow.provider.json rename to crates/test_providers/maths_provider/zflow.provider.json diff --git a/zflow_editor/Cargo.toml b/crates/zflow_editor/Cargo.toml similarity index 100% rename from zflow_editor/Cargo.toml rename to crates/zflow_editor/Cargo.toml diff --git a/zflow_editor/src/editor.rs b/crates/zflow_editor/src/editor.rs similarity index 100% rename from zflow_editor/src/editor.rs rename to crates/zflow_editor/src/editor.rs diff --git a/zflow_editor/src/lib.rs b/crates/zflow_editor/src/lib.rs similarity index 100% rename from zflow_editor/src/lib.rs rename to crates/zflow_editor/src/lib.rs diff --git a/zflow_editor/src/main.rs b/crates/zflow_editor/src/main.rs similarity index 100% rename from zflow_editor/src/main.rs rename to crates/zflow_editor/src/main.rs diff --git a/zflow_graph/Cargo.toml b/crates/zflow_graph/Cargo.toml similarity index 55% rename from zflow_graph/Cargo.toml rename to crates/zflow_graph/Cargo.toml index 40a4663..740c5a5 100644 --- a/zflow_graph/Cargo.toml +++ b/crates/zflow_graph/Cargo.toml @@ -10,16 +10,18 @@ keywords = ["fbp", "DAG", "flowbased", "low-code", "no-code", "visual-programmin # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -log = "0.4" -foreach = "0.3.0" -nuid = "0.3.2" -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } -beady = "0.6.0" -assert-json-diff = "2.0.2" -# may = "0.3.31" -cast_trait_object = "0.1.3" -async-trait = "0.1.60" +log= {workspace = true} +foreach= {workspace = true} +nuid= {workspace = true} +serde_json= {workspace = true} +serde= {workspace = true} +beady= {workspace = true} +assert-json-diff= {workspace = true} +cast_trait_object= {workspace = true} +async-trait= {workspace = true} +fbp = {path = '../fbp'} +anyhow={workspace=true} [lib] +path = "lib.rs" doctest = false \ No newline at end of file diff --git a/zflow_graph/README.md b/crates/zflow_graph/README.md similarity index 100% rename from zflow_graph/README.md rename to crates/zflow_graph/README.md diff --git a/zflow_graph/src/graph.rs b/crates/zflow_graph/graph.rs similarity index 99% rename from zflow_graph/src/graph.rs rename to crates/zflow_graph/graph.rs index 3179104..10abb92 100644 --- a/zflow_graph/src/graph.rs +++ b/crates/zflow_graph/graph.rs @@ -7,6 +7,7 @@ use crate::internal; use crate::internal::event_manager::{EventActor, EventListener}; use foreach::ForEach; use internal::event_manager::EventManager; +use serde::Deserialize; use serde_json::{json, Map, Value}; use std::collections::HashMap; use std::fs::File; @@ -1452,6 +1453,13 @@ impl Graph { Ok(graph) } + /// Convert FBP notation to ZFlow Graph + pub fn from_fbp(source: &str, name:&str, case_sensitive: bool)-> Result { + let graph_json = fbp::FBP::new(source, name, case_sensitive).parse()?; + let graph_json = GraphJson::deserialize(json!(graph_json))?; + return Ok(Self::from_json(graph_json, None)) + } + /// Save Graph to file pub fn save(&self, path: &str) -> Result<(), io::Error> { let mut file_res = File::create(path); diff --git a/zflow_graph/src/graph_test.rs b/crates/zflow_graph/graph_test.rs similarity index 100% rename from zflow_graph/src/graph_test.rs rename to crates/zflow_graph/graph_test.rs diff --git a/zflow_graph/src/internal/event_manager.rs b/crates/zflow_graph/internal/event_manager.rs similarity index 100% rename from zflow_graph/src/internal/event_manager.rs rename to crates/zflow_graph/internal/event_manager.rs diff --git a/zflow_graph/src/internal/mod.rs b/crates/zflow_graph/internal/mod.rs similarity index 100% rename from zflow_graph/src/internal/mod.rs rename to crates/zflow_graph/internal/mod.rs diff --git a/zflow_graph/src/internal/utils.rs b/crates/zflow_graph/internal/utils.rs similarity index 100% rename from zflow_graph/src/internal/utils.rs rename to crates/zflow_graph/internal/utils.rs diff --git a/zflow_graph/src/journal.rs b/crates/zflow_graph/journal.rs similarity index 100% rename from zflow_graph/src/journal.rs rename to crates/zflow_graph/journal.rs diff --git a/zflow_graph/src/lib.rs b/crates/zflow_graph/lib.rs similarity index 100% rename from zflow_graph/src/lib.rs rename to crates/zflow_graph/lib.rs diff --git a/zflow_graph/src/types.rs b/crates/zflow_graph/types.rs similarity index 100% rename from zflow_graph/src/types.rs rename to crates/zflow_graph/types.rs diff --git a/zflow_js_runner/.DS_Store b/crates/zflow_js_runner/.DS_Store similarity index 100% rename from zflow_js_runner/.DS_Store rename to crates/zflow_js_runner/.DS_Store diff --git a/zflow_js_runner/.cargo/config.toml b/crates/zflow_js_runner/.cargo/config.toml similarity index 100% rename from zflow_js_runner/.cargo/config.toml rename to crates/zflow_js_runner/.cargo/config.toml diff --git a/zflow_js_runner/Cargo.toml b/crates/zflow_js_runner/Cargo.toml similarity index 64% rename from zflow_js_runner/Cargo.toml rename to crates/zflow_js_runner/Cargo.toml index a5ab309..00831c1 100644 --- a/zflow_js_runner/Cargo.toml +++ b/crates/zflow_js_runner/Cargo.toml @@ -10,16 +10,13 @@ keywords = ["fbp", "flowbased", "low-code", "no-code", "visual-programming", "ru [lib] crate-type = ["cdylib"] bench = false +path = "src/lib.rs" [dependencies] -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } +serde_json.workspace = true +serde.workspace = true rquickjs = {version = "0.1.7", features = ["full"]} -zflow_runtime = {path = "../zflow_runtime", default-features = false} -anyhow = "1.0.71" +zflow_runtime = {version="0.1.0", path = "../zflow_runtime", default-features = false} +anyhow.workspace = true -[dev-dependencies] -libloading = "0.8.1" -# [install] -# root = "./bin" \ No newline at end of file diff --git a/zflow_js_runner/bin/.rustc_info.json b/crates/zflow_js_runner/bin/.rustc_info.json similarity index 100% rename from zflow_js_runner/bin/.rustc_info.json rename to crates/zflow_js_runner/bin/.rustc_info.json diff --git a/zflow_runtime/test_providers/maths_provider/bin/wasm32-wasi/CACHEDIR.TAG b/crates/zflow_js_runner/bin/CACHEDIR.TAG similarity index 100% rename from zflow_runtime/test_providers/maths_provider/bin/wasm32-wasi/CACHEDIR.TAG rename to crates/zflow_js_runner/bin/CACHEDIR.TAG diff --git a/zflow_js_runner/bin/libzflow_js_runner.dylib b/crates/zflow_js_runner/bin/libzflow_js_runner.dylib similarity index 100% rename from zflow_js_runner/bin/libzflow_js_runner.dylib rename to crates/zflow_js_runner/bin/libzflow_js_runner.dylib diff --git a/zflow_js_runner/build b/crates/zflow_js_runner/build similarity index 100% rename from zflow_js_runner/build rename to crates/zflow_js_runner/build diff --git a/zflow_js_runner/src/lib.rs b/crates/zflow_js_runner/src/lib.rs similarity index 100% rename from zflow_js_runner/src/lib.rs rename to crates/zflow_js_runner/src/lib.rs diff --git a/zflow_js_runner/src/std_lib/mod.rs b/crates/zflow_js_runner/src/std_lib/mod.rs similarity index 100% rename from zflow_js_runner/src/std_lib/mod.rs rename to crates/zflow_js_runner/src/std_lib/mod.rs diff --git a/zflow_js_runner/src/utils.rs b/crates/zflow_js_runner/src/utils.rs similarity index 100% rename from zflow_js_runner/src/utils.rs rename to crates/zflow_js_runner/src/utils.rs diff --git a/zflow_plugin/Cargo.toml b/crates/zflow_plugin/Cargo.toml similarity index 72% rename from zflow_plugin/Cargo.toml rename to crates/zflow_plugin/Cargo.toml index 731d776..2fae7e5 100644 --- a/zflow_plugin/Cargo.toml +++ b/crates/zflow_plugin/Cargo.toml @@ -8,6 +8,9 @@ description = "ZFlow FBP Graph Runtime" keywords = ["fbp", "flowbased", "low-code", "no-code", "visual-programming"] [dependencies] -extism-pdk = "1.0.0" -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } \ No newline at end of file +extism-pdk.workspace = true +serde_json.workspace = true +serde.workspace = true + +[lib] +path = "src/lib.rs" \ No newline at end of file diff --git a/zflow_plugin/src/lib.rs b/crates/zflow_plugin/src/lib.rs similarity index 100% rename from zflow_plugin/src/lib.rs rename to crates/zflow_plugin/src/lib.rs diff --git a/zflow_runtime/.cargo/config.toml b/crates/zflow_runtime/.cargo/config.toml similarity index 100% rename from zflow_runtime/.cargo/config.toml rename to crates/zflow_runtime/.cargo/config.toml diff --git a/crates/zflow_runtime/Cargo.toml b/crates/zflow_runtime/Cargo.toml new file mode 100644 index 0000000..63dd014 --- /dev/null +++ b/crates/zflow_runtime/Cargo.toml @@ -0,0 +1,140 @@ +[package] +name = "zflow_runtime" +version = "0.1.0" +edition = "2021" +authors = ["Damilare Akinlaja "] +license = "MIT" +description = "ZFlow FBP Graph Runtime" +keywords = ["fbp", "flowbased", "low-code", "no-code", "visual-programming"] + +[lib] +doctest = false +path = "lib.rs" + +[features] +default = ["host_only"] +host_only = [ + "dep:libloading", + "deno_embed", + "wasm_native_runtime" +] + +wasm_native_runtime = [ + "dep:extism", + "dep:extism-pdk", +] +deno_embed = [ + "dep:deno_ast", + "dep:deno_core", + "dep:deno_runtime", + "dep:denokv_proto", + "dep:denokv_remote", + "dep:denokv_sqlite", + "dep:deno_broadcast_channel", + "dep:deno_cache", + "dep:deno_canvas", + "dep:deno_console", + "dep:deno_cron", + "dep:deno_crypto", + "dep:deno_fetch", + "dep:deno_ffi", + "dep:deno_fs", + "dep:deno_http", + "dep:deno_io", + "dep:deno_kv", + "dep:deno_napi", + "dep:deno_tls", + "dep:deno_url", + "dep:deno_web", + "dep:deno_webgpu", + "dep:deno_webidl", + "dep:deno_websocket", + "dep:deno_webstorage", + "dep:deno_net", + "dep:deno_node" +] + +[dependencies] +zflow_graph = {path = "../zflow_graph"} +zflow_plugin = {path = "../zflow_plugin"} +serde_json= {workspace = true} +serde= {workspace = true} +foreach= {workspace = true} +fp_rust= {workspace = true} +rayon= {workspace = true} +futures= {workspace = true} +futures-lite= {workspace = true} +assert-json-diff= {workspace = true} +regex= {workspace = true} +log= {workspace = true} +array_tool= {workspace = true} +dyn-clone= {workspace = true} +anyhow = {workspace = true} +bincode= {workspace = true} +once_cell = "1.18.0" +libloading = {version = "0.8.1", optional = true} +jwalk = "0.8.1" +extism-pdk= {workspace = true, optional = true} +extism = {version="1.0.0", optional = true } +simple_logger= {workspace = true} +base64= {workspace = true} +reqwest= {workspace = true} +is-url= {workspace = true} +tokio= {workspace = true} +chrono= {workspace = true} +tempdir= {workspace = true} + +deno_ast = { version = "0.34.1", features = ["transpiling"], optional=true } +deno_core = { version = "0.270.0", features = ["lazy_eval_snapshot"], optional=true } + +deno_lockfile = "0.19.0" +deno_media_type = { version = "0.1.1", features = ["module_specifier"], optional=true } +deno_permissions = { version = "0.2.0", optional=true } +deno_runtime = { version = "0.150.0", optional=true } + +denokv_proto = {version = "0.5.0", optional=true} +denokv_remote = {version = "0.5.0", optional=true} +# denokv_sqlite brings in bundled sqlite if we don't disable the default features +denokv_sqlite = { default-features = false, version = "0.5.0", optional=true } + +# exts +deno_broadcast_channel = { version = "0.136.0", optional=true } +deno_cache = { version = "0.74.0", optional=true } +deno_canvas = { version = "0.11.0", optional=true } +deno_console = { version = "0.142.0", optional=true } +deno_cron = { version = "0.22.0", optional=true } +deno_crypto = { version = "0.156.0", optional=true } +deno_fetch = { version = "0.166.0", optional=true } +deno_ffi = { version = "0.129.0", optional=true } +deno_fs = { version = "0.52.0", optional=true } +deno_http = { version = "0.139.0", optional=true } +deno_io = { version = "0.52.0", optional=true } +deno_kv = { version = "0.50.0", optional=true } +deno_napi = { version = "0.72.0", optional=true } +deno_net = { version = "0.134.0", optional=true } +deno_node = { version = "0.79.0", optional=true } +deno_tls = { version = "0.129.0", optional=true } +deno_url = { version = "0.142.0", optional=true } +deno_web = { version = "0.173.0", optional=true } +deno_webgpu = { version = "0.109.0", optional=true} +deno_webidl = { version = "0.142.0", optional=true } +deno_websocket = { version = "0.147.0", optional=true } +deno_webstorage = { version = "0.137.0", optional=true } + + +[dev-dependencies] +beady = "0.6.0" + + + +[build-dependencies] +deno_runtime = { version = "0.150.0", optional=true } +# deno_runtime = { version="0.144.0", features = ["include_js_files_for_snapshotting", "only_snapshotted_js_sources"] } +# deno_core = { version="0.256.0", features = ["include_js_files_for_snapshotting"] } +# serde = { version = "1.0", features = ["derive"] } +# serde_json = "1.0" +# glibc_version = "0.1.2" + + + + diff --git a/zflow_runtime/README.md b/crates/zflow_runtime/README.md similarity index 100% rename from zflow_runtime/README.md rename to crates/zflow_runtime/README.md diff --git a/crates/zflow_runtime/build.rs b/crates/zflow_runtime/build.rs new file mode 100644 index 0000000..70592c5 --- /dev/null +++ b/crates/zflow_runtime/build.rs @@ -0,0 +1,9 @@ +use std::{env, path::PathBuf}; + +use deno_runtime::ops::bootstrap::SnapshotOptions; + +fn main(){ + let o = PathBuf::from(env::var_os("OUT_DIR").unwrap()); + let runtime_snapshot_path = o.join("DENO_RUNTIME_SNAPSHOT.bin"); + deno_runtime::snapshot::create_runtime_snapshot(runtime_snapshot_path, SnapshotOptions::default()); +} \ No newline at end of file diff --git a/zflow_runtime/src/component.rs b/crates/zflow_runtime/component.rs similarity index 100% rename from zflow_runtime/src/component.rs rename to crates/zflow_runtime/component.rs diff --git a/zflow_runtime/src/component_test.rs b/crates/zflow_runtime/component_test.rs similarity index 100% rename from zflow_runtime/src/component_test.rs rename to crates/zflow_runtime/component_test.rs diff --git a/zflow_runtime/src/deno/mod.rs b/crates/zflow_runtime/deno/mod.rs similarity index 62% rename from zflow_runtime/src/deno/mod.rs rename to crates/zflow_runtime/deno/mod.rs index 7edb68c..4208d68 100644 --- a/zflow_runtime/src/deno/mod.rs +++ b/crates/zflow_runtime/deno/mod.rs @@ -1,51 +1,181 @@ + +pub mod transpiler; +// pub mod runtime; +pub mod snapshot; + + + use std::path::PathBuf; use std::rc::Rc; +use std::sync::Arc; + -use _ops::RustToV8; use deno_ast::MediaType; use deno_ast::ParseParams; use deno_ast::SourceTextInfo; +use deno_broadcast_channel::InMemoryBroadcastChannel; +use deno_cache::CreateCache; +use deno_cache::SqliteBackedCache; +use deno_core::error::AnyError; use deno_core::futures::FutureExt; -use deno_core::*; + +use deno_cron::local::LocalCronHandler; +use deno_http::DefaultHttpPropertyExtractor; +use deno_kv::dynamic::MultiBackendDbHandler; +use deno_runtime::deno_core::*; +use deno_runtime::ops; +use deno_runtime::permissions::PermissionsContainer; +use deno_runtime::BootstrapOptions; use futures::TryFutureExt; -use serde::Deserialize; -use serde::Serialize; +use tempdir::TempDir; use v8::Handle; use v8::HandleScope; -use v8::MapFnTo; use zflow_plugin::ComponentSource; -use zflow_plugin::ComponentWithInput; use zflow_plugin::Platform; use crate::deno; +use crate::deno::transpiler::maybe_transpile_source; use crate::ip::IPType; use crate::process::ProcessError; use crate::process::ProcessResult; use crate::provider::ProviderRunner; use crate::runner::RunFunc; use crate::runner::DENO_RUNNER_ID; +use deno_runtime::deno_core::_ops::RustToV8; + +pub fn create_deno_runtime(module:ModuleSpecifier) -> Result{ + deno_runtime::deno_core::extension!(deno_permissions_worker, + options = { + permissions: PermissionsContainer, + enable_testing_features: bool, + }, + state = |state, options| { + state.put::(options.permissions); + state.put(ops::TestingFeaturesEnabled(options.enable_testing_features)); + }, + ); + + let create_cache_fn = + || SqliteBackedCache::new(TempDir::new("zflow_deno").unwrap().into_path()); + let cache = CreateCache(Arc::new(create_cache_fn)); + + let bootstrap: BootstrapOptions = Default::default(); + + let stdio = deno_runtime::deno_io::Stdio::default(); + + let fs = Arc::new(deno_fs::RealFs); + + let create_web_worker_cb = Arc::new(|_| unimplemented!("web workers are not supported")); + + let exit_code = deno_runtime::worker::ExitCode::default(); + + let extensions = vec![ + // Web APIs + deno_webidl::deno_webidl::init_ops(), + deno_console::deno_console::init_ops(), + deno_url::deno_url::init_ops(), + deno_web::deno_web::init_ops::( + Arc::new(deno_web::BlobStore::default()), + bootstrap.location.clone(), + ), + deno_webgpu::deno_webgpu::init_ops(), + deno_canvas::deno_canvas::init_ops(), + deno_fetch::deno_fetch::init_ops::(deno_fetch::Options { + user_agent: bootstrap.user_agent.clone(), + // root_cert_store_provider: None, + // unsafely_ignore_certificate_errors: None, + file_fetch_handler: Rc::new(deno_fetch::FsFetchHandler), + ..Default::default() + }), + deno_cache::deno_cache::init_ops::(Some(cache)), + deno_websocket::deno_websocket::init_ops::( + bootstrap.user_agent.clone(), + None, + None, + ), + deno_webstorage::deno_webstorage::init_ops(Default::default()), + deno_crypto::deno_crypto::init_ops(None), + deno_broadcast_channel::deno_broadcast_channel::init_ops(InMemoryBroadcastChannel::default()), + deno_ffi::deno_ffi::init_ops::(), + deno_net::deno_net::init_ops::(None, None), + deno_tls::deno_tls::init_ops(), + deno_kv::deno_kv::init_ops(MultiBackendDbHandler::remote_or_sqlite::< + PermissionsContainer, + >( + Default::default(), + None, + deno_kv::remote::HttpOptions { + user_agent: bootstrap.user_agent.clone(), + root_cert_store_provider: None, + unsafely_ignore_certificate_errors: None, + client_cert_chain_and_key: None, + proxy: None, + }, + )), + deno_cron::deno_cron::init_ops(LocalCronHandler::new()), + deno_napi::deno_napi::init_ops::(), + deno_http::deno_http::init_ops::(), + deno_io::deno_io::init_ops(Some(stdio)), + deno_fs::deno_fs::init_ops::(fs.clone()), + deno_node::deno_node::init_ops::(None, fs.clone()), + // Ops from deno runtime + ops::worker_host::deno_worker_host::init_ops( + create_web_worker_cb.clone(), + Default::default(), + ), + ops::fs_events::deno_fs_events::init_ops(), + ops::os::deno_os::init_ops(exit_code.clone()), + ops::permissions::deno_permissions::init_ops(), + ops::process::deno_process::init_ops(), + ops::signal::deno_signal::init_ops(), + ops::tty::deno_tty::init_ops(), + ops::http::deno_http_runtime::init_ops(), + ops::bootstrap::deno_bootstrap::init_ops(Some(Default::default())), + deno_permissions_worker::init_ops(PermissionsContainer::allow_all(), true), + deno_runtime::runtime::init_ops(), + deno_runtime::ops::runtime::deno_runtime::init_ops(module), + ops::web_worker::deno_web_worker::init_ops(), + ]; + + let zflow_deno_runtime = deno_runtime::deno_core::JsRuntime::new(deno_runtime::deno_core::RuntimeOptions{ + module_loader: Some(Rc::new(DenoModuleLoader)), + extensions, + extension_transpiler: Some(Rc::new(|specifier, source| { + maybe_transpile_source(specifier, source) + })), + is_main: false, + startup_snapshot: Some(deno::snapshot::DENO_SNAPSHOT), + ..Default::default() + }); + + Ok(zflow_deno_runtime) +} + pub struct DenoModuleLoader; -impl deno_core::ModuleLoader for DenoModuleLoader { + +impl deno_runtime::deno_core::ModuleLoader for DenoModuleLoader { + fn resolve( &self, specifier: &str, referrer: &str, - _kind: deno_core::ResolutionKind, - ) -> Result { - deno_core::resolve_import(specifier, referrer).map_err(|e| e.into()) + _kind: deno_runtime::deno_core::ResolutionKind, + ) -> Result { + deno_runtime::deno_core::resolve_import(specifier, referrer).map_err(|e| e.into()) } fn load( &self, - module_specifier: &deno_core::ModuleSpecifier, - _maybe_referrer: Option<&deno_core::ModuleSpecifier>, + module_specifier: &deno_runtime::deno_core::ModuleSpecifier, + _maybe_referrer: Option<&deno_runtime::deno_core::ModuleSpecifier>, _is_dyn_import: bool, - _requested_module_type: deno_core::RequestedModuleType, - ) -> std::pin::Pin> { + _requested_module_type: deno_runtime::deno_core::RequestedModuleType, + ) -> deno_runtime::deno_core::ModuleLoadResponse { let module_specifier = module_specifier.clone(); - async move { + + let module = async move { let scheme = module_specifier.scheme(); let is_remote = scheme == "http" || scheme == "https"; let path = if is_remote { @@ -55,21 +185,26 @@ impl deno_core::ModuleLoader for DenoModuleLoader { }; // Determine what the MediaType is (this is done based on the file // extension) and whether transpiling is required. - let media_type = MediaType::from_path(&path); + let media_type = if path.starts_with("node:") { + MediaType::TypeScript + } else { + MediaType::from_path(&path) + }; + - let (module_type, should_transpile) = match MediaType::from_path(&path) { + let (module_type, should_transpile) = match deno_ast::MediaType::from_path(&path) { MediaType::JavaScript | MediaType::Mjs | MediaType::Cjs => { - (deno_core::ModuleType::JavaScript, false) + (deno_runtime::deno_core::ModuleType::JavaScript, true) } - MediaType::Jsx => (deno_core::ModuleType::JavaScript, true), + MediaType::Jsx => (deno_runtime::deno_core::ModuleType::JavaScript, true), MediaType::TypeScript | MediaType::Mts | MediaType::Cts | MediaType::Dts | MediaType::Dmts | MediaType::Dcts - | MediaType::Tsx => (deno_core::ModuleType::JavaScript, true), - MediaType::Json => (deno_core::ModuleType::Json, false), + | MediaType::Tsx => (deno_runtime::deno_core::ModuleType::JavaScript, true), + MediaType::Json => (deno_runtime::deno_core::ModuleType::Json, false), _ => panic!("Unknown extension {:?}", path.extension()), }; @@ -84,24 +219,26 @@ impl deno_core::ModuleLoader for DenoModuleLoader { .await .unwrap() }; + let code = if should_transpile { let parsed = deno_ast::parse_module(ParseParams { - specifier: module_specifier.to_string(), + specifier: module_specifier.clone(), text_info: SourceTextInfo::from_string(code), media_type, capture_tokens: false, scope_analysis: false, - maybe_syntax: None, + maybe_syntax:None, })?; + parsed.transpile(&Default::default())?.text } else { code }; // Load and return module. - let module = deno_core::ModuleSource::new( + let module = deno_runtime::deno_core::ModuleSource::new( module_type, - deno_core::ModuleSourceCode::Bytes(ModuleCodeBytes::Boxed( + deno_runtime::deno_core::ModuleSourceCode::Bytes(deno_runtime::deno_core::ModuleCodeBytes::Boxed( code.into_bytes().into_boxed_slice(), )), &module_specifier, @@ -109,7 +246,9 @@ impl deno_core::ModuleLoader for DenoModuleLoader { Ok(module) } - .boxed_local() + .boxed_local(); + + deno_runtime::deno_core::ModuleLoadResponse::Async(module) } } @@ -157,7 +296,7 @@ fn v8_func( pub fn get_sys_deno_runner( component: ComponentSource, process_name: &str, - module: ModuleSpecifier, + module: deno_runtime::deno_core::ModuleSpecifier, is_provider: bool, ) -> Result { let id = component.name.to_owned(); @@ -190,21 +329,21 @@ pub fn get_sys_deno_runner( let id = id.clone(); let process_name = process_name.clone(); - let mut runtime = deno_core::JsRuntime::new(deno_core::RuntimeOptions { - module_loader: Some(Rc::new(deno::DenoModuleLoader)), - ..Default::default() - }); + let mut runtime = create_deno_runtime(module.clone()).map_err(|err| ProcessError(err.to_string()))?; + + let current_thread = tokio::runtime::Builder::new_current_thread().enable_all().build().map_err(|err| ProcessError(err.to_string()))?; + let component = component.clone(); - let rt = tokio::runtime::Runtime::new().unwrap(); - rt.block_on(async move { + + current_thread.block_on(async move { let mod_id = runtime - .load_main_module(&module, None) + .load_main_es_module(&module) .map_err(|e| ProcessError(e.to_string())) .await?; let runner = runtime.mod_evaluate(mod_id); runtime - .run_event_loop(PollEventLoopOptions { + .run_event_loop(deno_runtime::deno_core::PollEventLoopOptions { wait_for_inspector: false, pump_v8_message_loop: false, }) @@ -248,7 +387,6 @@ pub fn get_sys_deno_runner( .unwrap() .to_rust_string_lossy(scope); let val: serde_json::Value = serde_json::from_str(&val).unwrap(); - _output.clone().send_done(&val) }), })); @@ -317,7 +455,7 @@ pub fn get_sys_deno_runner( let component_with_input = v8::Object::new(scope); - let mut mapped_inputs = v8::Object::new(scope); + let mapped_inputs = v8::Object::new(scope); inport_keys.for_each(|port| { let value = this.input().get(port); @@ -362,11 +500,28 @@ pub fn get_sys_deno_runner( let func_key = v8::String::new(scope, name).unwrap(); let func = module.get(scope, func_key.into()).unwrap(); let func = v8::Local::::try_from(func)?; + let rec = v8::undefined(scope).into(); - Ok(func.call(scope, rec, args).unwrap()) + let val = func.call(scope, rec, args).unwrap(); + if val.is_promise() { + let promise = v8::Local::::try_from(val)?; + + loop{ + match promise.state() { + v8::PromiseState::Pending => continue, + v8::PromiseState::Fulfilled => break, + v8::PromiseState::Rejected => break, + } + } + + return Ok(promise.result(scope)) + } + + Ok(val) } - + + let res = call_func(module_obj, scope, &process_name, &[zflow_obj.into(), call_input]) .map_err(|e| ProcessError(e.to_string()))?; @@ -374,7 +529,7 @@ pub fn get_sys_deno_runner( if let Some(v) = v8::json::stringify(scope, res) { let value: serde_json::Value = serde_json::from_str(&v.to_rust_string_lossy(scope)) .map_err(|e| ProcessError(e.to_string()))?; - runner.await.map_err(|e| ProcessError(e.to_string()))?; + return Ok(ProcessResult { resolved: true, data: value, diff --git a/crates/zflow_runtime/deno/snapshot.rs b/crates/zflow_runtime/deno/snapshot.rs new file mode 100644 index 0000000..81fbc3b --- /dev/null +++ b/crates/zflow_runtime/deno/snapshot.rs @@ -0,0 +1,2 @@ +pub static DENO_SNAPSHOT: &[u8] = include_bytes!(concat!(env!("OUT_DIR"), "/DENO_RUNTIME_SNAPSHOT.bin")); + diff --git a/crates/zflow_runtime/deno/transpiler.rs b/crates/zflow_runtime/deno/transpiler.rs new file mode 100644 index 0000000..df6bc2b --- /dev/null +++ b/crates/zflow_runtime/deno/transpiler.rs @@ -0,0 +1,48 @@ +use deno_ast::{MediaType, ParseParams, SourceTextInfo}; +use deno_core::error::AnyError; +use deno_core::{ ModuleCodeString, ModuleName, SourceMapData}; +use std::path::Path; + +pub fn maybe_transpile_source( + name: ModuleName, + source: ModuleCodeString, + ) -> Result<(ModuleCodeString, Option), AnyError> { + // Always transpile `node:` built-in modules, since they might be TypeScript. + let media_type = if name.starts_with("node:") { + MediaType::TypeScript + } else { + MediaType::from_path(Path::new(&name)) + }; + + match media_type { + MediaType::TypeScript => {} + MediaType::JavaScript => return Ok((source, None)), + MediaType::Mjs => return Ok((source, None)), + _ => panic!( + "Unsupported media type for snapshotting {media_type:?} for file {}", + name + ), + } + + let parsed = deno_ast::parse_module(ParseParams { + specifier: deno_core::url::Url::parse(&name).unwrap(), + text_info: SourceTextInfo::from_string(source.as_str().to_owned()), + media_type, + capture_tokens: false, + scope_analysis: false, + maybe_syntax: None, + })?; + let transpiled_source = parsed.transpile(&deno_ast::EmitOptions { + imports_not_used_as_values: deno_ast::ImportsNotUsedAsValues::Remove, + inline_source_map: false, + source_map: cfg!(debug_assertions), + ..Default::default() + })?; + + let maybe_source_map: Option = transpiled_source + .source_map + .map(|sm| sm.into_bytes().into()); + + Ok((transpiled_source.text.into(), maybe_source_map)) + } + \ No newline at end of file diff --git a/zflow_runtime/src/errors.rs b/crates/zflow_runtime/errors.rs similarity index 100% rename from zflow_runtime/src/errors.rs rename to crates/zflow_runtime/errors.rs diff --git a/zflow_runtime/src/extern_provider.rs b/crates/zflow_runtime/extern_provider.rs similarity index 91% rename from zflow_runtime/src/extern_provider.rs rename to crates/zflow_runtime/extern_provider.rs index 6672d72..dd3d4e0 100644 --- a/zflow_runtime/src/extern_provider.rs +++ b/crates/zflow_runtime/extern_provider.rs @@ -1,11 +1,14 @@ use std::path::PathBuf; -use std::{collections::HashMap, rc::Rc}; +use std::collections::HashMap; -use deno_core::PollEventLoopOptions; -use v8::HandleScope; +use deno_core::{serde_v8, JsRuntime}; +use deno_core::v8::{self, HandleScope}; +use tempdir::TempDir; +// use deno_runtime::*; +// use v8::HandleScope; use zflow_plugin::{ComponentSource, Package, Platform, Runtime}; -use crate::deno::DenoModuleLoader; +use crate::deno::create_deno_runtime; use crate::provider::{self, ProviderComponent}; use ::extism::*; @@ -68,7 +71,7 @@ impl Debug for ExternProvider { .field("packages", &self.packages) // .field("_components", &self._components) .field("_wasm_manifest", &self._wasm_manifest) - .field("_deno_module_specifier", &self._deno_module_specifier) + // .field("_deno_module_specifier", &self._deno_module_specifier) .finish() } } @@ -235,32 +238,20 @@ impl ExternProvider { ))?, }; - // if module.is_none(){ - // match source.clone() { - // ExternProviderSource::Data { data } => { - // let code = deno_core::ModuleCodeBytes::Static(data.as_slice()); - // }, - // _=> {} - // } - // } - - let mut runtime = deno_core::JsRuntime::new(deno_core::RuntimeOptions { - module_loader: Some(Rc::new(DenoModuleLoader)), - ..Default::default() - }); - - let mod_id = runtime.load_main_module(&module, None).await?; - let result = runtime.mod_evaluate(mod_id); - runtime - .run_event_loop(PollEventLoopOptions { + let mut zflow_deno_runtime = create_deno_runtime(module.clone())?; + let mod_id = zflow_deno_runtime.load_main_es_module(&module).await?; + let result = zflow_deno_runtime.mod_evaluate(mod_id); + zflow_deno_runtime + .run_event_loop(deno_runtime::deno_core::PollEventLoopOptions { wait_for_inspector: false, pump_v8_message_loop: false, }) .await?; - let global = runtime.get_module_namespace(mod_id)?; - let scope = &mut runtime.handle_scope(); + let global = zflow_deno_runtime.get_module_namespace(mod_id)?; + let mut scope = zflow_deno_runtime.handle_scope(); + let scope: &mut v8::HandleScope = scope.as_mut(); let module_obj = global.open(scope); fn call_func<'a>( @@ -394,15 +385,16 @@ mod test { static INIT: Once = Once::new(); fn init() { - INIT.call_once(||{ + INIT.call_once(|| { SimpleLogger::default() - .with_colors(true) - .without_timestamps() - .with_level(log::LevelFilter::Off) - .with_module_level("zflow_runtime::extern_provider", log::LevelFilter::Debug) - .init() - .unwrap(); + .with_colors(true) + .without_timestamps() + .with_level(log::LevelFilter::Off) + .with_module_level("zflow_runtime::extern_provider", log::LevelFilter::Debug) + .init() + .unwrap(); }); + // deno_core::JsRuntime::init_platform(Some(v8::Platform::new(1, false).into())); } fn get_graph() -> Graph { @@ -458,6 +450,10 @@ mod test { #[test] fn test_wasm_provider() { init(); + let mut dir = current_dir().unwrap(); + + dir.push("../test_providers"); + let dir = dir.to_str().unwrap(); let mut n = get_network(); @@ -466,7 +462,7 @@ mod test { n.register_provider( ExternProvider::from_wasm( - "test_providers", + dir, ExternProviderSource::Local { path: "maths_provider/bin/maths_provider.wasm".to_owned(), }, @@ -482,7 +478,7 @@ mod test { } } - #[tokio::test(flavor = "multi_thread", worker_threads = 1)] + #[tokio::test(flavor = "multi_thread", worker_threads = 10)] async fn test_deno_provider() { init(); @@ -492,7 +488,7 @@ mod test { .unwrap(); let mut dir = current_dir().unwrap(); - dir.push("test_providers"); + dir.push("../test_providers"); let dir = dir.to_str().unwrap(); let provider = ExternProvider::from_deno( diff --git a/zflow_runtime/src/go/.DS_Store b/crates/zflow_runtime/go/.DS_Store similarity index 100% rename from zflow_runtime/src/go/.DS_Store rename to crates/zflow_runtime/go/.DS_Store diff --git a/zflow_runtime/src/go/go_std.rs b/crates/zflow_runtime/go/go_std.rs similarity index 100% rename from zflow_runtime/src/go/go_std.rs rename to crates/zflow_runtime/go/go_std.rs diff --git a/zflow_runtime/src/go/mod.rs b/crates/zflow_runtime/go/mod.rs similarity index 100% rename from zflow_runtime/src/go/mod.rs rename to crates/zflow_runtime/go/mod.rs diff --git a/zflow_runtime/src/go/std.zip b/crates/zflow_runtime/go/std.zip similarity index 100% rename from zflow_runtime/src/go/std.zip rename to crates/zflow_runtime/go/std.zip diff --git a/zflow_runtime/src/go/std/bytes/.DS_Store b/crates/zflow_runtime/go/std/bytes/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/bytes/.DS_Store rename to crates/zflow_runtime/go/std/bytes/.DS_Store diff --git a/zflow_runtime/src/go/std/bytes/buffer.go b/crates/zflow_runtime/go/std/bytes/buffer.go similarity index 100% rename from zflow_runtime/src/go/std/bytes/buffer.go rename to crates/zflow_runtime/go/std/bytes/buffer.go diff --git a/zflow_runtime/src/go/std/bytes/bytes.go b/crates/zflow_runtime/go/std/bytes/bytes.go similarity index 100% rename from zflow_runtime/src/go/std/bytes/bytes.go rename to crates/zflow_runtime/go/std/bytes/bytes.go diff --git a/zflow_runtime/src/go/std/bytes/reader.go b/crates/zflow_runtime/go/std/bytes/reader.go similarity index 100% rename from zflow_runtime/src/go/std/bytes/reader.go rename to crates/zflow_runtime/go/std/bytes/reader.go diff --git a/zflow_runtime/src/go/std/errors/errors.gos b/crates/zflow_runtime/go/std/errors/errors.gos similarity index 100% rename from zflow_runtime/src/go/std/errors/errors.gos rename to crates/zflow_runtime/go/std/errors/errors.gos diff --git a/zflow_runtime/src/go/std/fmt/.DS_Store b/crates/zflow_runtime/go/std/fmt/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/fmt/.DS_Store rename to crates/zflow_runtime/go/std/fmt/.DS_Store diff --git a/zflow_runtime/src/go/std/fmt/doc.go b/crates/zflow_runtime/go/std/fmt/doc.go similarity index 100% rename from zflow_runtime/src/go/std/fmt/doc.go rename to crates/zflow_runtime/go/std/fmt/doc.go diff --git a/zflow_runtime/src/go/std/fmt/format.go b/crates/zflow_runtime/go/std/fmt/format.go similarity index 100% rename from zflow_runtime/src/go/std/fmt/format.go rename to crates/zflow_runtime/go/std/fmt/format.go diff --git a/zflow_runtime/src/go/std/fmt/print.go b/crates/zflow_runtime/go/std/fmt/print.go similarity index 100% rename from zflow_runtime/src/go/std/fmt/print.go rename to crates/zflow_runtime/go/std/fmt/print.go diff --git a/zflow_runtime/src/go/std/fmt/scan.go b/crates/zflow_runtime/go/std/fmt/scan.go similarity index 100% rename from zflow_runtime/src/go/std/fmt/scan.go rename to crates/zflow_runtime/go/std/fmt/scan.go diff --git a/zflow_runtime/src/go/std/fmt2/fmt2.gos b/crates/zflow_runtime/go/std/fmt2/fmt2.gos similarity index 100% rename from zflow_runtime/src/go/std/fmt2/fmt2.gos rename to crates/zflow_runtime/go/std/fmt2/fmt2.gos diff --git a/zflow_runtime/src/go/std/internal/bytealg/bytealg.gos b/crates/zflow_runtime/go/std/internal/bytealg/bytealg.gos similarity index 100% rename from zflow_runtime/src/go/std/internal/bytealg/bytealg.gos rename to crates/zflow_runtime/go/std/internal/bytealg/bytealg.gos diff --git a/zflow_runtime/src/go/std/internal/fmtsort/sort.go b/crates/zflow_runtime/go/std/internal/fmtsort/sort.go similarity index 100% rename from zflow_runtime/src/go/std/internal/fmtsort/sort.go rename to crates/zflow_runtime/go/std/internal/fmtsort/sort.go diff --git a/zflow_runtime/src/go/std/io/.DS_Store b/crates/zflow_runtime/go/std/io/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/io/.DS_Store rename to crates/zflow_runtime/go/std/io/.DS_Store diff --git a/zflow_runtime/src/go/std/io/io.go b/crates/zflow_runtime/go/std/io/io.go similarity index 100% rename from zflow_runtime/src/go/std/io/io.go rename to crates/zflow_runtime/go/std/io/io.go diff --git a/zflow_runtime/src/go/std/io/ioutil/.DS_Store b/crates/zflow_runtime/go/std/io/ioutil/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/io/ioutil/.DS_Store rename to crates/zflow_runtime/go/std/io/ioutil/.DS_Store diff --git a/zflow_runtime/src/go/std/io/ioutil/ioutil.go b/crates/zflow_runtime/go/std/io/ioutil/ioutil.go similarity index 100% rename from zflow_runtime/src/go/std/io/ioutil/ioutil.go rename to crates/zflow_runtime/go/std/io/ioutil/ioutil.go diff --git a/zflow_runtime/src/go/std/io/ioutil/tempfile.go b/crates/zflow_runtime/go/std/io/ioutil/tempfile.go similarity index 100% rename from zflow_runtime/src/go/std/io/ioutil/tempfile.go rename to crates/zflow_runtime/go/std/io/ioutil/tempfile.go diff --git a/zflow_runtime/src/go/std/io/multi.go b/crates/zflow_runtime/go/std/io/multi.go similarity index 100% rename from zflow_runtime/src/go/std/io/multi.go rename to crates/zflow_runtime/go/std/io/multi.go diff --git a/zflow_runtime/src/go/std/io/pipe.go b/crates/zflow_runtime/go/std/io/pipe.go similarity index 100% rename from zflow_runtime/src/go/std/io/pipe.go rename to crates/zflow_runtime/go/std/io/pipe.go diff --git a/zflow_runtime/src/go/std/math/.DS_Store b/crates/zflow_runtime/go/std/math/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/math/.DS_Store rename to crates/zflow_runtime/go/std/math/.DS_Store diff --git a/zflow_runtime/src/go/std/math/abs.go b/crates/zflow_runtime/go/std/math/abs.go similarity index 100% rename from zflow_runtime/src/go/std/math/abs.go rename to crates/zflow_runtime/go/std/math/abs.go diff --git a/zflow_runtime/src/go/std/math/acosh.go b/crates/zflow_runtime/go/std/math/acosh.go similarity index 100% rename from zflow_runtime/src/go/std/math/acosh.go rename to crates/zflow_runtime/go/std/math/acosh.go diff --git a/zflow_runtime/src/go/std/math/asin.go b/crates/zflow_runtime/go/std/math/asin.go similarity index 100% rename from zflow_runtime/src/go/std/math/asin.go rename to crates/zflow_runtime/go/std/math/asin.go diff --git a/zflow_runtime/src/go/std/math/asinh.go b/crates/zflow_runtime/go/std/math/asinh.go similarity index 100% rename from zflow_runtime/src/go/std/math/asinh.go rename to crates/zflow_runtime/go/std/math/asinh.go diff --git a/zflow_runtime/src/go/std/math/atan.go b/crates/zflow_runtime/go/std/math/atan.go similarity index 100% rename from zflow_runtime/src/go/std/math/atan.go rename to crates/zflow_runtime/go/std/math/atan.go diff --git a/zflow_runtime/src/go/std/math/atan2.go b/crates/zflow_runtime/go/std/math/atan2.go similarity index 100% rename from zflow_runtime/src/go/std/math/atan2.go rename to crates/zflow_runtime/go/std/math/atan2.go diff --git a/zflow_runtime/src/go/std/math/atanh.go b/crates/zflow_runtime/go/std/math/atanh.go similarity index 100% rename from zflow_runtime/src/go/std/math/atanh.go rename to crates/zflow_runtime/go/std/math/atanh.go diff --git a/zflow_runtime/src/go/std/math/bits.go b/crates/zflow_runtime/go/std/math/bits.go similarity index 100% rename from zflow_runtime/src/go/std/math/bits.go rename to crates/zflow_runtime/go/std/math/bits.go diff --git a/zflow_runtime/src/go/std/math/bits/.DS_Store b/crates/zflow_runtime/go/std/math/bits/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/math/bits/.DS_Store rename to crates/zflow_runtime/go/std/math/bits/.DS_Store diff --git a/zflow_runtime/src/go/std/math/bits/bits.go b/crates/zflow_runtime/go/std/math/bits/bits.go similarity index 100% rename from zflow_runtime/src/go/std/math/bits/bits.go rename to crates/zflow_runtime/go/std/math/bits/bits.go diff --git a/zflow_runtime/src/go/std/math/bits/bits_tables.go b/crates/zflow_runtime/go/std/math/bits/bits_tables.go similarity index 100% rename from zflow_runtime/src/go/std/math/bits/bits_tables.go rename to crates/zflow_runtime/go/std/math/bits/bits_tables.go diff --git a/zflow_runtime/src/go/std/math/cbrt.go b/crates/zflow_runtime/go/std/math/cbrt.go similarity index 100% rename from zflow_runtime/src/go/std/math/cbrt.go rename to crates/zflow_runtime/go/std/math/cbrt.go diff --git a/zflow_runtime/src/go/std/math/cmplx/.DS_Store b/crates/zflow_runtime/go/std/math/cmplx/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/.DS_Store rename to crates/zflow_runtime/go/std/math/cmplx/.DS_Store diff --git a/zflow_runtime/src/go/std/math/cmplx/abs.go b/crates/zflow_runtime/go/std/math/cmplx/abs.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/abs.go rename to crates/zflow_runtime/go/std/math/cmplx/abs.go diff --git a/zflow_runtime/src/go/std/math/cmplx/asin.go b/crates/zflow_runtime/go/std/math/cmplx/asin.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/asin.go rename to crates/zflow_runtime/go/std/math/cmplx/asin.go diff --git a/zflow_runtime/src/go/std/math/cmplx/conj.go b/crates/zflow_runtime/go/std/math/cmplx/conj.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/conj.go rename to crates/zflow_runtime/go/std/math/cmplx/conj.go diff --git a/zflow_runtime/src/go/std/math/cmplx/exp.go b/crates/zflow_runtime/go/std/math/cmplx/exp.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/exp.go rename to crates/zflow_runtime/go/std/math/cmplx/exp.go diff --git a/zflow_runtime/src/go/std/math/cmplx/isinf.go b/crates/zflow_runtime/go/std/math/cmplx/isinf.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/isinf.go rename to crates/zflow_runtime/go/std/math/cmplx/isinf.go diff --git a/zflow_runtime/src/go/std/math/cmplx/isnan.go b/crates/zflow_runtime/go/std/math/cmplx/isnan.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/isnan.go rename to crates/zflow_runtime/go/std/math/cmplx/isnan.go diff --git a/zflow_runtime/src/go/std/math/cmplx/log.go b/crates/zflow_runtime/go/std/math/cmplx/log.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/log.go rename to crates/zflow_runtime/go/std/math/cmplx/log.go diff --git a/zflow_runtime/src/go/std/math/cmplx/phase.go b/crates/zflow_runtime/go/std/math/cmplx/phase.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/phase.go rename to crates/zflow_runtime/go/std/math/cmplx/phase.go diff --git a/zflow_runtime/src/go/std/math/cmplx/polar.go b/crates/zflow_runtime/go/std/math/cmplx/polar.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/polar.go rename to crates/zflow_runtime/go/std/math/cmplx/polar.go diff --git a/zflow_runtime/src/go/std/math/cmplx/pow.go b/crates/zflow_runtime/go/std/math/cmplx/pow.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/pow.go rename to crates/zflow_runtime/go/std/math/cmplx/pow.go diff --git a/zflow_runtime/src/go/std/math/cmplx/rect.go b/crates/zflow_runtime/go/std/math/cmplx/rect.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/rect.go rename to crates/zflow_runtime/go/std/math/cmplx/rect.go diff --git a/zflow_runtime/src/go/std/math/cmplx/sin.go b/crates/zflow_runtime/go/std/math/cmplx/sin.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/sin.go rename to crates/zflow_runtime/go/std/math/cmplx/sin.go diff --git a/zflow_runtime/src/go/std/math/cmplx/sqrt.go b/crates/zflow_runtime/go/std/math/cmplx/sqrt.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/sqrt.go rename to crates/zflow_runtime/go/std/math/cmplx/sqrt.go diff --git a/zflow_runtime/src/go/std/math/cmplx/tan.go b/crates/zflow_runtime/go/std/math/cmplx/tan.go similarity index 100% rename from zflow_runtime/src/go/std/math/cmplx/tan.go rename to crates/zflow_runtime/go/std/math/cmplx/tan.go diff --git a/zflow_runtime/src/go/std/math/const.go b/crates/zflow_runtime/go/std/math/const.go similarity index 100% rename from zflow_runtime/src/go/std/math/const.go rename to crates/zflow_runtime/go/std/math/const.go diff --git a/zflow_runtime/src/go/std/math/copysign.go b/crates/zflow_runtime/go/std/math/copysign.go similarity index 100% rename from zflow_runtime/src/go/std/math/copysign.go rename to crates/zflow_runtime/go/std/math/copysign.go diff --git a/zflow_runtime/src/go/std/math/dim.go b/crates/zflow_runtime/go/std/math/dim.go similarity index 100% rename from zflow_runtime/src/go/std/math/dim.go rename to crates/zflow_runtime/go/std/math/dim.go diff --git a/zflow_runtime/src/go/std/math/erf.go b/crates/zflow_runtime/go/std/math/erf.go similarity index 100% rename from zflow_runtime/src/go/std/math/erf.go rename to crates/zflow_runtime/go/std/math/erf.go diff --git a/zflow_runtime/src/go/std/math/erfinv.go b/crates/zflow_runtime/go/std/math/erfinv.go similarity index 100% rename from zflow_runtime/src/go/std/math/erfinv.go rename to crates/zflow_runtime/go/std/math/erfinv.go diff --git a/zflow_runtime/src/go/std/math/exp.go b/crates/zflow_runtime/go/std/math/exp.go similarity index 100% rename from zflow_runtime/src/go/std/math/exp.go rename to crates/zflow_runtime/go/std/math/exp.go diff --git a/zflow_runtime/src/go/std/math/expm1.go b/crates/zflow_runtime/go/std/math/expm1.go similarity index 100% rename from zflow_runtime/src/go/std/math/expm1.go rename to crates/zflow_runtime/go/std/math/expm1.go diff --git a/zflow_runtime/src/go/std/math/floor.go b/crates/zflow_runtime/go/std/math/floor.go similarity index 100% rename from zflow_runtime/src/go/std/math/floor.go rename to crates/zflow_runtime/go/std/math/floor.go diff --git a/zflow_runtime/src/go/std/math/frexp.go b/crates/zflow_runtime/go/std/math/frexp.go similarity index 100% rename from zflow_runtime/src/go/std/math/frexp.go rename to crates/zflow_runtime/go/std/math/frexp.go diff --git a/zflow_runtime/src/go/std/math/gamma.go b/crates/zflow_runtime/go/std/math/gamma.go similarity index 100% rename from zflow_runtime/src/go/std/math/gamma.go rename to crates/zflow_runtime/go/std/math/gamma.go diff --git a/zflow_runtime/src/go/std/math/hypot.go b/crates/zflow_runtime/go/std/math/hypot.go similarity index 100% rename from zflow_runtime/src/go/std/math/hypot.go rename to crates/zflow_runtime/go/std/math/hypot.go diff --git a/zflow_runtime/src/go/std/math/j0.go b/crates/zflow_runtime/go/std/math/j0.go similarity index 100% rename from zflow_runtime/src/go/std/math/j0.go rename to crates/zflow_runtime/go/std/math/j0.go diff --git a/zflow_runtime/src/go/std/math/j1.go b/crates/zflow_runtime/go/std/math/j1.go similarity index 100% rename from zflow_runtime/src/go/std/math/j1.go rename to crates/zflow_runtime/go/std/math/j1.go diff --git a/zflow_runtime/src/go/std/math/jn.go b/crates/zflow_runtime/go/std/math/jn.go similarity index 100% rename from zflow_runtime/src/go/std/math/jn.go rename to crates/zflow_runtime/go/std/math/jn.go diff --git a/zflow_runtime/src/go/std/math/ldexp.go b/crates/zflow_runtime/go/std/math/ldexp.go similarity index 100% rename from zflow_runtime/src/go/std/math/ldexp.go rename to crates/zflow_runtime/go/std/math/ldexp.go diff --git a/zflow_runtime/src/go/std/math/lgamma.go b/crates/zflow_runtime/go/std/math/lgamma.go similarity index 100% rename from zflow_runtime/src/go/std/math/lgamma.go rename to crates/zflow_runtime/go/std/math/lgamma.go diff --git a/zflow_runtime/src/go/std/math/log.go b/crates/zflow_runtime/go/std/math/log.go similarity index 100% rename from zflow_runtime/src/go/std/math/log.go rename to crates/zflow_runtime/go/std/math/log.go diff --git a/zflow_runtime/src/go/std/math/log10.go b/crates/zflow_runtime/go/std/math/log10.go similarity index 100% rename from zflow_runtime/src/go/std/math/log10.go rename to crates/zflow_runtime/go/std/math/log10.go diff --git a/zflow_runtime/src/go/std/math/log1p.go b/crates/zflow_runtime/go/std/math/log1p.go similarity index 100% rename from zflow_runtime/src/go/std/math/log1p.go rename to crates/zflow_runtime/go/std/math/log1p.go diff --git a/zflow_runtime/src/go/std/math/logb.go b/crates/zflow_runtime/go/std/math/logb.go similarity index 100% rename from zflow_runtime/src/go/std/math/logb.go rename to crates/zflow_runtime/go/std/math/logb.go diff --git a/zflow_runtime/src/go/std/math/mod.go b/crates/zflow_runtime/go/std/math/mod.go similarity index 100% rename from zflow_runtime/src/go/std/math/mod.go rename to crates/zflow_runtime/go/std/math/mod.go diff --git a/zflow_runtime/src/go/std/math/modf.go b/crates/zflow_runtime/go/std/math/modf.go similarity index 100% rename from zflow_runtime/src/go/std/math/modf.go rename to crates/zflow_runtime/go/std/math/modf.go diff --git a/zflow_runtime/src/go/std/math/nextafter.go b/crates/zflow_runtime/go/std/math/nextafter.go similarity index 100% rename from zflow_runtime/src/go/std/math/nextafter.go rename to crates/zflow_runtime/go/std/math/nextafter.go diff --git a/zflow_runtime/src/go/std/math/pow.go b/crates/zflow_runtime/go/std/math/pow.go similarity index 100% rename from zflow_runtime/src/go/std/math/pow.go rename to crates/zflow_runtime/go/std/math/pow.go diff --git a/zflow_runtime/src/go/std/math/pow10.go b/crates/zflow_runtime/go/std/math/pow10.go similarity index 100% rename from zflow_runtime/src/go/std/math/pow10.go rename to crates/zflow_runtime/go/std/math/pow10.go diff --git a/zflow_runtime/src/go/std/math/rand/.DS_Store b/crates/zflow_runtime/go/std/math/rand/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/math/rand/.DS_Store rename to crates/zflow_runtime/go/std/math/rand/.DS_Store diff --git a/zflow_runtime/src/go/std/math/rand/exp.go b/crates/zflow_runtime/go/std/math/rand/exp.go similarity index 100% rename from zflow_runtime/src/go/std/math/rand/exp.go rename to crates/zflow_runtime/go/std/math/rand/exp.go diff --git a/zflow_runtime/src/go/std/math/rand/normal.go b/crates/zflow_runtime/go/std/math/rand/normal.go similarity index 100% rename from zflow_runtime/src/go/std/math/rand/normal.go rename to crates/zflow_runtime/go/std/math/rand/normal.go diff --git a/zflow_runtime/src/go/std/math/rand/rand.go b/crates/zflow_runtime/go/std/math/rand/rand.go similarity index 100% rename from zflow_runtime/src/go/std/math/rand/rand.go rename to crates/zflow_runtime/go/std/math/rand/rand.go diff --git a/zflow_runtime/src/go/std/math/rand/rng.go b/crates/zflow_runtime/go/std/math/rand/rng.go similarity index 100% rename from zflow_runtime/src/go/std/math/rand/rng.go rename to crates/zflow_runtime/go/std/math/rand/rng.go diff --git a/zflow_runtime/src/go/std/math/rand/zipf.go b/crates/zflow_runtime/go/std/math/rand/zipf.go similarity index 100% rename from zflow_runtime/src/go/std/math/rand/zipf.go rename to crates/zflow_runtime/go/std/math/rand/zipf.go diff --git a/zflow_runtime/src/go/std/math/remainder.go b/crates/zflow_runtime/go/std/math/remainder.go similarity index 100% rename from zflow_runtime/src/go/std/math/remainder.go rename to crates/zflow_runtime/go/std/math/remainder.go diff --git a/zflow_runtime/src/go/std/math/signbit.go b/crates/zflow_runtime/go/std/math/signbit.go similarity index 100% rename from zflow_runtime/src/go/std/math/signbit.go rename to crates/zflow_runtime/go/std/math/signbit.go diff --git a/zflow_runtime/src/go/std/math/sin.go b/crates/zflow_runtime/go/std/math/sin.go similarity index 100% rename from zflow_runtime/src/go/std/math/sin.go rename to crates/zflow_runtime/go/std/math/sin.go diff --git a/zflow_runtime/src/go/std/math/sincos.go b/crates/zflow_runtime/go/std/math/sincos.go similarity index 100% rename from zflow_runtime/src/go/std/math/sincos.go rename to crates/zflow_runtime/go/std/math/sincos.go diff --git a/zflow_runtime/src/go/std/math/sinh.go b/crates/zflow_runtime/go/std/math/sinh.go similarity index 100% rename from zflow_runtime/src/go/std/math/sinh.go rename to crates/zflow_runtime/go/std/math/sinh.go diff --git a/zflow_runtime/src/go/std/math/sqrt.go b/crates/zflow_runtime/go/std/math/sqrt.go similarity index 100% rename from zflow_runtime/src/go/std/math/sqrt.go rename to crates/zflow_runtime/go/std/math/sqrt.go diff --git a/zflow_runtime/src/go/std/math/tan.go b/crates/zflow_runtime/go/std/math/tan.go similarity index 100% rename from zflow_runtime/src/go/std/math/tan.go rename to crates/zflow_runtime/go/std/math/tan.go diff --git a/zflow_runtime/src/go/std/math/tanh.go b/crates/zflow_runtime/go/std/math/tanh.go similarity index 100% rename from zflow_runtime/src/go/std/math/tanh.go rename to crates/zflow_runtime/go/std/math/tanh.go diff --git a/zflow_runtime/src/go/std/math/trig_reduce.go b/crates/zflow_runtime/go/std/math/trig_reduce.go similarity index 100% rename from zflow_runtime/src/go/std/math/trig_reduce.go rename to crates/zflow_runtime/go/std/math/trig_reduce.go diff --git a/zflow_runtime/src/go/std/math/unsafe.go b/crates/zflow_runtime/go/std/math/unsafe.go similarity index 100% rename from zflow_runtime/src/go/std/math/unsafe.go rename to crates/zflow_runtime/go/std/math/unsafe.go diff --git a/zflow_runtime/src/go/std/os/file.gos b/crates/zflow_runtime/go/std/os/file.gos similarity index 100% rename from zflow_runtime/src/go/std/os/file.gos rename to crates/zflow_runtime/go/std/os/file.gos diff --git a/zflow_runtime/src/go/std/path/.DS_Store b/crates/zflow_runtime/go/std/path/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/path/.DS_Store rename to crates/zflow_runtime/go/std/path/.DS_Store diff --git a/zflow_runtime/src/go/std/path/filepath/.DS_Store b/crates/zflow_runtime/go/std/path/filepath/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/path/filepath/.DS_Store rename to crates/zflow_runtime/go/std/path/filepath/.DS_Store diff --git a/zflow_runtime/src/go/std/path/filepath/match.go b/crates/zflow_runtime/go/std/path/filepath/match.go similarity index 100% rename from zflow_runtime/src/go/std/path/filepath/match.go rename to crates/zflow_runtime/go/std/path/filepath/match.go diff --git a/zflow_runtime/src/go/std/path/filepath/path.go b/crates/zflow_runtime/go/std/path/filepath/path.go similarity index 100% rename from zflow_runtime/src/go/std/path/filepath/path.go rename to crates/zflow_runtime/go/std/path/filepath/path.go diff --git a/zflow_runtime/src/go/std/path/match.go b/crates/zflow_runtime/go/std/path/match.go similarity index 100% rename from zflow_runtime/src/go/std/path/match.go rename to crates/zflow_runtime/go/std/path/match.go diff --git a/zflow_runtime/src/go/std/path/path.go b/crates/zflow_runtime/go/std/path/path.go similarity index 100% rename from zflow_runtime/src/go/std/path/path.go rename to crates/zflow_runtime/go/std/path/path.go diff --git a/zflow_runtime/src/go/std/reflect/.DS_Store b/crates/zflow_runtime/go/std/reflect/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/reflect/.DS_Store rename to crates/zflow_runtime/go/std/reflect/.DS_Store diff --git a/zflow_runtime/src/go/std/reflect/deepequal.go b/crates/zflow_runtime/go/std/reflect/deepequal.go similarity index 100% rename from zflow_runtime/src/go/std/reflect/deepequal.go rename to crates/zflow_runtime/go/std/reflect/deepequal.go diff --git a/zflow_runtime/src/go/std/reflect/makefunc.go b/crates/zflow_runtime/go/std/reflect/makefunc.go similarity index 100% rename from zflow_runtime/src/go/std/reflect/makefunc.go rename to crates/zflow_runtime/go/std/reflect/makefunc.go diff --git a/zflow_runtime/src/go/std/reflect/swapper.go b/crates/zflow_runtime/go/std/reflect/swapper.go similarity index 100% rename from zflow_runtime/src/go/std/reflect/swapper.go rename to crates/zflow_runtime/go/std/reflect/swapper.go diff --git a/zflow_runtime/src/go/std/reflect/type.go b/crates/zflow_runtime/go/std/reflect/type.go similarity index 100% rename from zflow_runtime/src/go/std/reflect/type.go rename to crates/zflow_runtime/go/std/reflect/type.go diff --git a/zflow_runtime/src/go/std/reflect/value.go b/crates/zflow_runtime/go/std/reflect/value.go similarity index 100% rename from zflow_runtime/src/go/std/reflect/value.go rename to crates/zflow_runtime/go/std/reflect/value.go diff --git a/zflow_runtime/src/go/std/runtime/runtime.gos b/crates/zflow_runtime/go/std/runtime/runtime.gos similarity index 100% rename from zflow_runtime/src/go/std/runtime/runtime.gos rename to crates/zflow_runtime/go/std/runtime/runtime.gos diff --git a/zflow_runtime/src/go/std/sort/search.go b/crates/zflow_runtime/go/std/sort/search.go similarity index 100% rename from zflow_runtime/src/go/std/sort/search.go rename to crates/zflow_runtime/go/std/sort/search.go diff --git a/zflow_runtime/src/go/std/sort/slice.go b/crates/zflow_runtime/go/std/sort/slice.go similarity index 100% rename from zflow_runtime/src/go/std/sort/slice.go rename to crates/zflow_runtime/go/std/sort/slice.go diff --git a/zflow_runtime/src/go/std/sort/sort.go b/crates/zflow_runtime/go/std/sort/sort.go similarity index 100% rename from zflow_runtime/src/go/std/sort/sort.go rename to crates/zflow_runtime/go/std/sort/sort.go diff --git a/zflow_runtime/src/go/std/sort/zfuncversion.go b/crates/zflow_runtime/go/std/sort/zfuncversion.go similarity index 100% rename from zflow_runtime/src/go/std/sort/zfuncversion.go rename to crates/zflow_runtime/go/std/sort/zfuncversion.go diff --git a/zflow_runtime/src/go/std/strconv/.DS_Store b/crates/zflow_runtime/go/std/strconv/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/strconv/.DS_Store rename to crates/zflow_runtime/go/std/strconv/.DS_Store diff --git a/zflow_runtime/src/go/std/strconv/atob.go b/crates/zflow_runtime/go/std/strconv/atob.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/atob.go rename to crates/zflow_runtime/go/std/strconv/atob.go diff --git a/zflow_runtime/src/go/std/strconv/atof.go b/crates/zflow_runtime/go/std/strconv/atof.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/atof.go rename to crates/zflow_runtime/go/std/strconv/atof.go diff --git a/zflow_runtime/src/go/std/strconv/atoi.go b/crates/zflow_runtime/go/std/strconv/atoi.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/atoi.go rename to crates/zflow_runtime/go/std/strconv/atoi.go diff --git a/zflow_runtime/src/go/std/strconv/decimal.go b/crates/zflow_runtime/go/std/strconv/decimal.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/decimal.go rename to crates/zflow_runtime/go/std/strconv/decimal.go diff --git a/zflow_runtime/src/go/std/strconv/doc.go b/crates/zflow_runtime/go/std/strconv/doc.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/doc.go rename to crates/zflow_runtime/go/std/strconv/doc.go diff --git a/zflow_runtime/src/go/std/strconv/extfloat.go b/crates/zflow_runtime/go/std/strconv/extfloat.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/extfloat.go rename to crates/zflow_runtime/go/std/strconv/extfloat.go diff --git a/zflow_runtime/src/go/std/strconv/ftoa.go b/crates/zflow_runtime/go/std/strconv/ftoa.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/ftoa.go rename to crates/zflow_runtime/go/std/strconv/ftoa.go diff --git a/zflow_runtime/src/go/std/strconv/isprint.go b/crates/zflow_runtime/go/std/strconv/isprint.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/isprint.go rename to crates/zflow_runtime/go/std/strconv/isprint.go diff --git a/zflow_runtime/src/go/std/strconv/itoa.go b/crates/zflow_runtime/go/std/strconv/itoa.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/itoa.go rename to crates/zflow_runtime/go/std/strconv/itoa.go diff --git a/zflow_runtime/src/go/std/strconv/quote.go b/crates/zflow_runtime/go/std/strconv/quote.go similarity index 100% rename from zflow_runtime/src/go/std/strconv/quote.go rename to crates/zflow_runtime/go/std/strconv/quote.go diff --git a/zflow_runtime/src/go/std/strings/.DS_Store b/crates/zflow_runtime/go/std/strings/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/strings/.DS_Store rename to crates/zflow_runtime/go/std/strings/.DS_Store diff --git a/zflow_runtime/src/go/std/strings/builder.go b/crates/zflow_runtime/go/std/strings/builder.go similarity index 100% rename from zflow_runtime/src/go/std/strings/builder.go rename to crates/zflow_runtime/go/std/strings/builder.go diff --git a/zflow_runtime/src/go/std/strings/compare.go b/crates/zflow_runtime/go/std/strings/compare.go similarity index 100% rename from zflow_runtime/src/go/std/strings/compare.go rename to crates/zflow_runtime/go/std/strings/compare.go diff --git a/zflow_runtime/src/go/std/strings/reader.go b/crates/zflow_runtime/go/std/strings/reader.go similarity index 100% rename from zflow_runtime/src/go/std/strings/reader.go rename to crates/zflow_runtime/go/std/strings/reader.go diff --git a/zflow_runtime/src/go/std/strings/replace.go b/crates/zflow_runtime/go/std/strings/replace.go similarity index 100% rename from zflow_runtime/src/go/std/strings/replace.go rename to crates/zflow_runtime/go/std/strings/replace.go diff --git a/zflow_runtime/src/go/std/strings/search.go b/crates/zflow_runtime/go/std/strings/search.go similarity index 100% rename from zflow_runtime/src/go/std/strings/search.go rename to crates/zflow_runtime/go/std/strings/search.go diff --git a/zflow_runtime/src/go/std/strings/strings.go b/crates/zflow_runtime/go/std/strings/strings.go similarity index 100% rename from zflow_runtime/src/go/std/strings/strings.go rename to crates/zflow_runtime/go/std/strings/strings.go diff --git a/zflow_runtime/src/go/std/sync/atomic/value.gos b/crates/zflow_runtime/go/std/sync/atomic/value.gos similarity index 100% rename from zflow_runtime/src/go/std/sync/atomic/value.gos rename to crates/zflow_runtime/go/std/sync/atomic/value.gos diff --git a/zflow_runtime/src/go/std/sync/map.gos b/crates/zflow_runtime/go/std/sync/map.gos similarity index 100% rename from zflow_runtime/src/go/std/sync/map.gos rename to crates/zflow_runtime/go/std/sync/map.gos diff --git a/zflow_runtime/src/go/std/sync/once.gos b/crates/zflow_runtime/go/std/sync/once.gos similarity index 100% rename from zflow_runtime/src/go/std/sync/once.gos rename to crates/zflow_runtime/go/std/sync/once.gos diff --git a/zflow_runtime/src/go/std/sync/pool.gos b/crates/zflow_runtime/go/std/sync/pool.gos similarity index 100% rename from zflow_runtime/src/go/std/sync/pool.gos rename to crates/zflow_runtime/go/std/sync/pool.gos diff --git a/zflow_runtime/src/go/std/sync/sync.gos b/crates/zflow_runtime/go/std/sync/sync.gos similarity index 100% rename from zflow_runtime/src/go/std/sync/sync.gos rename to crates/zflow_runtime/go/std/sync/sync.gos diff --git a/zflow_runtime/src/go/std/syscall/syscall.gos b/crates/zflow_runtime/go/std/syscall/syscall.gos similarity index 100% rename from zflow_runtime/src/go/std/syscall/syscall.gos rename to crates/zflow_runtime/go/std/syscall/syscall.gos diff --git a/zflow_runtime/src/go/std/time/.DS_Store b/crates/zflow_runtime/go/std/time/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/time/.DS_Store rename to crates/zflow_runtime/go/std/time/.DS_Store diff --git a/zflow_runtime/src/go/std/time/format.go b/crates/zflow_runtime/go/std/time/format.go similarity index 100% rename from zflow_runtime/src/go/std/time/format.go rename to crates/zflow_runtime/go/std/time/format.go diff --git a/zflow_runtime/src/go/std/time/sleep.go b/crates/zflow_runtime/go/std/time/sleep.go similarity index 100% rename from zflow_runtime/src/go/std/time/sleep.go rename to crates/zflow_runtime/go/std/time/sleep.go diff --git a/zflow_runtime/src/go/std/time/tick.go b/crates/zflow_runtime/go/std/time/tick.go similarity index 100% rename from zflow_runtime/src/go/std/time/tick.go rename to crates/zflow_runtime/go/std/time/tick.go diff --git a/zflow_runtime/src/go/std/time/time.go b/crates/zflow_runtime/go/std/time/time.go similarity index 100% rename from zflow_runtime/src/go/std/time/time.go rename to crates/zflow_runtime/go/std/time/time.go diff --git a/zflow_runtime/src/go/std/time/zoneinfo.go b/crates/zflow_runtime/go/std/time/zoneinfo.go similarity index 100% rename from zflow_runtime/src/go/std/time/zoneinfo.go rename to crates/zflow_runtime/go/std/time/zoneinfo.go diff --git a/zflow_runtime/src/go/std/unicode/.DS_Store b/crates/zflow_runtime/go/std/unicode/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/unicode/.DS_Store rename to crates/zflow_runtime/go/std/unicode/.DS_Store diff --git a/zflow_runtime/src/go/std/unicode/casetables.go b/crates/zflow_runtime/go/std/unicode/casetables.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/casetables.go rename to crates/zflow_runtime/go/std/unicode/casetables.go diff --git a/zflow_runtime/src/go/std/unicode/digit.go b/crates/zflow_runtime/go/std/unicode/digit.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/digit.go rename to crates/zflow_runtime/go/std/unicode/digit.go diff --git a/zflow_runtime/src/go/std/unicode/graphic.go b/crates/zflow_runtime/go/std/unicode/graphic.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/graphic.go rename to crates/zflow_runtime/go/std/unicode/graphic.go diff --git a/zflow_runtime/src/go/std/unicode/letter.go b/crates/zflow_runtime/go/std/unicode/letter.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/letter.go rename to crates/zflow_runtime/go/std/unicode/letter.go diff --git a/zflow_runtime/src/go/std/unicode/tables.go b/crates/zflow_runtime/go/std/unicode/tables.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/tables.go rename to crates/zflow_runtime/go/std/unicode/tables.go diff --git a/zflow_runtime/src/go/std/unicode/utf16/.DS_Store b/crates/zflow_runtime/go/std/unicode/utf16/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/unicode/utf16/.DS_Store rename to crates/zflow_runtime/go/std/unicode/utf16/.DS_Store diff --git a/zflow_runtime/src/go/std/unicode/utf16/utf16.go b/crates/zflow_runtime/go/std/unicode/utf16/utf16.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/utf16/utf16.go rename to crates/zflow_runtime/go/std/unicode/utf16/utf16.go diff --git a/zflow_runtime/src/go/std/unicode/utf8/.DS_Store b/crates/zflow_runtime/go/std/unicode/utf8/.DS_Store similarity index 100% rename from zflow_runtime/src/go/std/unicode/utf8/.DS_Store rename to crates/zflow_runtime/go/std/unicode/utf8/.DS_Store diff --git a/zflow_runtime/src/go/std/unicode/utf8/utf8.go b/crates/zflow_runtime/go/std/unicode/utf8/utf8.go similarity index 100% rename from zflow_runtime/src/go/std/unicode/utf8/utf8.go rename to crates/zflow_runtime/go/std/unicode/utf8/utf8.go diff --git a/zflow_runtime/src/go/std/zflow/process.gos b/crates/zflow_runtime/go/std/zflow/process.gos similarity index 100% rename from zflow_runtime/src/go/std/zflow/process.gos rename to crates/zflow_runtime/go/std/zflow/process.gos diff --git a/zflow_runtime/src/go/utils.rs b/crates/zflow_runtime/go/utils.rs similarity index 100% rename from zflow_runtime/src/go/utils.rs rename to crates/zflow_runtime/go/utils.rs diff --git a/zflow_runtime/src/ip.rs b/crates/zflow_runtime/ip.rs similarity index 100% rename from zflow_runtime/src/ip.rs rename to crates/zflow_runtime/ip.rs diff --git a/zflow_runtime/src/js/mod.rs b/crates/zflow_runtime/js/mod.rs similarity index 100% rename from zflow_runtime/src/js/mod.rs rename to crates/zflow_runtime/js/mod.rs diff --git a/zflow_runtime/src/lib.rs b/crates/zflow_runtime/lib.rs similarity index 100% rename from zflow_runtime/src/lib.rs rename to crates/zflow_runtime/lib.rs diff --git a/zflow_runtime/src/lua/mod.rs b/crates/zflow_runtime/lua/mod.rs similarity index 100% rename from zflow_runtime/src/lua/mod.rs rename to crates/zflow_runtime/lua/mod.rs diff --git a/zflow_runtime/src/network.rs b/crates/zflow_runtime/network.rs similarity index 100% rename from zflow_runtime/src/network.rs rename to crates/zflow_runtime/network.rs diff --git a/zflow_runtime/src/network_manager.rs b/crates/zflow_runtime/network_manager.rs similarity index 100% rename from zflow_runtime/src/network_manager.rs rename to crates/zflow_runtime/network_manager.rs diff --git a/zflow_runtime/src/network_test.rs b/crates/zflow_runtime/network_test.rs similarity index 100% rename from zflow_runtime/src/network_test.rs rename to crates/zflow_runtime/network_test.rs diff --git a/zflow_runtime/src/port.rs b/crates/zflow_runtime/port.rs similarity index 100% rename from zflow_runtime/src/port.rs rename to crates/zflow_runtime/port.rs diff --git a/zflow_runtime/src/port_test.rs b/crates/zflow_runtime/port_test.rs similarity index 100% rename from zflow_runtime/src/port_test.rs rename to crates/zflow_runtime/port_test.rs diff --git a/zflow_runtime/src/process.rs b/crates/zflow_runtime/process.rs similarity index 100% rename from zflow_runtime/src/process.rs rename to crates/zflow_runtime/process.rs diff --git a/zflow_runtime/src/provider.rs b/crates/zflow_runtime/provider.rs similarity index 100% rename from zflow_runtime/src/provider.rs rename to crates/zflow_runtime/provider.rs diff --git a/zflow_runtime/src/registry.rs b/crates/zflow_runtime/registry.rs similarity index 100% rename from zflow_runtime/src/registry.rs rename to crates/zflow_runtime/registry.rs diff --git a/zflow_runtime/src/runner.rs b/crates/zflow_runtime/runner.rs similarity index 100% rename from zflow_runtime/src/runner.rs rename to crates/zflow_runtime/runner.rs diff --git a/zflow_runtime/src/sockets.rs b/crates/zflow_runtime/sockets.rs similarity index 100% rename from zflow_runtime/src/sockets.rs rename to crates/zflow_runtime/sockets.rs diff --git a/zflow_runtime/src/wasm/mod.rs b/crates/zflow_runtime/wasm/mod.rs similarity index 100% rename from zflow_runtime/src/wasm/mod.rs rename to crates/zflow_runtime/wasm/mod.rs diff --git a/zflow_runtime/src/wren/mod.rs b/crates/zflow_runtime/wren/mod.rs similarity index 100% rename from zflow_runtime/src/wren/mod.rs rename to crates/zflow_runtime/wren/mod.rs diff --git a/zflow_server/Cargo.toml b/crates/zflow_server/Cargo.toml similarity index 100% rename from zflow_server/Cargo.toml rename to crates/zflow_server/Cargo.toml diff --git a/zflow_server/src/main.rs b/crates/zflow_server/src/main.rs similarity index 100% rename from zflow_server/src/main.rs rename to crates/zflow_server/src/main.rs diff --git a/fbp/src/lib.rs b/fbp/src/lib.rs deleted file mode 100644 index 00186c7..0000000 --- a/fbp/src/lib.rs +++ /dev/null @@ -1,455 +0,0 @@ -use regex::Regex; -use serde_json::{Map, Value}; - -pub struct FBP; - -pub type Spanned = Result<(Loc, Token, Loc), Error>; - -#[derive(Clone, Debug)] -struct NodeInfo { - pub name: String, - pub port: Option, -} - -#[derive(Clone, Debug)] -struct PortInfo { - pub name: String, - pub index: Option, -} - -#[derive(Clone, Debug)] -enum FBPToken { - Inport(NodeInfo, PortInfo), - Outport(NodeInfo, PortInfo), - Port(PortInfo), - LongSpace, - ShortSpace, - IIPChar(String), - Ap, - AnyChar(String), - Node(NodeInfo, Option>), - At, - Annotation(String, String), - Doc(String), - Index(usize), - BkOpen, - BkClose, - BrOpen, - BrClose, - Col, - Comma, - Dot, - Hash, - Eof, - NewLine, - Arrow, - Component(String, String), -} - -#[derive(Debug, PartialEq, Eq, Clone, Copy)] -enum Kind { - InPortOutPort, - Outport, - Inport, - LongSpace, - ShortSpace, - StartIIP, - CloseIIP, - IIPChar, - Ap, - AnyChar, - Node, - NodeName, - At, - AnnotationKey, - AnnotationValue, - Doc, - Index, - BkOpen, - BkClose, - BrOpen, - BrClose, - Col, - Comma, - Dot, - Hash, - Eof, - NewLine, - Arrow, - Component, - Name, - CompMeta, - CompName, - Port, - LeftRightPort, - PortIndex, -} - -#[derive(Clone, Debug)] -struct NPort<'input> { - pub name: &'input str, - pub index: Option, -} - -#[derive(Clone, Debug)] -struct NMiddlet<'input> { - pub inport: NPort<'input>, - pub component: NComponent<'input>, - pub outport: NPort<'input>, -} - -#[derive(Clone, Debug)] -struct NNode<'input> { - pub name: &'input str, - pub component: NComponent<'input>, -} - -#[derive(Clone, Debug)] -struct NComponent<'input> { - pub name: &'input str, - pub meta: Option>, -} - -#[derive(Clone, Debug)] -enum Nodes<'input> { - Port(NPort<'input>), - MiddLet(NMiddlet<'input>), - Inport(NPort<'input>, NNode<'input>), - Outport(NNode<'input>, NPort<'input>), - Connection(NPort<'input>, NPort<'input>, Option>>), - Component(NComponent<'input>), - Node(NNode<'input>), - OUTPORT(&'input str, NPort<'input>, &'input str), - INPORT(&'input str, NPort<'input>, &'input str), - Comment(&'input str), - Annotation(&'input str, &'input str), - IIP(&'input str), - Eof, -} - -use regex_lexer::{Error, LexerBuilder, Token}; -use std::{str::CharIndices, string}; - -struct FBPLexer; - -impl FBPLexer { - pub(crate) fn run(source: &'static str) -> Result, Error> { - let lexer = LexerBuilder::new() - .token(r"->", Kind::Arrow) - .token(r"\[", Kind::BkOpen) - .token(r"\]", Kind::BkClose) - .token(r"\(", Kind::BrOpen) - .token(r"\)", Kind::BrClose) - .token(r":", Kind::Col) - .token(r",", Kind::Comma) - .token(r"^'.*'", Kind::IIPChar) - .token(r"^#.+", Kind::Doc) - .token(r"^#\s+@.+", Kind::At) - .token(r"\.", Kind::Dot) - .token(r"\(([a-zA-Z/\-0-9_]*)?(:.+)?(\))?", Kind::Component) - .token(r"[a-zA-Z_][a-zA-Z0-9_\-]*", Kind::Name) - // .token(r"->\s+[a-zA-Z_][a-zA-Z.0-9_]*", Kind::RightPort) - .token(r"[0-9]+", Kind::PortIndex) - .ignore(r"\n+") - .token( - r"(INPORT|OUTPORT)=([a-zA-Z_][a-zA-Z0-9_\-]*)", - Kind::InPortOutPort, - ) - .token( - r"([a-zA-Z_][a-zA-Z.0-9_]*)(:)([a-zA-Z_][a-zA-Z.0-9_]*)", - Kind::LeftRightPort, - ) - .ignore(r"\s+") - .build() - .expect("expected to parse source"); - - let mut atoms = lexer.tokens(source).collect::>(); - - let mut tokens = Vec::new(); - - loop { - match atoms.clone().as_slice() { - [Token{kind: Kind::IIPChar, span, text:iip}, ..] =>{ - atoms.remove(0); - tokens.push(FBPToken::IIPChar(iip.to_string().replace("'", "").to_string())); - } - [Token { - kind: Kind::InPortOutPort, - span, - text, - }, ..] => { - let first_operands = text.split("=").collect::>(); - let operand = first_operands[0]; - let node = first_operands[1]; - - let mut node = NodeInfo { - name: node.to_string(), - port: None, - }; - atoms.remove(0); - match atoms.clone().as_slice() { - [Token { - kind: Kind::Dot, - span, - text: name, - }, ..] => { - atoms.remove(0); - - match atoms.clone().as_slice() { - [Token { - kind: Kind::LeftRightPort, - span, - text: name, - }, ..] => { - let operands = name.split(":").collect::>(); - let left_port = operands[0]; - let right_port = operands[1]; - node.port = Some(PortInfo { - name: left_port.to_string(), - index: None, - }); - atoms.remove(0); - - match operand { - "INPORT" => { - tokens.push(FBPToken::Inport( - node, - PortInfo { - name: right_port.to_string(), - index: None, - }, - )); - } - "OUTPORT" => { - tokens.push(FBPToken::Outport( - node, - PortInfo { - name: right_port.to_string(), - index: None, - }, - )); - } - _ => {} - } - } - [..] => {} - } - } - [..] => {} - } - } - [Token { - kind: Kind::Doc, - span, - text, - }, ..] => { - atoms.remove(0); - tokens.push(FBPToken::Doc(text.to_string())); - } - [Token { - kind: Kind::At, - span, - text, - }, ..] => { - let text = text.to_string(); - let text = text.replace("#", ""); - let annotations = text.trim().split(" ").collect::>(); - atoms.remove(0); - tokens.push(FBPToken::Annotation( - annotations[0].replace("@", "").to_string(), - annotations[1].to_string(), - )) - } - [Token { - kind: Kind::Name, - span, - text: name, - }, ..] => { - atoms.remove(0); - - match atoms.clone().as_slice() { - [Token { - kind: Kind::Component, - span: span2, - text: comp, - }, ..] => { - let mut node = NodeInfo { - name: name.to_string(), - port: None, - }; - atoms.remove(0); - let component = comp.replace("(", "").replace(")", ""); - let component = component.split(":").collect::>(); - let component_name = component[0].to_string(); - let mut meta = "".to_string(); - if component.len() > 1 { - meta = component[1].to_string(); - } - if comp.starts_with('(') && !comp.ends_with(')') { - if atoms[1].kind == Kind::BrClose { - atoms.remove(0); - } else { - return Err(Error::Syntax(format!( - "Opened bracket should be closed for component at {} <==", - comp - ))); - } - } - - if atoms.len() > 0 { - if atoms[0].kind == Kind::Name && atoms[1].kind == Kind::Arrow { - let port = atoms[0].text; - let mut port_info = PortInfo { - name: port.to_string(), - index: None, - }; - match atoms.clone().as_slice() { - [Token { - kind: Kind::PortIndex, - span, - text: index, - }, ..] => { - atoms.remove(0); - let port_index = index - .parse::() - .expect("expected port index to be an integer"); - port_info.index = Some(port_index); - node.port = Some(port_info.clone()); - } - [..] => { - node.port = Some(port_info.clone()); - } - } - } - } - - tokens.push(FBPToken::Node( - node, - Some(Box::new(FBPToken::Component( - component_name.to_string(), - meta, - ))), - )); - } - [Token { - kind: Kind::Name, - span, - text: port, - }, ..] => { - let mut node = NodeInfo { - name: name.to_string(), - port: None, - }; - atoms.remove(0); - let mut port_info = PortInfo { - name: port.to_string(), - index: None, - }; - match atoms.clone().as_slice() { - [Token { - kind: Kind::PortIndex, - span, - text: index, - }, ..] => { - atoms.remove(0); - let port_index = index - .parse::() - .expect("expected port index to be an integer"); - port_info.index = Some(port_index); - node.port = Some(port_info.clone()); - } - [..] => { - node.port = Some(port_info.clone()); - } - } - - tokens.push(FBPToken::Node(node, None)); - } - [..] => {} - } - } - [Token { - kind: Kind::Arrow, - span: _, - text: _, - }, Token { - kind: Kind::Name, - span, - text: port, - }, ..] => { - atoms.remove(0); - atoms.remove(0); - let mut port_info = PortInfo { - name: port.to_string().replace("-> ", ""), - index: None, - }; - - match atoms.clone().as_slice() { - [Token { - kind: Kind::PortIndex, - span, - text: index, - }, ..] => { - atoms.remove(0); - let port_index = index - .parse::() - .expect("expected port index to be an integer"); - port_info.index = Some(port_index); - } - [..] => { - - } - } - - tokens.push(FBPToken::Arrow); - tokens.push(FBPToken::Port(port_info)); - } - [..] => { - if !atoms.is_empty() { - atoms.remove(0); - } else { - break; - } - } - } - } - - Ok(tokens) - } -} - -impl FBP { - pub fn parse(source: &str, name: &str, case_sensitive: bool) {} -} - -#[cfg(test)] -mod tests { - use super::FBPLexer; - - #[test] - fn parse_fbp() { - let tokens = FBPLexer::run( - r" - # A comment line - # @runtime foo - INPORT=Read.OPTIONS:CONFIG - OUTPORT=Process.OUT:RESULT - Read(ReadFile) OUT -> IN Process(Output:key=value) - Forward OUT -> IN Log(core/console) - 'somefile.txt' -> SOURCE Read(ReadFile) OUT -> IN Split(SplitStr) - Split OUT -> IN Count(Counter) COUNT -> IN Display(Output) - Read() ERROR -> IN Display() - INPORT=Read.IN:FILENAME - 'somefile.txt' -> SOURCE Read(ReadFile:main) - Read() OUT -> IN Split(SplitStr:main) - Split() OUT -> IN Count(Counter:main) - Count() COUNT -> IN Display(Output:main) - Read() ERROR -> IN Display() - Read() OUT -> IN Split(SplitStr:foo=bar,baz=123) - ", - ) - .expect("Syntax error"); - - println!("{:?}", tokens); - } -} diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 0000000..87d8548 --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +components = ["rust-src", "rustfmt", "clippy"] \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs deleted file mode 100644 index dd5ff60..0000000 --- a/src/lib.rs +++ /dev/null @@ -1,16 +0,0 @@ -// Graph -pub use zflow_graph::graph::Graph; -pub use zflow_graph::journal::Journal; -pub use zflow_graph::types::*; - - -// Runtime -pub use zflow_runtime::component::*; -pub use zflow_runtime::network::*; -pub use zflow_runtime::port::*; -pub use zflow_runtime::process::*; -pub use zflow_runtime::provider::*; -pub use zflow_runtime::runner::*; -pub use zflow_runtime::sockets::*; -pub use zflow_runtime::ip::*; -pub use zflow_runtime::errors::async_transform; diff --git a/src/main.rs b/src/main.rs deleted file mode 100644 index f759c23..0000000 --- a/src/main.rs +++ /dev/null @@ -1,28 +0,0 @@ -use serde_json::json; -use zflow::{BaseNetwork, Graph, Network, NetworkOptions}; - -fn main() { - std::env::set_var("ZFLOW_QUICKJS_RUNNER_LIB","zflow_js_runner/bin/libzflow_js_runner.dylib"); - let mut base_dir = std::env::current_dir().unwrap(); - base_dir.push("zflow_runtime/test_components"); - let base_dir = base_dir.to_str().unwrap(); - - let mut graph = Graph::new("", false); - graph - .add_node("test/add", "add", None) - .add_initial(json!(48), "test/add", "a", None) - .add_initial(json!(2), "test/add", "b", None); - - let mut network = Network::create( - graph.clone(), - NetworkOptions { - subscribe_graph: false, - delay: true, - workspace_dir: base_dir.to_owned(), - ..Default::default() - }, - ); - - let nw = network.connect().unwrap(); - nw.start().unwrap(); -} diff --git a/zflow_runtime/Cargo.toml b/zflow_runtime/Cargo.toml deleted file mode 100644 index 4b4c79a..0000000 --- a/zflow_runtime/Cargo.toml +++ /dev/null @@ -1,55 +0,0 @@ -[package] -name = "zflow_runtime" -version = "0.1.0" -edition = "2021" -authors = ["Damilare Akinlaja "] -license = "MIT" -description = "ZFlow FBP Graph Runtime" -keywords = ["fbp", "flowbased", "low-code", "no-code", "visual-programming"] - -[features] -default = ["host_only"] -host_only = ["dep:extism", "dep:extism-pdk", "dep:deno_core", "dep:libloading", "dep:deno_ast", "dep:serde_v8", "dep:v8"] - -[dependencies] -zflow_graph = {path = "../zflow_graph"} -zflow_plugin = {path = "../zflow_plugin"} -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } -foreach = "0.3.0" -fp_rust = {version = "0.3.5", features = ["for_futures"]} -rayon = "1.7.0" -futures = {version = "0.3.25", features = ["thread-pool"] } -futures-lite = "1.12.0" -assert-json-diff = "2.0.2" -regex = "1.7.1" -log = "0.4" -array_tool = "1.0.3" -dyn-clone = "1.0.11" -anyhow = "1.0.71" -bincode = "1.3.3" -once_cell = "1.18.0" -libloading = {version = "0.8.1", optional = true} -jwalk = "0.8.1" -extism-pdk = {version="1.0.0", optional = true } -extism = {version="1.0.0", optional = true } -deno_core = {version="0.255.0", optional = true} -simple_logger = "4.3.3" -deno_ast = {version="1.0.1", features = ["transpiling"], optional = true } -v8 = { version = "0.83.1", default-features = false, optional = true } -serde_v8 = {version = "0.164.0", optional = true} -base64 = "0.21.7" -reqwest = "0.11.23" -is-url = "1.0.4" -tokio = {version="1", features=["full"]} - -[patch.crates-io] -hyper= {version="1.1.0", features=["full"]} - -[dev-dependencies] -beady = "0.6.0" - -[lib] -doctest = false - - diff --git a/zflow_runtime/src/.DS_Store b/zflow_runtime/src/.DS_Store deleted file mode 100644 index 865b204..0000000 Binary files a/zflow_runtime/src/.DS_Store and /dev/null differ