diff --git a/Cargo.lock b/Cargo.lock index f8ccae8..981301a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -34,9 +34,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.14" +version = "0.6.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" dependencies = [ "anstyle", "anstyle-parse", @@ -49,38 +49,44 @@ 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 = "anstyle-parse" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.3" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5" +checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" dependencies = [ "windows-sys 0.52.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" dependencies = [ "anstyle", "windows-sys 0.52.0", ] +[[package]] +name = "anyhow" +version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" + [[package]] name = "ascii" version = "0.9.3" @@ -100,13 +106,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.72", ] [[package]] @@ -144,9 +150,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "block-buffer" @@ -171,15 +177,15 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" +checksum = "fca2be1d5c43812bae364ee3f30b3afcb7877cf59f4aeb94c66f313a41d2fac9" [[package]] name = "cc" -version = "1.0.98" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" +checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc" [[package]] name = "cfg-if" @@ -198,7 +204,7 @@ dependencies = [ "js-sys", "num-traits", "wasm-bindgen", - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -219,9 +225,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.4" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" +checksum = "0fbb260a053428790f3de475e304ff84cdbc4face759ea7a3e64c1edd938a7fc" dependencies = [ "clap_builder", "clap_derive", @@ -229,9 +235,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.2" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" +checksum = "64b17d7ea74e9f833c7dbf2cbe4fb12ff26783eda4782a8975b72f895c9b4d99" dependencies = [ "anstream", "anstyle", @@ -241,21 +247,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.72", ] [[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 = "color-eyre" @@ -286,9 +292,9 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" +checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" [[package]] name = "combine" @@ -407,9 +413,9 @@ dependencies = [ [[package]] name = "dagger-sdk" -version = "0.9.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79bc59868e62ea1451f158aeb8fbb36c5dd2fb098f31bf408dbd165251674edf" +checksum = "e01f86fa4b6293236e2c0779899542e5793e44f65e737ad382ca70df658eb44c" dependencies = [ "async-trait", "base64", @@ -424,6 +430,7 @@ dependencies = [ "platform-info", "reqwest", "serde", + "serde_graphql_input", "serde_json", "sha2", "tar", @@ -545,9 +552,9 @@ checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" [[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 = "encoding_rs" @@ -683,7 +690,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", ] [[package]] @@ -911,9 +918,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 = "httpdate" @@ -923,9 +930,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "0.14.28" +version = "0.14.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" +checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" dependencies = [ "bytes", "futures-channel", @@ -1006,9 +1013,9 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" [[package]] name = "indexmap" -version = "2.2.6" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" dependencies = [ "equivalent", "hashbrown", @@ -1022,9 +1029,9 @@ checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "is_terminal_polyfill" -version = "1.70.0" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] name = "itoa" @@ -1043,9 +1050,9 @@ dependencies = [ [[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 = "leptos-build" @@ -1069,7 +1076,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "libc", ] @@ -1091,15 +1098,15 @@ dependencies = [ [[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 = "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 = "mime" @@ -1109,22 +1116,23 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[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 = "mio" -version = "0.8.11" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +checksum = "4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4" dependencies = [ + "hermit-abi", "libc", "wasi", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -1146,16 +1154,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" @@ -1207,9 +1205,9 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.1", + "redox_syscall 0.5.3", "smallvec", - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -1235,7 +1233,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", ] [[package]] @@ -1272,9 +1270,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.84" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -1299,11 +1297,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.1" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", ] [[package]] @@ -1417,7 +1415,7 @@ version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", @@ -1479,40 +1477,54 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.203" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.203" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", +] + +[[package]] +name = "serde_graphql_input" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74edfdf4ee65b0f820a6ea6eb131af9fc59fe741ac54954734dbef33b75ed638" +dependencies = [ + "anyhow", + "itoa", + "serde", + "tokio", + "tracing", ] [[package]] name = "serde_json" -version = "1.0.117" +version = "1.0.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +checksum = "4ab380d7d9f22ef3f21ad3e6c1ebe8e4fc7a2000ccba2e4d71fc96f15b2cb609" dependencies = [ "itoa", + "memchr", "ryu", "serde", ] [[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", ] @@ -1627,9 +1639,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" dependencies = [ "proc-macro2", "quote", @@ -1665,9 +1677,9 @@ dependencies = [ [[package]] name = "tar" -version = "0.4.40" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb" +checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" dependencies = [ "filetime", "libc", @@ -1688,22 +1700,22 @@ dependencies = [ [[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.72", ] [[package]] @@ -1718,9 +1730,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", ] @@ -1733,32 +1745,31 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.37.0" +version = "1.39.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787" +checksum = "daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1" dependencies = [ "backtrace", "bytes", "libc", "mio", - "num_cpus", "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2", "tokio-macros", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", ] [[package]] @@ -1786,9 +1797,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.13" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ "serde", "serde_spanned", @@ -1798,18 +1809,18 @@ dependencies = [ [[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", ] [[package]] name = "toml_edit" -version = "0.22.13" +version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c" +checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ "indexmap", "serde", @@ -1844,7 +1855,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", ] [[package]] @@ -1949,9 +1960,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[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", @@ -1960,9 +1971,9 @@ dependencies = [ [[package]] name = "utf8parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "valuable" @@ -1972,9 +1983,9 @@ 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 = "void" @@ -2018,7 +2029,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", "wasm-bindgen-shared", ] @@ -2052,7 +2063,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.72", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -2120,7 +2131,7 @@ 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]] @@ -2138,7 +2149,7 @@ 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]] @@ -2158,18 +2169,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]] @@ -2180,9 +2191,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" @@ -2192,9 +2203,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" @@ -2204,15 +2215,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" @@ -2222,9 +2233,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" @@ -2234,9 +2245,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" @@ -2246,9 +2257,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" @@ -2258,15 +2269,15 @@ 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" -version = "0.6.9" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86c949fede1d13936a99f14fafd3e76fd642b556dd2ce96287fbe2e0151bfac6" +checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" dependencies = [ "memchr", ] diff --git a/Cargo.toml b/Cargo.toml index fafee9c..7c67336 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ dagger-cuddle-please = { path = "crates/dagger-cuddle-please" } dagger-rust = { path = "crates/dagger-rust" } ci = { path = "ci" } -dagger-sdk = "0.9.8" +dagger-sdk = "0.11.9" eyre = "0.6" tokio = "1" dotenv = "0.15.0" diff --git a/ci/src/main.rs b/ci/src/main.rs index 70ecb54..6e69adc 100644 --- a/ci/src/main.rs +++ b/ci/src/main.rs @@ -58,50 +58,52 @@ pub struct GlobalArgs { #[tokio::main] async fn main() -> eyre::Result<()> { - return Ok(()); let _ = dotenv::dotenv(); let _ = color_eyre::install(); let cli = Command::parse(); - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + match &cli.commands { + Commands::Local { command } => match command { + LocalCommands::Test => { + test::execute(client, &cli.global).await?; + } + LocalCommands::PleaseRelease => todo!(), + }, + Commands::PullRequest {} => { + async fn test(client: dagger_sdk::Query, cli: &Command) { + let args = &cli.global; - match &cli.commands { - Commands::Local { command } => match command { - LocalCommands::Test => { - test::execute(client, &cli.global).await?; + test::execute(client.clone(), args).await.unwrap(); + } + + tokio::join!(test(client.clone(), &cli),); } - LocalCommands::PleaseRelease => todo!(), - }, - Commands::PullRequest {} => { - async fn test(client: dagger_sdk::Query, cli: &Command) { - let args = &cli.global; + Commands::Main {} => { + async fn test(client: dagger_sdk::Query, cli: &Command) { + let args = &cli.global; - test::execute(client.clone(), args).await.unwrap(); + test::execute(client.clone(), args).await.unwrap(); + } + + async fn cuddle_please(client: dagger_sdk::Query, cli: &Command) { + run_release_please(client.clone(), &cli.global) + .await + .unwrap(); + } + + tokio::join!( + test(client.clone(), &cli), + cuddle_please(client.clone(), &cli) + ); } - - tokio::join!(test(client.clone(), &cli),); + Commands::Release => {} } - Commands::Main {} => { - async fn test(client: dagger_sdk::Query, cli: &Command) { - let args = &cli.global; - test::execute(client.clone(), args).await.unwrap(); - } - - async fn cuddle_please(client: dagger_sdk::Query, cli: &Command) { - run_release_please(client.clone(), &cli.global) - .await - .unwrap(); - } - - tokio::join!( - test(client.clone(), &cli), - cuddle_please(client.clone(), &cli) - ); - } - Commands::Release => {} - } + Ok(()) + }) + .await?; Ok(()) } diff --git a/crates/cuddle-ci/src/cuddle_file.rs b/crates/cuddle-ci/src/cuddle_file.rs index ddc2bfe..192b13a 100644 --- a/crates/cuddle-ci/src/cuddle_file.rs +++ b/crates/cuddle-ci/src/cuddle_file.rs @@ -189,6 +189,7 @@ scripts: }, }), }), + please: None, }; pretty_assertions::assert_eq!(expected, res) @@ -221,6 +222,7 @@ components: assets: None, packages: None, }), + please: None, }; pretty_assertions::assert_eq!(expected, res) @@ -263,6 +265,7 @@ components: }, }), }), + please: None, }; pretty_assertions::assert_eq!(expected, res) diff --git a/crates/cuddle-ci/src/rust_service.rs b/crates/cuddle-ci/src/rust_service.rs index 76c18b9..760c459 100644 --- a/crates/cuddle-ci/src/rust_service.rs +++ b/crates/cuddle-ci/src/rust_service.rs @@ -58,9 +58,9 @@ impl From for RustService { } impl RustService { - pub async fn new() -> eyre::Result { + pub async fn new(client: dagger_sdk::Query) -> eyre::Result { Ok(Self { - client: dagger_sdk::connect().await?, + client, base_image: None, final_image: None, stages: Vec::new(), @@ -500,31 +500,34 @@ mod test { #[tokio::test] #[cfg(any(feature = "dagger", feature = "integration"))] async fn test_can_build_rust() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + let root_dir = std::path::PathBuf::from("../../").canonicalize()?; - let root_dir = std::path::PathBuf::from("../../").canonicalize()?; + let container = RustService::from(client.clone()) + .with_arch(Architecture::Amd64) + .with_os(Os::Linux) + .with_source(root_dir) + .with_bin_name("ci") + .with_crates(["crates/*", "examples/*", "ci"]) + .with_apt(&["git"]) + .with_cargo_binstall("latest", ["sqlx-cli"]) + .with_mold("2.3.3") + // .with_stage(RustServiceStage::BeforeDeps(middleware(|c| { + // async move { + // // Noop + // Ok(c) + // } + // .boxed() + // }))) + .with_clap_sanity_test() + .build_release() + .await?; - let container = RustService::from(client.clone()) - .with_arch(Architecture::Amd64) - .with_os(Os::Linux) - .with_source(root_dir) - .with_bin_name("ci") - .with_crates(["crates/*", "examples/*", "ci"]) - .with_apt(&["git"]) - .with_cargo_binstall("latest", ["sqlx-cli"]) - .with_mold("2.3.3") - // .with_stage(RustServiceStage::BeforeDeps(middleware(|c| { - // async move { - // // Noop - // Ok(c) - // } - // .boxed() - // }))) - .with_clap_sanity_test() - .build_release() - .await?; + container.sync().await?; - container.sync().await?; + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/gitea-cuddle-file-cuddle-please/src/main.rs b/examples/gitea-cuddle-file-cuddle-please/src/main.rs index a56c274..b46d106 100644 --- a/examples/gitea-cuddle-file-cuddle-please/src/main.rs +++ b/examples/gitea-cuddle-file-cuddle-please/src/main.rs @@ -2,18 +2,21 @@ use dagger_cuddle_please::{models::CuddlePleaseSrcArgs, DaggerCuddlePleaseAction #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + DaggerCuddlePleaseAction::dagger(client.clone()) + .execute_src(&CuddlePleaseSrcArgs { + cuddle_image: "kasperhermansen/cuddle-please:main-1691504183".into(), + server: dagger_cuddle_please::models::SrcServer::Gitea { + token: std::env::var("CUDDLE_PLEASE_TOKEN") + .expect("CUDDLE_PLEASE_TOKEN to be present"), + }, + log_level: Some(dagger_cuddle_please::models::LogLevel::Debug), + }) + .await?; - DaggerCuddlePleaseAction::dagger(client.clone()) - .execute_src(&CuddlePleaseSrcArgs { - cuddle_image: "kasperhermansen/cuddle-please:main-1691504183".into(), - server: dagger_cuddle_please::models::SrcServer::Gitea { - token: std::env::var("CUDDLE_PLEASE_TOKEN") - .expect("CUDDLE_PLEASE_TOKEN to be present"), - }, - log_level: Some(dagger_cuddle_please::models::LogLevel::Debug), - }) - .await?; + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/gitea-cuddle-please/src/main.rs b/examples/gitea-cuddle-please/src/main.rs index 68acc1d..f01bdc0 100644 --- a/examples/gitea-cuddle-please/src/main.rs +++ b/examples/gitea-cuddle-please/src/main.rs @@ -2,25 +2,27 @@ use dagger_cuddle_please::{models::CuddlePleaseArgs, DaggerCuddlePleaseAction}; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; - - DaggerCuddlePleaseAction::dagger(client) - .execute(&CuddlePleaseArgs { - repository: "dagger-components".into(), - owner: "kjuulh".into(), - branch: "main".into(), - cuddle_image: "kasperhermansen/cuddle-please:latest".into(), - server: dagger_cuddle_please::models::Server::Gitea { - url: "https://git.front.kjuulh.io".into(), - user: "git".into(), - token: std::env::var("CUDDLE_PLEASE_TOKEN") - .expect("CUDDLE_PLEASE_TOKEN to be present"), - insecure: None, - }, - log_level: None, - use_ssh_socket: false, - }) - .await?; + dagger_sdk::connect(|client| async move { + DaggerCuddlePleaseAction::dagger(client) + .execute(&CuddlePleaseArgs { + repository: "dagger-components".into(), + owner: "kjuulh".into(), + branch: "main".into(), + cuddle_image: "kasperhermansen/cuddle-please:latest".into(), + server: dagger_cuddle_please::models::Server::Gitea { + url: "https://git.front.kjuulh.io".into(), + user: "git".into(), + token: std::env::var("CUDDLE_PLEASE_TOKEN") + .expect("CUDDLE_PLEASE_TOKEN to be present"), + insecure: None, + }, + log_level: None, + use_ssh_socket: false, + }) + .await?; + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/htmx/src/main.rs b/examples/htmx/src/main.rs index 2227aa9..2467cbc 100644 --- a/examples/htmx/src/main.rs +++ b/examples/htmx/src/main.rs @@ -2,15 +2,17 @@ use std::path::PathBuf; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + let crates = ["some-crate"]; + let dag = dagger_rust::source::RustSource::new(client.clone()); + let (_src, _rust_src) = dag.get_rust_src(None::, crates).await?; - let crates = ["some-crate"]; - let dag = dagger_rust::source::RustSource::new(client.clone()); - let (_src, _rust_src) = dag.get_rust_src(None::, crates).await?; - - let _full_src = dag - .get_rust_target_src(&PathBuf::from("."), client.container(), crates) - .await?; + let _full_src = dag + .get_rust_target_src(&PathBuf::from("."), client.container(), crates) + .await?; + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/leptos-build/src/main.rs b/examples/leptos-build/src/main.rs index 524162e..f27b536 100644 --- a/examples/leptos-build/src/main.rs +++ b/examples/leptos-build/src/main.rs @@ -2,61 +2,63 @@ use dagger_rust::build::{RustVersion, SlimImage}; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + let rust_build = dagger_rust::leptos::LeptosBuild::new(client.clone()); - let rust_build = dagger_rust::leptos::LeptosBuild::new(client.clone()); - - let containers = rust_build - .build_release( - Some("testdata"), - RustVersion::Nightly, - &["crates/*"], - &[ - "openssl", - "libssl-dev", - "pkg-config", - "musl-tools", - "ca-certificates", - ], - vec![SlimImage::Debian { - image: "debian:bullseye".into(), - deps: vec![ - "openssl".into(), - "libssl-dev".into(), - "pkg-config".into(), - "musl-tools".into(), - "ca-certificates".into(), + let containers = rust_build + .build_release( + Some("testdata"), + RustVersion::Nightly, + &["crates/*"], + &[ + "openssl", + "libssl-dev", + "pkg-config", + "musl-tools", + "ca-certificates", ], - architecture: dagger_rust::build::BuildArchitecture::Amd64, - }], - "hackernews_axum", - ) - .await?; + vec![SlimImage::Debian { + image: "debian:bullseye".into(), + deps: vec![ + "openssl".into(), + "libssl-dev".into(), + "pkg-config".into(), + "musl-tools".into(), + "ca-certificates".into(), + ], + architecture: dagger_rust::build::BuildArchitecture::Amd64, + }], + "hackernews_axum", + ) + .await?; - let container = containers.first().unwrap(); + let container = containers.first().unwrap(); - container.directory("/mnt/app").export("output").await?; + container.directory("/mnt/app").export("output").await?; - let tunnel = client.host().tunnel( - container - .with_env_variable("LEPTOS_SITE_ADDR", "0.0.0.0:8080") - .with_exec(vec!["/mnt/app/hackernews_axum"]) - .as_service(), - ); + let tunnel = client.host().tunnel( + container + .with_env_variable("LEPTOS_SITE_ADDR", "0.0.0.0:8080") + .with_exec(vec!["/mnt/app/hackernews_axum"]) + .as_service(), + ); - tunnel.start().await?; + tunnel.start().await?; - let endpoint = tunnel - .endpoint_opts( - dagger_sdk::ServiceEndpointOptsBuilder::default() - .scheme("http") - .build()?, - ) - .await?; + let endpoint = tunnel + .endpoint_opts( + dagger_sdk::ServiceEndpointOptsBuilder::default() + .scheme("http") + .build()?, + ) + .await?; - println!("running on: {endpoint}, press enter to stop"); + println!("running on: {endpoint}, press enter to stop"); - std::io::stdin().read_line(&mut String::new()).unwrap(); + std::io::stdin().read_line(&mut String::new()).unwrap(); + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/rust-build/src/main.rs b/examples/rust-build/src/main.rs index 517de32..876812b 100644 --- a/examples/rust-build/src/main.rs +++ b/examples/rust-build/src/main.rs @@ -2,28 +2,30 @@ use dagger_rust::build::{RustVersion, SlimImage}; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + let rust_build = dagger_rust::build::RustBuild::new(client.clone()); - let rust_build = dagger_rust::build::RustBuild::new(client.clone()); + let containers = rust_build + .build_release( + Some("testdata"), + RustVersion::Nightly, + &["crates/*"], + &["openssl"], + vec![SlimImage::Debian { + image: "debian:bookworm".into(), + deps: vec!["openssl".into()], + architecture: dagger_rust::build::BuildArchitecture::Amd64, + }], + "example_bin", + ) + .await?; - let containers = rust_build - .build_release( - Some("testdata"), - RustVersion::Nightly, - &["crates/*"], - &["openssl"], - vec![SlimImage::Debian { - image: "debian:bookworm".into(), - deps: vec!["openssl".into()], - architecture: dagger_rust::build::BuildArchitecture::Amd64, - }], - "example_bin", - ) - .await?; - - for container in containers { - container.sync().await?; - } + for container in containers { + container.sync().await?; + } + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/rust-src/src/main.rs b/examples/rust-src/src/main.rs index 2227aa9..2467cbc 100644 --- a/examples/rust-src/src/main.rs +++ b/examples/rust-src/src/main.rs @@ -2,15 +2,17 @@ use std::path::PathBuf; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; + dagger_sdk::connect(|client| async move { + let crates = ["some-crate"]; + let dag = dagger_rust::source::RustSource::new(client.clone()); + let (_src, _rust_src) = dag.get_rust_src(None::, crates).await?; - let crates = ["some-crate"]; - let dag = dagger_rust::source::RustSource::new(client.clone()); - let (_src, _rust_src) = dag.get_rust_src(None::, crates).await?; - - let _full_src = dag - .get_rust_target_src(&PathBuf::from("."), client.container(), crates) - .await?; + let _full_src = dag + .get_rust_target_src(&PathBuf::from("."), client.container(), crates) + .await?; + Ok(()) + }) + .await?; Ok(()) } diff --git a/examples/rust-test/src/main.rs b/examples/rust-test/src/main.rs index a51d499..cbf383f 100644 --- a/examples/rust-test/src/main.rs +++ b/examples/rust-test/src/main.rs @@ -2,15 +2,19 @@ use dagger_rust::{build::RustVersion, test::RustTest}; #[tokio::main] pub async fn main() -> eyre::Result<()> { - let client = dagger_sdk::connect().await?; - RustTest::new(client.clone()) - .test( - Some("testdata"), - RustVersion::Nightly, - &["crates/*"], - &["openssl"], - ) - .await?; + dagger_sdk::connect(|client| async move { + RustTest::new(client.clone()) + .test( + Some("testdata"), + RustVersion::Nightly, + &["crates/*"], + &["openssl"], + ) + .await?; + + Ok(()) + }) + .await?; Ok(()) }