diff --git a/Cargo.lock b/Cargo.lock index cd6b2da..a8f23ab 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -26,6 +26,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + [[package]] name = "ahash" version = "0.8.11" @@ -33,7 +39,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom", "once_cell", "version_check", "zerocopy", @@ -65,9 +70,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" +checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" [[package]] name = "anyhow" @@ -86,13 +91,14 @@ dependencies = [ [[package]] name = "assert_cmd" -version = "2.0.14" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed72493ac66d5804837f480ab3766c72bdfab91a65e565fc54fa9e42db0073a8" +checksum = "dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d" dependencies = [ "anstyle", "bstr", "doc-comment", + "libc", "predicates", "predicates-core", "predicates-tree", @@ -101,9 +107,9 @@ dependencies = [ [[package]] name = "assert_fs" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cd762e110c8ed629b11b6cde59458cc1c71de78ebbcc30099fc8e0403a2a2ec" +checksum = "7efdb1fdb47602827a342857666feb372712cbc64b414172bd6b167a02927674" dependencies = [ "anstyle", "doc-comment", @@ -116,13 +122,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.80" +version = "0.1.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -139,16 +145,16 @@ checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" [[package]] name = "backtrace" -version = "0.3.72" +version = "0.3.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11" +checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" dependencies = [ "addr2line 0.22.0", "cc", "cfg-if", "libc", - "miniz_oxide", - "object 0.35.0", + "miniz_oxide 0.7.4", + "object 0.36.3", "rustc-demangle", ] @@ -175,9 +181,9 @@ dependencies = [ [[package]] name = "binstall-tar" -version = "0.4.39" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01db907e07c37309ea816c183ffe548daaa66ef640a291408f232d6ca4089dbb" +checksum = "e3620d72763b5d8df3384f3b2ec47dc5885441c2abbd94dd32197167d08b014a" dependencies = [ "filetime", "libc", @@ -186,15 +192,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "1.3.2" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "block-buffer" @@ -207,12 +207,12 @@ dependencies = [ [[package]] name = "bstr" -version = "1.9.1" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" dependencies = [ "memchr", - "regex-automata 0.4.6", + "regex-automata 0.4.7", "serde", ] @@ -224,9 +224,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" [[package]] name = "bytemuck" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" +checksum = "6fd4c6dcc3b0aea2f5c0b4b82c2b15fe39ddbc76041a310848f4706edf76bb31" [[package]] name = "byteorder" @@ -236,9 +236,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.6.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" +checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" [[package]] name = "cap-fs-ext" @@ -319,9 +319,9 @@ dependencies = [ [[package]] name = "castaway" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a17ed5635fc8536268e5d4de1e22e81ac34419e5f052d4d51f4e01dcc263fcc" +checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" dependencies = [ "rustversion", ] @@ -346,13 +346,13 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.98" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" +checksum = "72db2f7947ecee9b03b510377e8bb9077afa27176fdbff55c51027e976fdcc48" dependencies = [ "jobserver", "libc", - "once_cell", + "shlex", ] [[package]] @@ -363,9 +363,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "4.5.4" +version = "4.5.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" +checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" dependencies = [ "clap_builder", "clap_derive", @@ -373,9 +373,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.2" +version = "4.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" +checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" dependencies = [ "anstyle", "clap_lex", @@ -383,21 +383,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.4" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" +checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "clap_lex" -version = "0.7.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" +checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" [[package]] name = "clean-path" @@ -471,9 +471,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpp_demangle" @@ -486,9 +486,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "51e852e6dc9a5bed1fae92dd2375037bf2b768725bf3be87811edee3249d09ad" dependencies = [ "libc", ] @@ -648,9 +648,9 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.9" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" dependencies = [ "darling_core", "darling_macro", @@ -658,27 +658,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.9" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "darling_macro" -version = "0.20.9" +version = "0.20.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -698,7 +698,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -787,13 +787,13 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -802,17 +802,11 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" -[[package]] -name = "dyn-clone" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" - [[package]] name = "either" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" [[package]] name = "encode_unicode" @@ -860,7 +854,7 @@ dependencies = [ "serde", "serde_json", "sha2", - "toml 0.8.14", + "toml 0.8.19", "tracing", "tracing-subscriber", "ureq", @@ -872,9 +866,9 @@ dependencies = [ [[package]] name = "extism-convert" -version = "1.3.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b96dda334f4d05d02504c7c6fd8b2a5fb9caf77aea956fd5a25e467d6df4e813" +checksum = "7327af9eaa0d7fe470f6bb0ee7a724045629bc4e6653afbdb066fb5aea4023f0" dependencies = [ "anyhow", "base64 0.22.1", @@ -888,22 +882,22 @@ dependencies = [ [[package]] name = "extism-convert-macros" -version = "1.3.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f542da6bda406e348633328bf13b71c15b08dc14a92b62fb724ac17f0081fe1" +checksum = "48fc993e1ec975698a3d6e8d88d6c81088397ba9b80c43c76fef8e8f7a631e72" dependencies = [ "manyhow", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "extism-manifest" -version = "1.3.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97da8e6e2803cc3ac8cde2529e027da013413555c421edfabddbf8a637f52548" +checksum = "23f529ac444f67ea8e6f81c36fa01c9864c30ca62cb356114fd0a071fb3bf3a4" dependencies = [ "base64 0.22.1", "serde", @@ -912,9 +906,9 @@ dependencies = [ [[package]] name = "extism-pdk" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c26a361aeddab8ebbb6157eeed9a8341358d6843c5f5a53677466caf5f0b5eaf" +checksum = "0334e38735348bd085e518bfc284395fcb5c198ba65ce36f9712bd25ff9e7be0" dependencies = [ "anyhow", "base64 0.22.1", @@ -927,13 +921,13 @@ dependencies = [ [[package]] name = "extism-pdk-derive" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a024b0f20295098d1d19ad443fad077c1d8c1d81d09a2c20f0618ebd201517e" +checksum = "cc4b8ea80a1b89cf8b053bdc5df2385125bcb9110d19be289c2030c61c7c6ad9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -961,24 +955,24 @@ dependencies = [ [[package]] name = "filetime" -version = "0.2.23" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" +checksum = "bf401df4a4e3872c4fe8151134cf483738e74b67fc934d6532c882b3d24a4550" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.4.1", - "windows-sys 0.52.0", + "libredox", + "windows-sys 0.59.0", ] [[package]] name = "flate2" -version = "1.0.30" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" +checksum = "9c0596c1eac1f9e04ed902702e9878208b336edc9d6fddc8a48387349bab3666" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -1092,7 +1086,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27d12c0aed7f1e24276a241aadc4cb8ea9f83000f34bc062b7cc2d51e3b0fabd" dependencies = [ - "bitflags 2.5.0", + "bitflags", "debugid", "fxhash", "serde", @@ -1101,9 +1095,9 @@ dependencies = [ [[package]] name = "garde" -version = "0.18.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fa8fb3ffe035745c6194540b2064b2fe275f32367fbb4eb026024b7921e2e5" +checksum = "0a3233677ea1554a48235d81bb59d2a41654969a8e29a1316c48105fd1701693" dependencies = [ "compact_str", "garde_derive", @@ -1115,14 +1109,14 @@ dependencies = [ [[package]] name = "garde_derive" -version = "0.18.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cf62650515830c41553b72bd49ec20fb120226f9277c7f2847f071cf998325b" +checksum = "8796f322e43105351a7ec35148807b32b5b6058a539656dafe4a5b456d5ca41f" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -1153,7 +1147,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" dependencies = [ "fallible-iterator", - "indexmap 2.2.6", + "indexmap 2.4.0", "stable_deref_trait", ] @@ -1178,8 +1172,8 @@ dependencies = [ "aho-corasick", "bstr", "log", - "regex-automata 0.4.6", - "regex-syntax 0.8.3", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", ] [[package]] @@ -1188,16 +1182,16 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bf760ebf69878d9fd8f110c89703d90ce35095324d1f1edcb595c63945ee757" dependencies = [ - "bitflags 2.5.0", + "bitflags", "ignore", "walkdir", ] [[package]] name = "h2" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" dependencies = [ "atomic-waker", "bytes", @@ -1205,7 +1199,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.2.6", + "indexmap 2.4.0", "slab", "tokio", "tokio-util", @@ -1267,9 +1261,9 @@ dependencies = [ [[package]] name = "http-body" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", "http", @@ -1277,12 +1271,12 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", - "futures-core", + "futures-util", "http", "http-body", "pin-project-lite", @@ -1290,9 +1284,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.8.0" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" +checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" [[package]] name = "human-sort" @@ -1302,9 +1296,9 @@ checksum = "140a09c9305e6d5e557e2ed7cbc68e05765a7d4213975b87cb04920689cc6219" [[package]] name = "hyper" -version = "1.3.1" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" dependencies = [ "bytes", "futures-channel", @@ -1322,15 +1316,16 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.26.0" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" dependencies = [ "futures-util", "http", "hyper", "hyper-util", "rustls", + "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls", @@ -1339,9 +1334,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.5" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b875924a60b96e5d7b9ae7b066540b1dd1cbd90d1828f54c92e02a283351c56" +checksum = "cde7055719c54e36e95e8719f95883f22072a48ede39db7fc17a4e1d5281e9b9" dependencies = [ "bytes", "futures-channel", @@ -1412,7 +1407,7 @@ dependencies = [ "globset", "log", "memchr", - "regex-automata 0.4.6", + "regex-automata 0.4.7", "same-file", "walkdir", "winapi-util", @@ -1430,9 +1425,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.6" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c" dependencies = [ "equivalent", "hashbrown 0.14.5", @@ -1534,33 +1529,36 @@ dependencies = [ [[package]] name = "jobserver" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.69" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" dependencies = [ "wasm-bindgen", ] [[package]] name = "json-strip-comments" -version = "1.0.2" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d129799327c8f80861e467c59b825ba24c277dba6ad0d71a141dc98f9e04ee" +checksum = "b271732a960335e715b6b2ae66a086f115c74eb97360e996d2bd809bfc063bba" +dependencies = [ + "memchr", +] [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "leb128" @@ -1570,9 +1568,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.155" +version = "0.2.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" [[package]] name = "libredox" @@ -1580,8 +1578,9 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.5.0", + "bitflags", "libc", + "redox_syscall", ] [[package]] @@ -1614,9 +1613,9 @@ checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" [[package]] name = "log" -version = "0.4.21" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "lzma-sys" @@ -1640,36 +1639,27 @@ dependencies = [ [[package]] name = "manyhow" -version = "0.11.1" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02bc2a348104913df6d14170bedef54faf224a0970ec7b1f8750748ab94fcd52" +checksum = "a5b8ea82a2287fe7b26aea89c0c02957886d7e97eabffc1f9d2031feaa6f82e6" dependencies = [ "manyhow-macros", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "manyhow-macros" -version = "0.11.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "532aa12d5846b38a524b3acd99fb74dc8a5f193b33e65dac142ef92bd60f9416" +checksum = "ae36e8d9b4095531e43de72ed424f0f4a98cba40f7e5a99366f9818769489272" dependencies = [ "proc-macro-utils", "proc-macro2", "quote", ] -[[package]] -name = "markdown" -version = "1.0.0-alpha.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21e27d6220ce21f80ce5c4201f23a37c6f1ad037c72c9d1ff215c2919605a5d6" -dependencies = [ - "unicode-id", -] - [[package]] name = "matchers" version = "0.1.0" @@ -1687,9 +1677,9 @@ checksum = "4facc753ae494aeb6e3c22f839b158aebd4f9270f55cd3c79906c45476c47ab4" [[package]] name = "memchr" -version = "2.7.2" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memfd" @@ -1729,7 +1719,7 @@ checksum = "dcf09caffaac8068c346b6df2a7fc27a177fd20b39421a39ce0a211bde679a6c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -1746,34 +1736,45 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", ] +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + [[package]] name = "mio" -version = "0.8.11" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ + "hermit-abi", "libc", "wasi", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "moon_common" -version = "0.0.6" +version = "0.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1c9ff70d0372bb578026bec4ce30e4c5c0d163f042a2565f75622c25dfa422a" +checksum = "854b7e24a2c03b9136d2d1297eabc0b8222b1ed9d1606b12900233987a9ca902" dependencies = [ + "dirs 5.0.1", "miette", - "once_cell", "regex", "relative-path", + "rustc-hash 2.0.0", "schematic", "serde", "starbase_styles", @@ -1782,16 +1783,17 @@ dependencies = [ [[package]] name = "moon_config" -version = "0.0.8" +version = "0.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef85d4049360e8ae3d25d556e51af07d459c8bb9359e2620e569045abf417a4c" +checksum = "219ffb426909e12d7c69a29d4522121cddb81ac1e4b4dfeaa6bf25afedbeabe7" dependencies = [ + "indexmap 2.4.0", "miette", "moon_common", "moon_target", "once_cell", "regex", - "rustc-hash", + "rustc-hash 2.0.0", "schematic", "semver", "serde", @@ -1810,6 +1812,7 @@ dependencies = [ "moon_pdk", "moon_pdk_test_utils", "starbase_sandbox", + "tokio", ] [[package]] @@ -1820,7 +1823,7 @@ dependencies = [ "moon_common", "moon_config", "moon_pdk", - "rustc-hash", + "rustc-hash 2.0.0", "serde", "starbase_utils", ] @@ -1836,10 +1839,12 @@ dependencies = [ "moon_pdk", "moon_pdk_test_utils", "moon_target", - "rustc-hash", + "rustc-hash 2.0.0", "serde", + "serde_json", "starbase_sandbox", "starbase_utils", + "tokio", ] [[package]] @@ -1853,17 +1858,18 @@ dependencies = [ "moon_pdk", "moon_pdk_test_utils", "moon_target", - "rustc-hash", + "rustc-hash 2.0.0", "serde", "starbase_sandbox", "starbase_utils", + "tokio", ] [[package]] name = "moon_pdk" -version = "0.0.7" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e68fc2663ae908b2893e4b6e0794ff948651785418537018c1a075fe81c00e" +checksum = "c4084824e8ea5ecd9c63b1ce8b76043ef130e6a70cd06da9a5b1d2391f1ab4a6" dependencies = [ "clap", "extism-pdk", @@ -1874,22 +1880,23 @@ dependencies = [ [[package]] name = "moon_pdk_api" -version = "0.0.7" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5745f767d797751b04945c53d6c42aad19826e13cb1bf08e720a9efd27ea8e6" +checksum = "e125867bc9b986ae5880071fa2c59c54b3567cb341670ffd71684945a01b8a88" dependencies = [ "moon_common", "moon_config", - "rustc-hash", + "rustc-hash 2.0.0", + "schematic", "serde", "warpgate_api", ] [[package]] name = "moon_pdk_test_utils" -version = "0.0.8" +version = "0.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de990a12704aaeaaf05a1ec9d93992d08cd5581eff3877d03fcfb341fb3cb14c" +checksum = "89d3760aff453d7b71a8db547596a774b53e74f59342c7640e97cced65fefab1" dependencies = [ "extism", "moon_pdk_api", @@ -1900,9 +1907,9 @@ dependencies = [ [[package]] name = "moon_target" -version = "0.0.5" +version = "0.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e34cc10919b536869066953cec1d3a9118447fdd22e81d954f0499a1fad51e" +checksum = "1c1a34384f1819ffdd66db597eadbc5eaf06ce1807fb40e4475545c10203fc07" dependencies = [ "miette", "moon_common", @@ -1911,6 +1918,7 @@ dependencies = [ "schematic", "serde", "thiserror", + "tracing", ] [[package]] @@ -1923,6 +1931,7 @@ dependencies = [ "moon_pdk_test_utils", "starbase_archive", "starbase_sandbox", + "tokio", ] [[package]] @@ -1960,16 +1969,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", -] - [[package]] name = "object" version = "0.32.2" @@ -1978,15 +1977,15 @@ checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ "crc32fast", "hashbrown 0.14.5", - "indexmap 2.2.6", + "indexmap 2.4.0", "memchr", ] [[package]] name = "object" -version = "0.35.0" +version = "0.36.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" +checksum = "27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9" dependencies = [ "memchr", ] @@ -1997,18 +1996,6 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" -[[package]] -name = "once_map" -version = "0.4.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa7085055bbe9c8edbd982048dbcf8181794d4a81cb04a11931673e63cc18dc6" -dependencies = [ - "ahash", - "hashbrown 0.14.5", - "parking_lot", - "stable_deref_trait", -] - [[package]] name = "openssl-probe" version = "0.1.5" @@ -2051,9 +2038,9 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.1", + "redox_syscall", "smallvec", - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -2085,7 +2072,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -2117,15 +2104,18 @@ dependencies = [ [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] [[package]] name = "predicates" -version = "3.1.0" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8" +checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" dependencies = [ "anstyle", "difflib", @@ -2137,15 +2127,15 @@ dependencies = [ [[package]] name = "predicates-core" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174" +checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" [[package]] name = "predicates-tree" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf" +checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" dependencies = [ "predicates-core", "termtree", @@ -2183,9 +2173,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -2210,7 +2200,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -2222,11 +2212,59 @@ dependencies = [ "cc", ] +[[package]] +name = "quinn" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.0.0", + "rustls", + "socket2", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd" +dependencies = [ + "bytes", + "rand", + "ring", + "rustc-hash 2.0.0", + "rustls", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "quinn-udp" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" +dependencies = [ + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.52.0", +] + [[package]] name = "quote" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" dependencies = [ "proc-macro2", ] @@ -2283,20 +2321,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.4.1" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "redox_syscall" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" -dependencies = [ - "bitflags 2.5.0", + "bitflags", ] [[package]] @@ -2318,21 +2347,21 @@ checksum = "ad156d539c879b7a24a363a2016d77961786e71f48f2e2fc8302a92abd2429a6" dependencies = [ "hashbrown 0.13.2", "log", - "rustc-hash", + "rustc-hash 1.1.0", "slice-group-by", "smallvec", ] [[package]] name = "regex" -version = "1.10.4" +version = "1.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.6", - "regex-syntax 0.8.3", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", ] [[package]] @@ -2346,13 +2375,13 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.3", + "regex-syntax 0.8.4", ] [[package]] @@ -2363,21 +2392,24 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "relative-path" version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" +dependencies = [ + "serde", +] [[package]] name = "reqwest" -version = "0.12.4" +version = "0.12.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10" +checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" dependencies = [ "base64 0.22.1", "bytes", @@ -2398,6 +2430,7 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "quinn", "rustls", "rustls-native-certs", "rustls-pemfile", @@ -2414,7 +2447,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "winreg", + "windows-registry", ] [[package]] @@ -2466,13 +2499,19 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hash" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" + [[package]] name = "rustix" version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ - "bitflags 2.5.0", + "bitflags", "errno", "itoa", "libc", @@ -2483,11 +2522,12 @@ dependencies = [ [[package]] name = "rustls" -version = "0.22.4" +version = "0.23.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" dependencies = [ "log", + "once_cell", "ring", "rustls-pki-types", "rustls-webpki", @@ -2497,9 +2537,9 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.7.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792" +checksum = "04182dffc9091a404e0fc069ea5cd60e5b866c3adf881eff99a32d048242dffa" dependencies = [ "openssl-probe", "rustls-pemfile", @@ -2510,9 +2550,9 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "2.1.2" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" dependencies = [ "base64 0.22.1", "rustls-pki-types", @@ -2520,15 +2560,15 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" +checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" [[package]] name = "rustls-webpki" -version = "0.102.4" +version = "0.102.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" +checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e" dependencies = [ "ring", "rustls-pki-types", @@ -2557,36 +2597,32 @@ dependencies = [ ] [[package]] -name = "schannel" -version = "0.1.23" +name = "scc" +version = "2.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "aeb7ac86243095b70a7920639507b71d51a63390d1ba26c4f60a552fbb914a37" dependencies = [ - "windows-sys 0.52.0", + "sdd", ] [[package]] -name = "schemars" -version = "0.8.21" +name = "schannel" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" dependencies = [ - "dyn-clone", - "serde", - "serde_json", + "windows-sys 0.52.0", ] [[package]] name = "schematic" -version = "0.16.4" +version = "0.17.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a97356d9a387d6963940ab05de6ac9dbee0c3c97090247954c3d4c2ddc5b8d" +checksum = "a27ae5ae2fb243bce05160f4983d7e258978843e5b9dbb21375c4311cec68300" dependencies = [ "garde", - "indexmap 2.2.6", - "markdown", + "indexmap 2.4.0", "miette", - "schemars", "schematic_macros", "schematic_types", "serde", @@ -2600,26 +2636,28 @@ dependencies = [ [[package]] name = "schematic_macros" -version = "0.16.4" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "906eff11b3963e20f5d33fb6dfc67d84351769917970c0d7ebf86e1782d869b5" +checksum = "b67892882d3a0f4e4186f4805a00bb23f978847438ed2efb1b615eb847c8c9cc" dependencies = [ "convert_case", "darling", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "schematic_types" -version = "0.8.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "788660c0972a2aab386e2b4b8bd304e0b21c21751e2722cead28d059597d3dad" +checksum = "653e1eacf66aa291a836204f0bbe8c2ae7adbc943b3e3ef8f4a2abfac77d12dd" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "semver", + "serde", "serde_json", + "serde_yaml", ] [[package]] @@ -2628,13 +2666,19 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +[[package]] +name = "sdd" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0495e4577c672de8254beb68d01a9b62d0e8a13c099edecdbedccce3223cd29f" + [[package]] name = "security-framework" -version = "2.11.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.5.0", + "bitflags", "core-foundation", "core-foundation-sys", "libc", @@ -2643,9 +2687,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.11.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" +checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf" dependencies = [ "core-foundation-sys", "libc", @@ -2662,32 +2706,33 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.203" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.203" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] name = "serde_json" -version = "1.0.117" +version = "1.0.127" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +checksum = "8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "itoa", + "memchr", "ryu", "serde", ] @@ -2704,9 +2749,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.6" +version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" +checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d" dependencies = [ "serde", ] @@ -2729,7 +2774,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "itoa", "ryu", "serde", @@ -2771,6 +2816,21 @@ dependencies = [ "dirs 4.0.0", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "signal-hook-registry" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +dependencies = [ + "libc", +] + [[package]] name = "simd-adler32" version = "0.3.7" @@ -2779,9 +2839,9 @@ checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" [[package]] name = "similar" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa42c91313f1d05da9b26f267f931cf178d4aba455b4c4622dd7355eb80c6640" +checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" [[package]] name = "slab" @@ -2834,34 +2894,33 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "starbase_archive" -version = "0.7.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54d347cbbd17a64ae97be309a1afaf86a3db4c46859ec1d111befe495ce5276e" +checksum = "e6b412349652a360e5141521688d97c739fbe025e49ada64354550a1193e1edb" dependencies = [ "binstall-tar", "flate2", "miette", - "rustc-hash", + "rustc-hash 2.0.0", "starbase_styles", "starbase_utils", "thiserror", "tracing", "xz2", "zip", - "zstd 0.13.1", + "zstd 0.13.2", ] [[package]] name = "starbase_sandbox" -version = "0.6.2" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dc8cc21fc2c389549297a2049074bf22a34aceb8ed8d31be6e1df42648abcb8" +checksum = "66fc04e95ede168033c1c1825d1cb266c706ca35e955b0e4b337fbf5cc5d5bbc" dependencies = [ "assert_cmd", "assert_fs", "clean-path", "insta", - "once_cell", "predicates", "pretty_assertions", "starbase_utils", @@ -2869,9 +2928,9 @@ dependencies = [ [[package]] name = "starbase_styles" -version = "0.4.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e483937f25c81ee4a5b70b608436025d23bffa656d62793ea5bbe6e9b94206d" +checksum = "44854a14e28e3b1d602d802576162380504df73efae50d4b901934d25579524b" dependencies = [ "dirs 5.0.1", "owo-colors", @@ -2881,23 +2940,21 @@ dependencies = [ [[package]] name = "starbase_utils" -version = "0.7.4" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "036e612de9948748656e525a0464c0866b2471616a65d8131db7ad6a200a0db0" +checksum = "3f21ce2ab027c71bdee539effc654b529f4016c62f65d9687dcaf08b856232fc" dependencies = [ "dirs 5.0.1", "json-strip-comments", "miette", - "once_cell", "regex", - "relative-path", "reqwest", "serde", "serde_json", "serde_yaml", "starbase_styles", "thiserror", - "toml 0.8.14", + "toml 0.8.19", "tracing", "url", "wax", @@ -2917,9 +2974,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "supports-color" @@ -2943,9 +3000,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525" dependencies = [ "proc-macro2", "quote", @@ -2954,26 +3011,29 @@ dependencies = [ [[package]] name = "sync_wrapper" -version = "0.1.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] [[package]] name = "system-configuration" -version = "0.5.1" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 1.3.2", + "bitflags", "core-foundation", "system-configuration-sys", ] [[package]] name = "system-configuration-sys" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" dependencies = [ "core-foundation-sys", "libc", @@ -2985,7 +3045,7 @@ version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0682e006dd35771e392a6623ac180999a9a854b1d4a6c12fb2e804941c2b1f58" dependencies = [ - "bitflags 2.5.0", + "bitflags", "cap-fs-ext", "cap-std", "fd-lock", @@ -2997,9 +3057,9 @@ dependencies = [ [[package]] name = "system_env" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c064041fa3a15e81801a7853412a5188d0796e7638b0a9578dd72a52d03304d" +checksum = "ce619f78837291fe16f40f216ba2493b66b34e3f8c37201f96cd5833ae95b44f" dependencies = [ "schematic", "serde", @@ -3010,20 +3070,21 @@ dependencies = [ [[package]] name = "target-lexicon" -version = "0.12.14" +version = "0.12.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tempfile" -version = "3.10.1" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" dependencies = [ "cfg-if", "fastrand", + "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -3034,22 +3095,22 @@ checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" [[package]] name = "thiserror" -version = "1.0.61" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.61" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -3064,9 +3125,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.6.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" dependencies = [ "tinyvec_macros", ] @@ -3079,25 +3140,39 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.38.0" +version = "1.39.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" +checksum = "9babc99b9923bfa4804bd74722ff02c0381021eafa4db9949217e3be8e84fff5" dependencies = [ "backtrace", "bytes", "libc", "mio", - "num_cpus", + "parking_lot", "pin-project-lite", + "signal-hook-registry", "socket2", - "windows-sys 0.48.0", + "tokio-macros", + "tracing", + "windows-sys 0.52.0", +] + +[[package]] +name = "tokio-macros" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.76", ] [[package]] name = "tokio-rustls" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ "rustls", "rustls-pki-types", @@ -3128,21 +3203,21 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.14" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.14", + "toml_edit 0.22.20", ] [[package]] name = "toml_datetime" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" dependencies = [ "serde", ] @@ -3153,22 +3228,22 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "toml_datetime", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.14" +version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38" +checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.11", + "winnow 0.6.18", ] [[package]] @@ -3188,15 +3263,15 @@ dependencies = [ [[package]] name = "tower-layer" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" [[package]] name = "tower-service" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" @@ -3218,7 +3293,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -3278,12 +3353,6 @@ version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" -[[package]] -name = "unicode-id" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1b6def86329695390197b82c1e244a54a131ceb66c996f2088a3876e2ae083f" - [[package]] name = "unicode-ident" version = "1.0.12" @@ -3313,9 +3382,9 @@ checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" [[package]] name = "unicode-xid" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +checksum = "229730647fbc343e3a80e463c1db7f78f3855d3f3739bee0dda773c9a037c90a" [[package]] name = "unsafe-libyaml" @@ -3331,26 +3400,26 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "2.9.7" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d11a831e3c0b56e438a28308e7c810799e3c118417f342d30ecec080105395cd" +checksum = "b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a" dependencies = [ "base64 0.22.1", "flate2", "log", "once_cell", "rustls", + "rustls-native-certs", "rustls-pki-types", - "rustls-webpki", "url", "webpki-roots", ] [[package]] name = "url" -version = "2.5.0" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", @@ -3359,9 +3428,9 @@ dependencies = [ [[package]] name = "uuid" -version = "1.8.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" dependencies = [ "getrandom", ] @@ -3374,21 +3443,22 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "version_check" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "version_spec" -version = "0.5.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cb928fc92912272002d6cc0c484d345867936785dec98ee16aae18429793550" +checksum = "1a8115efd6e9e71ef4f9b71169432fe99b042d435cd80e41314d3d869dab2d33" dependencies = [ "human-sort", "regex", "schematic", "semver", "serde", + "thiserror", ] [[package]] @@ -3421,16 +3491,16 @@ dependencies = [ [[package]] name = "warpgate" -version = "0.15.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2506eb3a4dbb45af4e2e409055483f904ed56f20943e43442ae1eb85b75df924" +checksum = "1fb9948cc8854946cd87aa6a1ee8e99fc4fde22c8f13c9facb0f229abd169185" dependencies = [ "extism", "miette", "once_cell", - "once_map", "regex", "reqwest", + "scc", "serde", "serde_json", "sha2", @@ -3439,18 +3509,20 @@ dependencies = [ "starbase_utils", "system_env", "thiserror", + "tokio", "tracing", + "ureq", "warpgate_api", ] [[package]] name = "warpgate_api" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06b88df2c2215ce9236dbf8da85a66d4c27810fec26e370ff416b5a13d1d182b" +checksum = "5d4fb1a48a03154125e71b7dd3b26887cbc78732d5598859795c6475fdabba6b" dependencies = [ "anyhow", - "rustc-hash", + "rustc-hash 2.0.0", "schematic", "serde", "serde_json", @@ -3460,9 +3532,9 @@ dependencies = [ [[package]] name = "warpgate_pdk" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed1de6614f14a2ca8fe4513b8a35c64dc8010be55206b2120cc1c1cf8802e5ce" +checksum = "2b23ffd7947eb4886375e93104849ec7aec35ff8c4aefeae2d31cab4d0ff46e5" dependencies = [ "extism-pdk", "serde", @@ -3505,7 +3577,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85972c7523e1ac970c576007ee02b69645c9b6a811276495d4c37908971ff9bb" dependencies = [ "anyhow", - "bitflags 2.5.0", + "bitflags", "cap-rand", "cap-std", "io-extras", @@ -3520,34 +3592,35 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" dependencies = [ "cfg-if", + "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.42" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" dependencies = [ "cfg-if", "js-sys", @@ -3557,9 +3630,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3567,22 +3640,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" [[package]] name = "wasm-encoder" @@ -3595,9 +3668,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.209.1" +version = "0.216.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4a05336882dae732ce6bd48b7e11fe597293cb72c13da4f35d7d5f8d53b2a7" +checksum = "04c23aebea22c8a75833ae08ed31ccc020835b12a41999e58c31464271b94a88" dependencies = [ "leb128", ] @@ -3608,7 +3681,7 @@ version = "0.118.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.4.0", "semver", ] @@ -3618,8 +3691,8 @@ version = "0.121.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab" dependencies = [ - "bitflags 2.5.0", - "indexmap 2.2.6", + "bitflags", + "indexmap 2.4.0", "semver", ] @@ -3646,7 +3719,7 @@ dependencies = [ "cfg-if", "encoding_rs", "fxprof-processed-profile", - "indexmap 2.2.6", + "indexmap 2.4.0", "libc", "log", "object 0.32.2", @@ -3710,7 +3783,7 @@ dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", "wasmtime-component-util", "wasmtime-wit-bindgen", "wit-parser", @@ -3772,7 +3845,7 @@ dependencies = [ "anyhow", "cranelift-entity", "gimli 0.28.1", - "indexmap 2.2.6", + "indexmap 2.4.0", "log", "object 0.32.2", "serde", @@ -3861,7 +3934,7 @@ dependencies = [ "cc", "cfg-if", "encoding_rs", - "indexmap 2.2.6", + "indexmap 2.4.0", "libc", "log", "mach", @@ -3902,7 +3975,7 @@ checksum = "e04682ce587aa8fa9311d3c95148381f08a1db274ad6bcd3553f7c97c8c2debb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -3913,7 +3986,7 @@ checksum = "5f06353b0c0cbe4f94fbf200e782729b5ae383dd7a112e25d516d535e8dd96ab" dependencies = [ "anyhow", "async-trait", - "bitflags 2.5.0", + "bitflags", "bytes", "cap-fs-ext", "cap-net-ext", @@ -3965,7 +4038,7 @@ checksum = "af5fbb1adaadad70271fe18a3f938741edb2b5178bf2fc164ab20544018626b8" dependencies = [ "anyhow", "heck 0.4.1", - "indexmap 2.2.6", + "indexmap 2.4.0", "wit-parser", ] @@ -3986,24 +4059,24 @@ dependencies = [ [[package]] name = "wast" -version = "209.0.1" +version = "216.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fffef2ff6147e4d12e972765fd75332c6a11c722571d4ab7a780d81ffc8f0a4" +checksum = "f7eb1f2eecd913fdde0dc6c3439d0f24530a98ac6db6cb3d14d92a5328554a08" dependencies = [ "bumpalo", "leb128", "memchr", "unicode-width", - "wasm-encoder 0.209.1", + "wasm-encoder 0.216.0", ] [[package]] name = "wat" -version = "1.209.1" +version = "1.216.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42203ec0271d113f8eb1f77ebc624886530cecb35915a7f63a497131f16e4d24" +checksum = "ac0409090fb5154f95fb5ba3235675fd9e579e731524d63b6a2f653e1280c82a" dependencies = [ - "wast 209.0.1", + "wast 216.0.0", ] [[package]] @@ -4023,9 +4096,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.69" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" dependencies = [ "js-sys", "wasm-bindgen", @@ -4033,9 +4106,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.1" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009" +checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" dependencies = [ "rustls-pki-types", ] @@ -4048,7 +4121,7 @@ checksum = "cc07496af9cb4377dabd78ead77564302c8c34c0a75dcd11b02f0ebe11c5fa10" dependencies = [ "anyhow", "async-trait", - "bitflags 2.5.0", + "bitflags", "thiserror", "tracing", "wasmtime", @@ -4066,7 +4139,7 @@ dependencies = [ "proc-macro2", "quote", "shellexpand", - "syn 2.0.66", + "syn 2.0.76", "witx", ] @@ -4078,7 +4151,7 @@ checksum = "4a781d29bfd788595f4a392a6f606699e59577b7f4b2858da2ae4068f4d757c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", "wiggle-generate", ] @@ -4100,11 +4173,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -4135,7 +4208,37 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", ] [[package]] @@ -4153,7 +4256,16 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", ] [[package]] @@ -4173,18 +4285,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm 0.52.5", - "windows_aarch64_msvc 0.52.5", - "windows_i686_gnu 0.52.5", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", "windows_i686_gnullvm", - "windows_i686_msvc 0.52.5", - "windows_x86_64_gnu 0.52.5", - "windows_x86_64_gnullvm 0.52.5", - "windows_x86_64_msvc 0.52.5", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", ] [[package]] @@ -4195,9 +4307,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" @@ -4207,9 +4319,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" @@ -4219,15 +4331,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" @@ -4237,9 +4349,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" @@ -4249,9 +4361,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" @@ -4261,9 +4373,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" @@ -4273,9 +4385,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" @@ -4288,30 +4400,20 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.11" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56c52728401e1dc672a56e81e593e912aa54c78f40246869f78359a2bf24d29d" +checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" dependencies = [ "memchr", ] -[[package]] -name = "winreg" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - [[package]] name = "winx" version = "0.36.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f9643b83820c0cd246ecabe5fa454dd04ba4fa67996369466d0747472d337346" dependencies = [ - "bitflags 2.5.0", + "bitflags", "windows-sys 0.52.0", ] @@ -4323,7 +4425,7 @@ checksum = "316b36a9f0005f5aa4b03c39bc3728d045df136f8c13a73b7db4510dec725e08" dependencies = [ "anyhow", "id-arena", - "indexmap 2.2.6", + "indexmap 2.4.0", "log", "semver", "serde", @@ -4346,11 +4448,13 @@ dependencies = [ [[package]] name = "xattr" -version = "0.2.3" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc" +checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" dependencies = [ "libc", + "linux-raw-sys", + "rustix", ] [[package]] @@ -4370,22 +4474,23 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" [[package]] name = "zerocopy" -version = "0.7.34" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ + "byteorder", "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.34" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.76", ] [[package]] @@ -4396,16 +4501,16 @@ checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" [[package]] name = "zip" -version = "2.1.3" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775a2b471036342aa69bc5a602bc889cb0a06cda00477d0c69566757d5553d39" +checksum = "dc5e4288ea4057ae23afc69a4472434a87a2495cafce6632fd1c4ec9f5cf3494" dependencies = [ "arbitrary", "crc32fast", "crossbeam-utils", "displaydoc", "flate2", - "indexmap 2.2.6", + "indexmap 2.4.0", "memchr", "thiserror", "zopfli", @@ -4436,11 +4541,11 @@ dependencies = [ [[package]] name = "zstd" -version = "0.13.1" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d789b1514203a1120ad2429eae43a7bd32b90976a7bb8a05f7ec02fa88cc23a" +checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" dependencies = [ - "zstd-safe 7.1.0", + "zstd-safe 7.2.1", ] [[package]] @@ -4455,18 +4560,18 @@ dependencies = [ [[package]] name = "zstd-safe" -version = "7.1.0" +version = "7.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd99b45c6bc03a018c8b8a86025678c87e55526064e38f9df301989dce7ec0a" +checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.10+zstd.1.5.6" +version = "2.0.13+zstd.1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa" +checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index a507f60..5739998 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,18 +3,19 @@ resolver = "2" members = ["crates/*"] [workspace.dependencies] -extism-pdk = "1.2.0" -moon_common = "0.0.6" -moon_config = "0.0.8" -moon_pdk = "0.0.7" -moon_pdk_test_utils = "0.0.8" -moon_target = "0.0.5" -rustc-hash = "1.1.0" -serde = { version = "1.0.203", features = ["derive"] } -serde_json = "1.0.117" +extism-pdk = "1.2.1" +moon_common = "0.0.8" +moon_config = "0.0.10" +moon_pdk = "0.0.9" +moon_pdk_test_utils = "0.0.10" +moon_target = "0.0.7" +rustc-hash = "2.0.0" +serde = { version = "1.0.209", features = ["derive"] } +serde_json = "1.0.127" serde_yaml = "0.9.34" -starbase_utils = { version = "0.7.4", default-features = false } -starbase_sandbox = "0.6.2" +starbase_utils = { version = "0.8.7", default-features = false } +starbase_sandbox = "0.7.2" +tokio = { version = "1.39.2", features = ["full"] } # moon_common = { path = "../moon/nextgen/common" } # moon_config = { path = "../moon/nextgen/config" } diff --git a/crates/common/src/download.rs b/crates/common/src/download.rs index 4aa7c4a..7bff215 100644 --- a/crates/common/src/download.rs +++ b/crates/common/src/download.rs @@ -1,6 +1,6 @@ use crate::format_virtual_path; use extism_pdk::debug; -use moon_pdk::{fetch_url_bytes, AnyResult, VirtualPath}; +use moon_pdk::{fetch_bytes, AnyResult, VirtualPath}; use std::fs; pub fn download_from_url, P: AsRef>( @@ -17,7 +17,7 @@ pub fn download_from_url, P: AsRef>( let file_name = file_name.unwrap_or_else(|| &url[url.rfind('/').unwrap() + 1..]); // Fetch the bytes of the URL - let bytes = fetch_url_bytes(url)?; + let bytes = fetch_bytes(url)?; // Write the to the provided file let file = dir.join(file_name); diff --git a/crates/download/CHANGELOG.md b/crates/download/CHANGELOG.md index 658a427..8495314 100644 --- a/crates/download/CHANGELOG.md +++ b/crates/download/CHANGELOG.md @@ -1,3 +1,11 @@ +# Changelog + +## Unreleased + +#### 🚀 Updates + +- Updated dependencies. + ## 0.0.5 #### ⚙️ Internal diff --git a/crates/download/Cargo.toml b/crates/download/Cargo.toml index 9213690..fb3c2a7 100644 --- a/crates/download/Cargo.toml +++ b/crates/download/Cargo.toml @@ -21,6 +21,7 @@ moon_pdk = { workspace = true } [dev-dependencies] moon_pdk_test_utils = { workspace = true } starbase_sandbox = { workspace = true } +tokio = { workspace = true } [features] default = ["wasm"] diff --git a/crates/download/tests/download_test.rs b/crates/download/tests/download_test.rs index 3746fdc..b720b0a 100644 --- a/crates/download/tests/download_test.rs +++ b/crates/download/tests/download_test.rs @@ -5,104 +5,116 @@ use std::fs; mod download { use super::*; - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "the following required arguments were not provided")] - fn errors_if_no_args() { + async fn errors_if_no_args() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "A valid URL is required for downloading.")] - fn errors_if_not_a_url() { + async fn errors_if_not_a_url() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec!["--url".into(), "invalid".into()], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec!["--url".into(), "invalid".into()], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "must be a directory, found a file")] - fn errors_if_dest_is_a_file() { + async fn errors_if_dest_is_a_file() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); sandbox.create_file("dest", "file"); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--url".into(), - "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), - "--dest".into(), - "./dest".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--url".into(), + "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), + "--dest".into(), + "./dest".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] - fn downloads_file() { + #[tokio::test(flavor = "multi_thread")] + async fn downloads_file() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--url".into(), - "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), - "--dest".into(), - ".".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--url".into(), + "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), + "--dest".into(), + ".".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; let file = sandbox.path().join("README.md"); assert!(file.exists()); - assert_eq!(fs::metadata(file).unwrap().len(), 3891); + assert_eq!(fs::metadata(file).unwrap().len(), 4107); } - #[test] - fn downloads_file_to_subdir() { + #[tokio::test(flavor = "multi_thread")] + async fn downloads_file_to_subdir() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--url".into(), - "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), - "--dest".into(), - "./sub/dir".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--url".into(), + "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), + "--dest".into(), + "./sub/dir".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(sandbox.path().join("sub/dir/README.md").exists()); } - #[test] - fn downloads_file_with_custom_name() { + #[tokio::test(flavor = "multi_thread")] + async fn downloads_file_with_custom_name() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--url".into(), - "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), - "--dest".into(), - "./sub/dir".into(), - "--name".into(), - "moon.md".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--url".into(), + "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), + "--dest".into(), + "./sub/dir".into(), + "--name".into(), + "moon.md".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(sandbox.path().join("sub/dir/moon.md").exists()); } diff --git a/crates/migrate-nx/CHANGELOG.md b/crates/migrate-nx/CHANGELOG.md index 898bfc8..15bf526 100644 --- a/crates/migrate-nx/CHANGELOG.md +++ b/crates/migrate-nx/CHANGELOG.md @@ -1,3 +1,13 @@ +# Changelog + +## Unreleased + +#### 🚀 Updates + +- Added support for `defaultBase` from `nx.json`. +- Added support for `metadata` from `project.json`. +- Updated dependencies. + ## 0.0.5 #### ⚙️ Internal diff --git a/crates/migrate-nx/Cargo.toml b/crates/migrate-nx/Cargo.toml index 546e0b9..72cd5e7 100644 --- a/crates/migrate-nx/Cargo.toml +++ b/crates/migrate-nx/Cargo.toml @@ -22,11 +22,13 @@ moon_pdk = { workspace = true } moon_target = { workspace = true } rustc-hash = { workspace = true } serde = { workspace = true } +serde_json = { workspace = true } starbase_utils = { workspace = true, features = ["glob", "json", "yaml"] } [dev-dependencies] moon_pdk_test_utils = { workspace = true } starbase_sandbox = { workspace = true } +tokio = { workspace = true } [features] default = ["wasm"] diff --git a/crates/migrate-nx/src/nx_json.rs b/crates/migrate-nx/src/nx_json.rs index d7dab7b..1b6b93c 100644 --- a/crates/migrate-nx/src/nx_json.rs +++ b/crates/migrate-nx/src/nx_json.rs @@ -1,6 +1,8 @@ // https://nx.dev/reference/nx-json // https://github.com/nrwl/nx/blob/master/packages/nx/schemas/nx-schema.json +#![allow(dead_code)] + use rustc_hash::FxHashMap; use serde::Deserialize; use starbase_utils::json::JsonValue; @@ -89,6 +91,7 @@ pub struct NxWorkspaceLayout { #[serde(rename_all = "camelCase")] pub struct NxJson { pub affected: Option, + pub default_base: Option, pub named_inputs: Option, pub target_defaults: Option>, pub workspace_layout: Option, diff --git a/crates/migrate-nx/src/nx_migrator.rs b/crates/migrate-nx/src/nx_migrator.rs index 9d6a1ad..87db579 100644 --- a/crates/migrate-nx/src/nx_migrator.rs +++ b/crates/migrate-nx/src/nx_migrator.rs @@ -1,13 +1,11 @@ use crate::nx_json::*; use crate::nx_project_json::*; use moon_common::Id; -use moon_config::FilePath; -use moon_config::PortablePath; -use moon_config::TaskOptionEnvFile; use moon_config::{ - InputPath, OutputPath, PartialProjectDependsOn, PartialTaskArgs, PartialTaskConfig, - PartialTaskDependency, PartialTaskOptionsConfig, PartialVcsConfig, PartialWorkspaceProjects, - PlatformType, ProjectType, + FilePath, InputPath, OutputPath, PartialProjectDependsOn, PartialProjectMetadataConfig, + PartialTaskArgs, PartialTaskConfig, PartialTaskDependency, PartialTaskOptionsConfig, + PartialVcsConfig, PartialWorkspaceProjects, PlatformType, PortablePath, ProjectType, + TaskOptionEnvFile, }; use moon_extension_common::migrator::*; use moon_pdk::{map_miette_error, AnyResult, MoonContext}; @@ -71,14 +69,15 @@ impl NxMigrator { } pub fn migrate_root_config(&mut self, nx_json: NxJson) -> AnyResult<()> { - if let Some(affected) = nx_json.affected { - if let Some(default_branch) = affected.default_base { - self.inner - .load_workspace_config()? - .vcs - .get_or_insert(PartialVcsConfig::default()) - .default_branch = Some(default_branch); - } + if let Some(default_branch) = nx_json + .default_base + .or_else(|| nx_json.affected.and_then(|aff| aff.default_base)) + { + self.inner + .load_workspace_config()? + .vcs + .get_or_insert(PartialVcsConfig::default()) + .default_branch = Some(default_branch); } if let Some(named_inputs) = nx_json.named_inputs { @@ -223,6 +222,15 @@ impl NxMigrator { } } + if let Some(metadata) = project_json.metadata { + config + .project + .get_or_insert(PartialProjectMetadataConfig::default()) + .metadata + .get_or_insert(Default::default()) + .extend(metadata); + } + Ok(()) } diff --git a/crates/migrate-nx/src/nx_project_json.rs b/crates/migrate-nx/src/nx_project_json.rs index 20ff3cb..a8368f8 100644 --- a/crates/migrate-nx/src/nx_project_json.rs +++ b/crates/migrate-nx/src/nx_project_json.rs @@ -3,11 +3,13 @@ use crate::nx_json::{NxNamedInputs, NxTargetOptions}; use rustc_hash::FxHashMap; use serde::Deserialize; +use std::collections::HashMap; #[derive(Default, Deserialize)] #[serde(rename_all = "camelCase")] pub struct NxProjectJson { pub implicit_dependencies: Option>, + pub metadata: Option>, pub name: Option, pub named_inputs: Option, pub project_type: Option, diff --git a/crates/migrate-nx/tests/migrate_nx_test.rs b/crates/migrate-nx/tests/migrate_nx_test.rs index 79c745e..e8b9215 100644 --- a/crates/migrate-nx/tests/migrate_nx_test.rs +++ b/crates/migrate-nx/tests/migrate_nx_test.rs @@ -5,15 +5,17 @@ use std::fs; mod migrate_nx { use super::*; - #[test] - fn converts_root_files() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_root_files() { let sandbox = create_sandbox("root"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("nx.json").exists()); assert!(!sandbox.path().join("workspace.json").exists()); @@ -24,15 +26,17 @@ mod migrate_nx { assert_snapshot!(fs::read_to_string(sandbox.path().join(".moon/workspace.yml")).unwrap()); } - #[test] - fn converts_nx_builtin_executors() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_nx_builtin_executors() { let sandbox = create_sandbox("nx-executors"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("project.json").exists()); assert!(sandbox.path().join("moon.yml").exists()); @@ -43,15 +47,17 @@ mod migrate_nx { mod nx_json { use super::*; - #[test] - fn converts_named_inputs() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_named_inputs() { let sandbox = create_sandbox("root-inputs"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("nx.json").exists()); assert!(sandbox.path().join(".moon/tasks/node.yml").exists()); @@ -65,23 +71,25 @@ mod migrate_nx { mod workspace_projects { use super::*; - #[test] - fn uses_defaults() { + #[tokio::test(flavor = "multi_thread")] + async fn uses_defaults() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert_snapshot!( fs::read_to_string(sandbox.path().join(".moon/workspace.yml")).unwrap() ); } - #[test] - fn inherits_layout() { + #[tokio::test(flavor = "multi_thread")] + async fn inherits_layout() { let sandbox = create_empty_sandbox(); sandbox.create_file( "nx.json", @@ -96,10 +104,12 @@ mod migrate_nx { let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert_snapshot!( fs::read_to_string(sandbox.path().join(".moon/workspace.yml")).unwrap() @@ -110,15 +120,17 @@ mod migrate_nx { mod projects { use super::*; - #[test] - fn converts_project_json() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_project_json() { let sandbox = create_sandbox("projects"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("nx.json").exists()); assert!(!sandbox.path().join("bar/project.json").exists()); @@ -133,17 +145,19 @@ mod migrate_nx { assert_snapshot!(fs::read_to_string(sandbox.path().join("foo/moon.yml")).unwrap()); } - #[test] - fn converts_name_and_implicit_deps() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_name_and_implicit_deps() { let sandbox = create_sandbox("project-name-deps"); let plugin = create_extension("test", sandbox.path()); dbg!(sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("project.json").exists()); assert!(sandbox.path().join("moon.yml").exists()); @@ -151,15 +165,17 @@ mod migrate_nx { assert_snapshot!(fs::read_to_string(sandbox.path().join("moon.yml")).unwrap()); } - #[test] - fn converts_type_and_tags() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_type_and_tags() { let sandbox = create_sandbox("project-type-tags"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("app/project.json").exists()); assert!(!sandbox.path().join("lib/project.json").exists()); @@ -170,15 +186,17 @@ mod migrate_nx { assert_snapshot!(fs::read_to_string(sandbox.path().join("lib/moon.yml")).unwrap()); } - #[test] - fn converts_named_inputs() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_named_inputs() { let sandbox = create_sandbox("project-inputs"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("project.json").exists()); assert!(sandbox.path().join("moon.yml").exists()); @@ -186,15 +204,17 @@ mod migrate_nx { assert_snapshot!(fs::read_to_string(sandbox.path().join("moon.yml")).unwrap()); } - #[test] - fn converts_targets() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_targets() { let sandbox = create_sandbox("project-targets"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("project.json").exists()); assert!(sandbox.path().join("moon.yml").exists()); diff --git a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__converts_nx_builtin_executors.snap b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__converts_nx_builtin_executors.snap index ad517a1..10ff667 100644 --- a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__converts_nx_builtin_executors.snap +++ b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__converts_nx_builtin_executors.snap @@ -10,9 +10,9 @@ tasks: run-env: command: echo 'foo' env: - BAZ: 'true' BAR: abc FOO: '123' + BAZ: 'true' platform: system run-env-file: command: echo 'foo' @@ -39,4 +39,3 @@ tasks: outputs: - dist - docs - diff --git a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-2.snap b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-2.snap index 4ef96db..1c81e0f 100644 --- a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-2.snap +++ b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-2.snap @@ -14,10 +14,10 @@ tasks: build: command: js tsc args: - - --tsConfig - - $workspaceRoot/baz/tsconfig.lib.json - --main - $workspaceRoot/baz/src/main.ts + - --tsConfig + - $workspaceRoot/baz/tsconfig.lib.json deps: - ^:build inputs: @@ -29,4 +29,3 @@ tasks: args: - --tsConfig - $workspaceRoot/baz/tsconfig-prod.lib.json - diff --git a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-3.snap b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-3.snap index 0034e63..0208fbc 100644 --- a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-3.snap +++ b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_project_json-3.snap @@ -12,8 +12,8 @@ tasks: args: - --cypressConfig - $workspaceRoot/foo/cypress.config.ts - - --parallel - --no-debug + - --parallel e2e.dev: extends: e2e args: @@ -24,4 +24,3 @@ tasks: args: - --baseUrl - https://some-internal-url.example.com - diff --git a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_targets.snap b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_targets.snap index 1d3dd73..74e95d9 100644 --- a/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_targets.snap +++ b/crates/migrate-nx/tests/snapshots/migrate_nx_test__migrate_nx__projects__converts_targets.snap @@ -8,12 +8,12 @@ tasks: build: command: esbuild args: + - --main + - app - --tsConfig - $workspaceRoot/app/tsconfig.app.json - --outputPath - $workspaceRoot/dist/app - - --main - - app create-script: command: mkdir -p apps/frontend/scripts && touch apps/frontend/scripts/my-script.sh && chmod +x apps/frontend/scripts/my-script.sh platform: system @@ -55,7 +55,6 @@ tasks: test: command: jest args: + - --passWithNoTests - --jestConfig - $workspaceRoot/libs/my-lib/jest.config.ts - - --passWithNoTests - diff --git a/crates/migrate-turborepo/CHANGELOG.md b/crates/migrate-turborepo/CHANGELOG.md index a1c61da..bfbda11 100644 --- a/crates/migrate-turborepo/CHANGELOG.md +++ b/crates/migrate-turborepo/CHANGELOG.md @@ -1,3 +1,12 @@ +# Changelog + +## Unreleased + +#### 🚀 Updates + +- Added support for `interactive` task option. +- Updated dependencies. + ## 0.1.2 #### ⚙️ Internal diff --git a/crates/migrate-turborepo/Cargo.toml b/crates/migrate-turborepo/Cargo.toml index ac87d26..d16c3a9 100644 --- a/crates/migrate-turborepo/Cargo.toml +++ b/crates/migrate-turborepo/Cargo.toml @@ -27,6 +27,7 @@ starbase_utils = { workspace = true, features = ["glob", "json", "yaml"] } [dev-dependencies] moon_pdk_test_utils = { workspace = true } starbase_sandbox = { workspace = true } +tokio = { workspace = true } [features] default = ["wasm"] diff --git a/crates/migrate-turborepo/src/turbo_json.rs b/crates/migrate-turborepo/src/turbo_json.rs index 65b8896..7ac806c 100644 --- a/crates/migrate-turborepo/src/turbo_json.rs +++ b/crates/migrate-turborepo/src/turbo_json.rs @@ -1,6 +1,16 @@ +#![allow(dead_code)] + use rustc_hash::FxHashMap; use serde::Deserialize; +#[derive(Default, Deserialize)] +#[serde(rename_all = "kebab-case")] +pub enum TurboEnvMode { + Loose, + #[default] + Strict, +} + #[derive(Default, Deserialize)] #[serde(rename_all = "kebab-case")] pub enum TurboOutputMode { @@ -12,6 +22,14 @@ pub enum TurboOutputMode { None, } +#[derive(Default, Deserialize)] +#[serde(rename_all = "kebab-case")] +pub enum TurboUi { + #[default] + Stream, + Tui, +} + #[derive(Default, Deserialize)] #[serde(rename_all = "camelCase")] pub struct TurboTask { @@ -23,6 +41,7 @@ pub struct TurboTask { pub pass_through_env: Option>, pub persistent: Option, // v2 + pub interactive: Option, pub output_logs: Option, // v1 (removed) pub dot_env: Option>, @@ -37,7 +56,12 @@ pub struct TurboJson { pub global_env: Option>, pub global_pass_through_env: Option>, // v2 + pub cache_dir: Option, + pub daemon: Option, + pub dangerously_disable_package_manager_check: Option, + pub env_mode: Option, pub tasks: Option>, + pub ui: Option, // v1 (removed) pub global_dot_env: Option>, pub pipeline: Option>, diff --git a/crates/migrate-turborepo/src/turbo_migrator.rs b/crates/migrate-turborepo/src/turbo_migrator.rs index 258ddf8..0efdf9b 100644 --- a/crates/migrate-turborepo/src/turbo_migrator.rs +++ b/crates/migrate-turborepo/src/turbo_migrator.rs @@ -146,7 +146,7 @@ impl TurboMigrator { turbo_json: TurboJson, from_source: Option<&str>, ) -> AnyResult<()> { - let Some(pipeline) = turbo_json.tasks.or_else(|| turbo_json.pipeline) else { + let Some(pipeline) = turbo_json.tasks.or(turbo_json.pipeline) else { return Ok(()); }; @@ -312,7 +312,7 @@ impl TurboMigrator { }); } - if let Some(output_mode) = &turbo_task.output_logs.or_else(|| turbo_task.output_mode) { + if let Some(output_mode) = turbo_task.output_logs.or(turbo_task.output_mode) { let output_style = match output_mode { TurboOutputMode::HashOnly => Some(TaskOutputStyle::Hash), TurboOutputMode::NewOnly => Some(TaskOutputStyle::Buffer), @@ -328,6 +328,13 @@ impl TurboMigrator { } } + if turbo_task.interactive == Some(true) { + config + .options + .get_or_insert(PartialTaskOptionsConfig::default()) + .interactive = turbo_task.interactive; + } + if turbo_task.persistent == Some(true) { config.local = turbo_task.persistent; } diff --git a/crates/migrate-turborepo/tests/migrate_turborepo_test.rs b/crates/migrate-turborepo/tests/migrate_turborepo_test.rs index 6d7d75f..da55d7a 100644 --- a/crates/migrate-turborepo/tests/migrate_turborepo_test.rs +++ b/crates/migrate-turborepo/tests/migrate_turborepo_test.rs @@ -5,15 +5,17 @@ use std::fs; mod migrate_turborepo { use super::*; - #[test] - fn converts_basic_root_file() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_basic_root_file() { let sandbox = create_sandbox("root-only"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("turbo.json").exists()); assert!(sandbox.path().join(".moon/tasks/node.yml").exists()); @@ -21,15 +23,17 @@ mod migrate_turborepo { assert_snapshot!(fs::read_to_string(sandbox.path().join(".moon/tasks/node.yml")).unwrap()); } - #[test] - fn converts_project_files() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_project_files() { let sandbox = create_sandbox("monorepo"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("turbo.json").exists()); assert!(!sandbox.path().join("client/turbo.json").exists()); @@ -43,15 +47,17 @@ mod migrate_turborepo { assert_snapshot!(fs::read_to_string(sandbox.path().join("server/moon.yml")).unwrap()); } - #[test] - fn can_force_bun_instead_of_node() { + #[tokio::test(flavor = "multi_thread")] + async fn can_force_bun_instead_of_node() { let sandbox = create_sandbox("monorepo"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec!["--bun".into()], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec!["--bun".into()], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("turbo.json").exists()); assert!(!sandbox.path().join("client/turbo.json").exists()); @@ -66,15 +72,17 @@ mod migrate_turborepo { assert_snapshot!(fs::read_to_string(sandbox.path().join("server/moon.yml")).unwrap()); } - #[test] - fn converts_to_a_root_project() { + #[tokio::test(flavor = "multi_thread")] + async fn converts_to_a_root_project() { let sandbox = create_sandbox("root-project"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("turbo.json").exists()); assert!(!sandbox.path().join(".moon/tasks/node.yml").exists()); @@ -83,54 +91,62 @@ mod migrate_turborepo { assert_snapshot!(fs::read_to_string(sandbox.path().join("moon.yml")).unwrap()); } - #[test] - fn merges_with_existing_root_tasks() { + #[tokio::test(flavor = "multi_thread")] + async fn merges_with_existing_root_tasks() { let sandbox = create_sandbox("root-merge-existing"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert_snapshot!(fs::read_to_string(sandbox.path().join(".moon/tasks/node.yml")).unwrap()); } - #[test] - fn supports_no_pipeline() { + #[tokio::test(flavor = "multi_thread")] + async fn supports_no_pipeline() { let sandbox = create_sandbox("missing-pipeline"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; assert!(!sandbox.path().join("turbo.json").exists()); assert!(!sandbox.path().join(".moon/tasks/node.yml").exists()); } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "Unable to migrate task as package client does not exist.")] - fn errors_if_a_task_points_to_an_unknown_project() { + async fn errors_if_a_task_points_to_an_unknown_project() { let sandbox = create_sandbox("error-missing-project"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "Unable to migrate task as package client does not exist.")] - fn errors_if_a_dependson_points_to_an_unknown_project() { + async fn errors_if_a_dependson_points_to_an_unknown_project() { let sandbox = create_sandbox("error-missing-project-deps"); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; } } diff --git a/crates/unpack/CHANGELOG.md b/crates/unpack/CHANGELOG.md index 9ac28d7..6c13bf5 100644 --- a/crates/unpack/CHANGELOG.md +++ b/crates/unpack/CHANGELOG.md @@ -1,3 +1,11 @@ +# Changelog + +## Unreleased + +#### 🚀 Updates + +- Updated dependencies. + ## 0.0.1 #### 🚀 Updates diff --git a/crates/unpack/Cargo.toml b/crates/unpack/Cargo.toml index 81a44a0..0b388e5 100644 --- a/crates/unpack/Cargo.toml +++ b/crates/unpack/Cargo.toml @@ -17,7 +17,7 @@ pre-release-replacements = [ moon_extension_common = { path = "../common" } extism-pdk = { workspace = true } moon_pdk = { workspace = true } -starbase_archive = { version = "0.7.3", default-features = false, features = [ +starbase_archive = { version = "0.8.4", default-features = false, features = [ "tar-gz", "zip", ] } @@ -25,6 +25,7 @@ starbase_archive = { version = "0.7.3", default-features = false, features = [ [dev-dependencies] moon_pdk_test_utils = { workspace = true } starbase_sandbox = { workspace = true } +tokio = { workspace = true } [features] default = ["wasm"] diff --git a/crates/unpack/tests/unpack_test.rs b/crates/unpack/tests/unpack_test.rs index f90e582..1e7fe90 100644 --- a/crates/unpack/tests/unpack_test.rs +++ b/crates/unpack/tests/unpack_test.rs @@ -4,64 +4,72 @@ use starbase_sandbox::create_empty_sandbox; mod unpack { use super::*; - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "the following required arguments were not provided")] - fn errors_if_no_args() { + async fn errors_if_no_args() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic( expected = "Invalid source, only .tar, .tar.gz, and .zip archives are supported." )] - fn errors_if_unsupported_ext() { + async fn errors_if_unsupported_ext() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--src".into(), - "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--src".into(), + "https://raw.githubusercontent.com/moonrepo/moon/master/README.md".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "must be a valid file")] - fn errors_if_src_file_missing() { + async fn errors_if_src_file_missing() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); - plugin.execute_extension(ExecuteExtensionInput { - args: vec!["--src".into(), "./some/archive.zip".into()], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec!["--src".into(), "./some/archive.zip".into()], + context: plugin.create_context(sandbox.path()), + }) + .await; } - #[test] + #[tokio::test(flavor = "multi_thread")] #[should_panic(expected = "must be a directory, found a file")] - fn errors_if_dest_is_a_file() { + async fn errors_if_dest_is_a_file() { let sandbox = create_empty_sandbox(); let plugin = create_extension("test", sandbox.path()); sandbox.create_file("dest", "file"); - plugin.execute_extension(ExecuteExtensionInput { - args: vec![ - "--src".into(), - "https://github.com/moonrepo/moon/archive/refs/tags/v1.0.0.zip".into(), - "--dest".into(), - "./dest".into(), - ], - context: plugin.create_context(sandbox.path()), - }); + plugin + .execute_extension(ExecuteExtensionInput { + args: vec![ + "--src".into(), + "https://github.com/moonrepo/moon/archive/refs/tags/v1.0.0.zip".into(), + "--dest".into(), + "./dest".into(), + ], + context: plugin.create_context(sandbox.path()), + }) + .await; } // #[test] diff --git a/rust-toolchain.toml b/rust-toolchain.toml index f92c249..b09cebf 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] profile = "default" -channel = "1.78.0" +channel = "1.80.0"