From 52914e08e6a355311c29a44194fd41973459b21e Mon Sep 17 00:00:00 2001 From: kjuulh Date: Sat, 21 Oct 2023 12:45:33 +0200 Subject: [PATCH] feat: with updated dagger-sdk Signed-off-by: kjuulh --- Cargo.lock | 480 ++++++++++++----------- Cargo.toml | 3 +- ci/Cargo.toml | 2 +- ci/src/main.rs | 10 +- crates/dagger-cuddle-please/src/lib.rs | 95 ++--- crates/dagger-rust/src/build.rs | 21 +- crates/dagger-rust/src/publish.rs | 2 + crates/dagger-rust/src/source.rs | 8 +- crates/dagger-rust/src/test.rs | 18 +- examples/gitea-cuddle-please/src/main.rs | 2 +- examples/rust-build/src/main.rs | 2 +- 11 files changed, 311 insertions(+), 332 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index de203d8..06a889a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 3 [[package]] name = "addr2line" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] @@ -19,30 +19,29 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "anstream" -version = "0.3.2" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", - "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.1" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" [[package]] name = "anstyle-parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" dependencies = [ "utf8parse", ] @@ -58,9 +57,9 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "1.0.2" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" dependencies = [ "anstyle", "windows-sys", @@ -86,13 +85,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.73" +version = "0.1.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] @@ -103,9 +102,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.68" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", @@ -118,9 +117,9 @@ dependencies = [ [[package]] name = "base64" -version = "0.21.2" +version = "0.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" +checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" [[package]] name = "bitflags" @@ -130,9 +129,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "block-buffer" @@ -145,27 +144,27 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" [[package]] name = "byteorder" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" [[package]] name = "cc" -version = "1.0.82" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" dependencies = [ "libc", ] @@ -194,20 +193,19 @@ dependencies = [ [[package]] name = "clap" -version = "4.3.21" +version = "4.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c27cdf28c0f604ba3f512b0c9a409f8de8513e4816705deb0498b627e7c3a3fd" +checksum = "d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956" dependencies = [ "clap_builder", "clap_derive", - "once_cell", ] [[package]] name = "clap_builder" -version = "4.3.21" +version = "4.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08a9f1ab5e9f01a9b81f202e8562eb9a10de70abf9eaeac1be465c28b75aa4aa" +checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" dependencies = [ "anstream", "anstyle", @@ -217,21 +215,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.3.12" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050" +checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] name = "clap_lex" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" +checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" [[package]] name = "color-eyre" @@ -280,10 +278,26 @@ dependencies = [ ] [[package]] -name = "cpufeatures" -version = "0.2.9" +name = "core-foundation" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "cpufeatures" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbc60abd742b35f2492f808e1abbb83d45f72db402e14c55057edc9c7b1e9e4" dependencies = [ "libc", ] @@ -315,32 +329,6 @@ version = "0.1.0" name = "dagger-components" version = "0.1.0" -[[package]] -name = "dagger-core" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8af54bf8b7f93562405f62f5b724a322eeb1618c484010012f3293aa4832b16" -dependencies = [ - "async-trait", - "base64", - "dirs", - "eyre", - "flate2", - "graphql_client", - "hex", - "hex-literal", - "platform-info", - "reqwest", - "serde", - "serde_json", - "sha2", - "tar", - "tempfile", - "tokio", - "tracing", - "tracing-subscriber", -] - [[package]] name = "dagger-cuddle-please" version = "0.2.0" @@ -362,16 +350,27 @@ dependencies = [ [[package]] name = "dagger-sdk" -version = "0.2.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc52e90df068815076f0d3ee0ed683bbbe8a4a30443b09a5ef7e0bcc4b6ce4bc" +version = "0.3.2" +source = "git+https://github.com/kjuulh/dagger.git?branch=feat/with-send-sync#2e2c989be5c1a8ba5a5e94e3b2b06eaa748090c4" dependencies = [ - "dagger-core", + "async-trait", + "base64", "derive_builder", + "dirs", "eyre", + "flate2", "futures", + "graphql_client", + "hex", + "hex-literal", + "platform-info", + "reqwest", "serde", "serde_json", + "sha2", + "tar", + "tempfile", + "thiserror", "tokio", "tracing", "tracing-subscriber", @@ -455,22 +454,23 @@ dependencies = [ [[package]] name = "dirs" -version = "4.0.0" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ "dirs-sys", ] [[package]] name = "dirs-sys" -version = "0.3.7" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" dependencies = [ "libc", + "option-ext", "redox_users", - "winapi", + "windows-sys", ] [[package]] @@ -487,34 +487,23 @@ checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "encoding_rs" -version = "0.8.32" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" dependencies = [ "cfg-if", ] [[package]] name = "errno" -version = "0.3.2" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" +checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" dependencies = [ - "errno-dragonfly", "libc", "windows-sys", ] -[[package]] -name = "errno-dragonfly" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" -dependencies = [ - "cc", - "libc", -] - [[package]] name = "eyre" version = "0.6.8" @@ -527,9 +516,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" [[package]] name = "filetime" @@ -545,9 +534,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.26" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" dependencies = [ "crc32fast", "miniz_oxide", @@ -624,7 +613,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] @@ -680,9 +669,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.3" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "gitea-cuddle-file-cuddle-please" @@ -725,9 +714,9 @@ dependencies = [ [[package]] name = "graphql_client" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa61bb9dc6d373a8b465a5da17b62809483e8527a34b0e9034dc0915b09e160a" +checksum = "09cdf7b487d864c2939b23902291a5041bc4a84418268f25fda1c8d4e15ad8fa" dependencies = [ "graphql_query_derive", "reqwest", @@ -737,9 +726,9 @@ dependencies = [ [[package]] name = "graphql_client_codegen" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e55df64cc702c4ad6647f8df13a799ad11688a3781fadf5045f7ba12733fa9b" +checksum = "a40f793251171991c4eb75bd84bc640afa8b68ff6907bc89d3b712a22f700506" dependencies = [ "graphql-introspection-query", "graphql-parser", @@ -754,9 +743,9 @@ dependencies = [ [[package]] name = "graphql_query_derive" -version = "0.12.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52fc9cde811f44b15ec0692b31e56a3067f6f431c5ace712f286e47c1dacc98" +checksum = "00bda454f3d313f909298f626115092d348bc231025699f557b27e248475f48c" dependencies = [ "graphql_client_codegen", "proc-macro2", @@ -765,9 +754,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.20" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049" +checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833" dependencies = [ "bytes", "fnv", @@ -796,9 +785,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" [[package]] name = "hex" @@ -842,9 +831,9 @@ checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" [[package]] name = "httpdate" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" @@ -863,7 +852,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2 0.4.9", + "socket2 0.4.10", "tokio", "tower-service", "tracing", @@ -922,17 +911,6 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" -[[package]] -name = "is-terminal" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" -dependencies = [ - "hermit-abi", - "rustix", - "windows-sys", -] - [[package]] name = "itoa" version = "1.0.9" @@ -956,21 +934,21 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.147" +version = "0.2.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" +checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" [[package]] name = "linux-raw-sys" -version = "0.4.5" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" +checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" [[package]] name = "lock_api" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" dependencies = [ "autocfg", "scopeguard", @@ -984,9 +962,9 @@ checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" [[package]] name = "mime" @@ -1036,9 +1014,9 @@ dependencies = [ [[package]] name = "object" -version = "0.31.1" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -1049,6 +1027,12 @@ version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + [[package]] name = "overload" version = "0.1.1" @@ -1073,13 +1057,13 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.8" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.3.5", + "redox_syscall 0.4.1", "smallvec", "windows-targets", ] @@ -1107,14 +1091,14 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] name = "pin-project-lite" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -1124,9 +1108,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "platform-info" -version = "1.0.2" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7c23cfae725ae06d9e43010153fa77bdfa8c827bf08fe4beeb2a3514e6be12" +checksum = "d6259c4860e53bf665016f1b2f46a8859cadfa717581dc9d597ae4069de6300f" dependencies = [ "libc", "winapi", @@ -1134,18 +1118,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.66" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.32" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" dependencies = [ "proc-macro2", ] @@ -1168,6 +1152,15 @@ dependencies = [ "bitflags 1.3.2", ] +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "redox_users" version = "0.4.3" @@ -1181,9 +1174,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.18" +version = "0.11.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" dependencies = [ "base64", "bytes", @@ -1207,6 +1200,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", + "system-configuration", "tokio", "tokio-rustls", "tokio-util", @@ -1273,11 +1267,11 @@ checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustix" -version = "0.38.8" +version = "0.38.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f" +checksum = "67ce50cb2e16c2903e30d1cbccfd8387a74b9d4c938b6a4c5ec6cc7556f7a8a0" dependencies = [ - "bitflags 2.4.0", + "bitflags 2.4.1", "errno", "libc", "linux-raw-sys", @@ -1286,9 +1280,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.6" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ "log", "ring", @@ -1307,9 +1301,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.101.3" +version = "0.101.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261e9e0888cba427c3316e6322805653c9425240b6fd96cee7cb671ab70ab8d0" +checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" dependencies = [ "ring", "untrusted", @@ -1339,29 +1333,29 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.183" +version = "1.0.189" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c" +checksum = "8e422a44e74ad4001bdc8eede9a4570ab52f71190e9c076d14369f38b9200537" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.183" +version = "1.0.189" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816" +checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] name = "serde_json" -version = "1.0.104" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" dependencies = [ "itoa", "ryu", @@ -1382,9 +1376,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.7" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -1393,9 +1387,9 @@ dependencies = [ [[package]] name = "sharded-slab" -version = "0.1.4" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ "lazy_static", ] @@ -1411,24 +1405,24 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.8" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" dependencies = [ "autocfg", ] [[package]] name = "smallvec" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" +checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" [[package]] name = "socket2" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" dependencies = [ "libc", "winapi", @@ -1436,9 +1430,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.3" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" dependencies = [ "libc", "windows-sys", @@ -1469,15 +1463,36 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.28" +version = "2.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567" +checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "tar" version = "0.4.40" @@ -1491,9 +1506,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.7.1" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651" +checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" dependencies = [ "cfg-if", "fastrand", @@ -1504,22 +1519,22 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.44" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.44" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] @@ -1549,9 +1564,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.31.0" +version = "1.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40de3a2ba249dcb097e01be5e67a5ff53cf250397715a071a81543e8a832a920" +checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" dependencies = [ "backtrace", "bytes", @@ -1561,7 +1576,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.3", + "socket2 0.5.5", "tokio-macros", "windows-sys", ] @@ -1574,7 +1589,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] @@ -1589,9 +1604,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d" +checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" dependencies = [ "bytes", "futures-core", @@ -1609,11 +1624,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" -version = "0.1.37" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if", "log", "pin-project-lite", "tracing-attributes", @@ -1622,20 +1636,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", ] [[package]] name = "tracing-core" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -1685,9 +1699,9 @@ checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "typenum" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicode-bidi" @@ -1697,9 +1711,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" @@ -1727,9 +1741,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna", @@ -1796,7 +1810,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", "wasm-bindgen-shared", ] @@ -1830,7 +1844,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.28", + "syn 2.0.38", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -1843,9 +1857,9 @@ checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-streams" -version = "0.2.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bbae3363c08332cadccd13b67db371814cd214c2524020932f0804b8cf7c078" +checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" dependencies = [ "futures-util", "js-sys", @@ -1864,24 +1878,11 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "webpki-roots" -version = "0.22.6" +version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" -dependencies = [ - "webpki", -] +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" [[package]] name = "winapi" @@ -1916,9 +1917,9 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.1" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", @@ -1931,53 +1932,54 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "winreg" -version = "0.10.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "winapi", + "cfg-if", + "windows-sys", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 9231dbd..fb534cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,8 @@ dagger-cuddle-please = { path = "crates/dagger-cuddle-please" } dagger-rust = { path = "crates/dagger-rust" } ci = { path = "ci" } -dagger-sdk = "0.2.22" +#dagger-sdk = "0.3.2" +dagger-sdk = {git = "https://github.com/kjuulh/dagger.git", branch = "feat/with-send-sync"} eyre = "0.6.8" tokio = "1.31.0" dotenv = "0.15.0" diff --git a/ci/Cargo.toml b/ci/Cargo.toml index 45fc063..521bd2a 100644 --- a/ci/Cargo.toml +++ b/ci/Cargo.toml @@ -8,8 +8,8 @@ edition = "2021" [dependencies] dagger-cuddle-please.workspace = true dagger-rust.workspace = true +dagger-sdk.workspace = true -dagger-sdk = "*" eyre = "*" color-eyre = "*" tokio = "1" diff --git a/ci/src/main.rs b/ci/src/main.rs index 5904fdf..ed3ad33 100644 --- a/ci/src/main.rs +++ b/ci/src/main.rs @@ -74,7 +74,7 @@ async fn main() -> eyre::Result<()> { LocalCommands::PleaseRelease => todo!(), }, Commands::PullRequest {} => { - async fn test(client: Arc, cli: &Command) { + async fn test(client: dagger_sdk::Query, cli: &Command) { let args = &cli.global; test::execute(client.clone(), args).await.unwrap(); @@ -83,13 +83,13 @@ async fn main() -> eyre::Result<()> { tokio::join!(test(client.clone(), &cli),); } Commands::Main {} => { - async fn test(client: Arc, cli: &Command) { + 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: Arc, cli: &Command) { + async fn cuddle_please(client: dagger_sdk::Query, cli: &Command) { run_release_please(client.clone(), &cli.global) .await .unwrap(); @@ -114,7 +114,7 @@ mod please_release { use crate::GlobalArgs; pub async fn run_release_please( - client: Arc, + client: dagger_sdk::Query, args: &GlobalArgs, ) -> eyre::Result<()> { DaggerCuddlePleaseAction::dagger(client) @@ -142,7 +142,7 @@ mod test { use crate::GlobalArgs; - pub async fn execute(client: Arc, _args: &GlobalArgs) -> eyre::Result<()> { + pub async fn execute(client: dagger_sdk::Query, _args: &GlobalArgs) -> eyre::Result<()> { dagger_rust::test::RustTest::new(client) .test( None::, diff --git a/crates/dagger-cuddle-please/src/lib.rs b/crates/dagger-cuddle-please/src/lib.rs index ac379c7..5fa419c 100644 --- a/crates/dagger-cuddle-please/src/lib.rs +++ b/crates/dagger-cuddle-please/src/lib.rs @@ -1,4 +1,4 @@ -use std::sync::Arc; +use std::sync::{Arc, Mutex}; use models::{CuddlePleaseArgs, CuddlePleaseSrcArgs}; use traits::CuddlePlease; @@ -80,11 +80,11 @@ pub mod traits { } } -pub struct DaggerCuddlePleaseAction(Arc); +pub struct DaggerCuddlePleaseAction(Arc); impl DaggerCuddlePleaseAction { /// Create a [`traits::CuddlePlease`] client based on dagger - pub fn dagger(client: Arc) -> Self { + pub fn dagger(client: dagger_sdk::Query) -> Self { Self(Arc::new(DaggerCuddlePlease::new(client))) } @@ -104,31 +104,27 @@ impl DaggerCuddlePleaseAction { #[derive(Clone)] struct DaggerCuddlePlease { - client: Arc, + client: dagger_sdk::Query, } #[async_trait::async_trait] impl CuddlePlease for DaggerCuddlePlease { async fn execute(&self, args: &CuddlePleaseArgs) -> eyre::Result<()> { - self.cuddle_please(self.client.clone(), args).await + self.cuddle_please(args).await } async fn execute_src(&self, args: &CuddlePleaseSrcArgs) -> eyre::Result<()> { - self.cuddle_please_src(self.client.clone(), args).await + self.cuddle_please_src(args).await } } impl DaggerCuddlePlease { - pub fn new(client: Arc) -> Self { + pub fn new(client: dagger_sdk::Query) -> Self { Self { client } } - pub async fn cuddle_please( - &self, - client: Arc, - args: &CuddlePleaseArgs, - ) -> eyre::Result<()> { - let build_image = client.container().from(&args.cuddle_image); + pub async fn cuddle_please(&self, args: &CuddlePleaseArgs) -> eyre::Result<()> { + let build_image = self.client.container().from(&args.cuddle_image); let repo_url = match &args.server { Server::Gitea { @@ -182,11 +178,12 @@ impl DaggerCuddlePlease { }; let src = if args.use_ssh_socket { - let socket = client + let socket = self + .client .host() .unix_socket(std::env::var("SSH_AGENT").expect("SSH_AGENT to be set")); - client + self.client .git_opts( &repo_url, dagger_sdk::QueryGitOpts { @@ -200,7 +197,7 @@ impl DaggerCuddlePlease { ssh_known_hosts: None, }) } else { - client + self.client .git_opts( &repo_url, dagger_sdk::QueryGitOpts { @@ -215,19 +212,16 @@ impl DaggerCuddlePlease { let res = build_image .with_secret_variable( "CUDDLE_PLEASE_TOKEN", - client - .set_secret( - "CUDDLE_PLEASE_TOKEN", - match &args.server { - Server::Gitea { token, .. } => token, - Server::GitHub { token } => token, - }, - ) - .id() - .await?, + self.client.set_secret( + "CUDDLE_PLEASE_TOKEN", + match &args.server { + Server::Gitea { token, .. } => token, + Server::GitHub { token } => token, + }, + ), ) .with_workdir("/mnt/app") - .with_directory(".", src.id().await?) + .with_directory(".", src) .with_exec(vec!["git", "remote", "set-url", "origin", &repo_url]) .with_exec(vec![ "cuddle-please", @@ -257,10 +251,7 @@ impl DaggerCuddlePlease { }, ]); - let exit_code = res.exit_code().await?; - if exit_code != 0 { - eyre::bail!("failed to run cuddle-please"); - } + res.sync().await?; let please_out = res.stdout().await?; println!("{please_out}"); @@ -269,37 +260,26 @@ impl DaggerCuddlePlease { Ok(()) } - pub async fn cuddle_please_src( - &self, - client: Arc, - args: &CuddlePleaseSrcArgs, - ) -> eyre::Result<()> { - let build_image = client.container().from(&args.cuddle_image); + pub async fn cuddle_please_src(&self, args: &CuddlePleaseSrcArgs) -> eyre::Result<()> { + let build_image = self.client.container().from(&args.cuddle_image); let res = build_image .with_secret_variable( "CUDDLE_PLEASE_TOKEN", - client - .set_secret( - "CUDDLE_PLEASE_TOKEN", - match &args.server { - SrcServer::Gitea { token, .. } => token, - SrcServer::GitHub { token } => token, - }, - ) - .id() - .await?, + self.client.set_secret( + "CUDDLE_PLEASE_TOKEN", + match &args.server { + SrcServer::Gitea { token, .. } => token, + SrcServer::GitHub { token } => token, + }, + ), ) .with_workdir("/mnt/app") - .with_directory(".", client.host().directory(".").id().await?) + .with_directory(".", self.client.host().directory(".")) .with_unix_socket( "/tmp/ssh.sock", - client - .host() - .unix_socket( - std::env::var("SSH_AUTH_SOCK").expect("expect SSH_AUTH_SOCK to be present"), - ) - .id() - .await?, + self.client.host().unix_socket( + std::env::var("SSH_AUTH_SOCK").expect("expect SSH_AUTH_SOCK to be present"), + ), ) .with_env_variable("SSH_AUTH_SOCK", "/tmp/ssh.sock") .with_new_file_opts( @@ -357,10 +337,7 @@ Host * }, ]); - let exit_code = res.exit_code().await?; - if exit_code != 0 { - eyre::bail!("failed to run cuddle-please"); - } + res.sync().await?; let please_out = res.stdout().await?; println!("{please_out}"); diff --git a/crates/dagger-rust/src/build.rs b/crates/dagger-rust/src/build.rs index 82d8a48..a2941c9 100644 --- a/crates/dagger-rust/src/build.rs +++ b/crates/dagger-rust/src/build.rs @@ -4,12 +4,12 @@ use crate::source::RustSource; #[allow(dead_code)] pub struct RustBuild { - client: Arc, + client: dagger_sdk::Query, registry: Option, } impl RustBuild { - pub fn new(client: Arc) -> Self { + pub fn new(client: dagger_sdk::Query) -> Self { Self { client, registry: None, @@ -60,9 +60,9 @@ impl RustBuild { } let rust_prebuild = rust_build_image .with_workdir("/mnt/src") - .with_directory("/mnt/src", dep_src.id().await?) + .with_directory("/mnt/src", dep_src) .with_exec(build_options) - .with_mounted_cache("/mnt/src/target/", target_cache.id().await?); + .with_mounted_cache("/mnt/src/target/", target_cache); let incremental_dir = rust_source .get_rust_target_src(&source, rust_prebuild.clone(), crates.to_vec()) @@ -72,10 +72,10 @@ impl RustBuild { .with_workdir("/mnt/src") .with_directory( "/usr/local/cargo", - rust_prebuild.directory("/usr/local/cargo").id().await?, + rust_prebuild.directory("/usr/local/cargo"), ) - .with_directory("/mnt/src/target", incremental_dir.id().await?) - .with_directory("/mnt/src/", src.id().await?); + .with_directory("/mnt/src/target", incremental_dir) + .with_directory("/mnt/src/", src); Ok(rust_with_src) } @@ -210,10 +210,10 @@ impl RustBuild { .with_exec(packages); let final_image = base_debian - .with_file(format!("/usr/local/bin/{}", bin_name), bin.id().await?) + .with_file(format!("/usr/local/bin/{}", bin_name), bin) .with_exec(vec![bin_name, "--help"]); - final_image.exit_code().await?; + final_image.sync().await?; Ok(final_image) } @@ -238,8 +238,7 @@ impl RustBuild { packages.extend_from_slice(production_deps); let base_debian = base_debian.with_exec(packages); - let final_image = - base_debian.with_file(format!("/usr/local/bin/{}", bin_name), bin.id().await?); + let final_image = base_debian.with_file(format!("/usr/local/bin/{}", bin_name), bin); Ok(final_image) } diff --git a/crates/dagger-rust/src/publish.rs b/crates/dagger-rust/src/publish.rs index 505976b..f30b720 100644 --- a/crates/dagger-rust/src/publish.rs +++ b/crates/dagger-rust/src/publish.rs @@ -28,6 +28,8 @@ impl RustPublish { format!("{}:{}", image.into(), tag.into()), dagger_sdk::ContainerPublishOpts { platform_variants: Some(ids), + forced_compression: None, + media_types: None, }, ) .await?; diff --git a/crates/dagger-rust/src/source.rs b/crates/dagger-rust/src/source.rs index b5ee3e4..ed9548e 100644 --- a/crates/dagger-rust/src/source.rs +++ b/crates/dagger-rust/src/source.rs @@ -6,13 +6,13 @@ use std::{ use eyre::Context; pub struct RustSource { - client: Arc, + client: dagger_sdk::Query, exclude: Vec, } impl RustSource { - pub fn new(client: Arc) -> Self { + pub fn new(client: dagger_sdk::Query) -> Self { Self { client, exclude: vec!["node_modules/", ".git/", "target/", ".cuddle/"] @@ -63,7 +63,7 @@ impl RustSource { let src = self.get_src(source.clone()).await?; let rust_src = self.get_rust_dep_src(source).await?; - let rust_src = rust_src.with_directory(".", skeleton_files.id().await?); + let rust_src = rust_src.with_directory(".", skeleton_files); Ok((src, rust_src)) } @@ -119,7 +119,7 @@ impl RustSource { let incremental_dir = self.client.directory().with_directory_opts( ".", - container.directory("target").id().await?, + container.directory("target"), dagger_sdk::DirectoryWithDirectoryOpts { exclude: Some(exclude), include: None, diff --git a/crates/dagger-rust/src/test.rs b/crates/dagger-rust/src/test.rs index e83e148..a84efa3 100644 --- a/crates/dagger-rust/src/test.rs +++ b/crates/dagger-rust/src/test.rs @@ -3,12 +3,12 @@ use std::{path::PathBuf, sync::Arc}; use crate::{build::RustVersion, source::RustSource}; pub struct RustTest { - client: Arc, + client: dagger_sdk::Query, registry: Option, } impl RustTest { - pub fn new(client: Arc) -> Self { + pub fn new(client: dagger_sdk::Query) -> Self { Self { client, registry: None, @@ -45,9 +45,9 @@ impl RustTest { let build_options = vec!["cargo", "build", "--workspace"]; let rust_prebuild = rust_build_image .with_workdir("/mnt/src") - .with_directory("/mnt/src", dep_src.id().await?) + .with_directory("/mnt/src", dep_src) .with_exec(build_options) - .with_mounted_cache("/mnt/src/target/", target_cache.id().await?); + .with_mounted_cache("/mnt/src/target/", target_cache); let incremental_dir = rust_source .get_rust_target_src(&source, rust_prebuild.clone(), crates.to_vec()) @@ -57,10 +57,10 @@ impl RustTest { .with_workdir("/mnt/src") .with_directory( "/usr/local/cargo", - rust_prebuild.directory("/usr/local/cargo").id().await?, + rust_prebuild.directory("/usr/local/cargo"), ) - .with_directory("/mnt/src/target", incremental_dir.id().await?) - .with_directory("/mnt/src/", src.id().await?); + .with_directory("/mnt/src/target", incremental_dir) + .with_directory("/mnt/src/", src); let test = rust_with_src.with_exec(vec!["cargo", "test"]); @@ -68,9 +68,7 @@ impl RustTest { let stderr = test.stderr().await?; println!("stdout: {}, stderr: {}", stdout, stderr); - if 0 != test.exit_code().await? { - eyre::bail!("failed rust:test"); - } + test.sync().await?; Ok(()) } diff --git a/examples/gitea-cuddle-please/src/main.rs b/examples/gitea-cuddle-please/src/main.rs index f60698f..68acc1d 100644 --- a/examples/gitea-cuddle-please/src/main.rs +++ b/examples/gitea-cuddle-please/src/main.rs @@ -4,7 +4,7 @@ use dagger_cuddle_please::{models::CuddlePleaseArgs, DaggerCuddlePleaseAction}; pub async fn main() -> eyre::Result<()> { let client = dagger_sdk::connect().await?; - DaggerCuddlePleaseAction::dagger(client.clone()) + DaggerCuddlePleaseAction::dagger(client) .execute(&CuddlePleaseArgs { repository: "dagger-components".into(), owner: "kjuulh".into(), diff --git a/examples/rust-build/src/main.rs b/examples/rust-build/src/main.rs index 095de84..517de32 100644 --- a/examples/rust-build/src/main.rs +++ b/examples/rust-build/src/main.rs @@ -22,7 +22,7 @@ pub async fn main() -> eyre::Result<()> { .await?; for container in containers { - container.exit_code().await?; + container.sync().await?; } Ok(())