diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
index 60304ad1f80..d899575effe 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/rust.yml
@@ -90,7 +90,7 @@ jobs:
with:
auto-install: true
cache: ${{ runner.os == 'Linux' }}
- proto-version: '0.39.7' # Keep in sync
+ proto-version: '0.40.0' # Keep in sync
- uses: mozilla-actions/sccache-action@v0.0.5
if: ${{ vars.ENABLE_SCCACHE == 'true' }}
- name: Checking coverage status
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8d8695b8902..27b6467213b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -12,6 +12,7 @@
- We've sunset the CI insights feature in moonbase. We will no longer be tracking CI run history.
This is a retroactive change that applies to all moon versions.
+- Updated proto to v0.40.0 (from v0.39.7).
## 1.27.6
diff --git a/Cargo.lock b/Cargo.lock
index b2cbcb263c7..873c0f0b092 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -341,7 +341,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -404,7 +404,7 @@ checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -597,7 +597,7 @@ dependencies = [
"darling",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -860,7 +860,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1236,7 +1236,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1247,7 +1247,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
dependencies = [
"darling_core",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1267,7 +1267,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1389,7 +1389,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1557,7 +1557,7 @@ dependencies = [
"proc-macro-crate",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1573,9 +1573,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",
@@ -1588,13 +1588,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.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1811,7 +1811,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1898,7 +1898,7 @@ dependencies = [
"proc-macro2",
"quote",
"regex",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -1929,7 +1929,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
dependencies = [
"fallible-iterator",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"stable_deref_trait",
]
@@ -2012,7 +2012,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http 1.1.0",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"slab",
"tokio",
"tokio-util",
@@ -2355,9 +2355,9 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.3.0"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0"
+checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c"
dependencies = [
"equivalent",
"hashbrown 0.14.3",
@@ -2725,7 +2725,7 @@ dependencies = [
"manyhow-macros",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -2741,9 +2741,9 @@ dependencies = [
[[package]]
name = "markdown"
-version = "1.0.0-alpha.18"
+version = "1.0.0-alpha.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e61c5c85b392273c4d4ea546e6399ace3e3db172ab01b6de8f3d398d1dbd2ec"
+checksum = "911a8325e6fb87b89890cd4529a2ab34c2669c026279e61c26b7140a3d821ccb"
dependencies = [
"unicode-id",
]
@@ -2821,7 +2821,7 @@ checksum = "dcf09caffaac8068c346b6df2a7fc27a177fd20b39421a39ce0a211bde679a6c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -3301,7 +3301,7 @@ name = "moon_config"
version = "0.0.9"
dependencies = [
"httpmock",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"miette",
"moon_common",
"moon_target",
@@ -4216,7 +4216,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad444c78696e8b4de2de8a45468d0cc76630e2ed235c84e102c197b89d295a0b"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"rustc-hash 1.1.0",
"semver",
"serde",
@@ -4292,7 +4292,7 @@ checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
dependencies = [
"crc32fast",
"hashbrown 0.14.3",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"memchr",
]
@@ -4302,18 +4302,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.3",
- "parking_lot",
- "stable_deref_trait",
-]
-
[[package]]
name = "open"
version = "5.3.0"
@@ -4348,7 +4336,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -4502,7 +4490,7 @@ dependencies = [
"pest_meta",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -4523,7 +4511,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"serde",
"serde_derive",
]
@@ -4598,7 +4586,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -4776,16 +4764,16 @@ dependencies = [
"itertools 0.11.0",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
name = "proto_core"
-version = "0.39.3"
+version = "0.40.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2399232f292feb8ccd34e06fdee9e4560c6e0d682f1112d567bba4097435bc8"
+checksum = "de7bcbe6695616b9e27299ccdfe964095a8a3dba0e5240b959febbd8deeb1263"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"miette",
"minisign-verify",
"once_cell",
@@ -4813,11 +4801,10 @@ dependencies = [
[[package]]
name = "proto_installer"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3749317e806e800c1f95e868825cc7440679dd68134ac02134a00f1ec2f98fdc"
+checksum = "8add18458b1ee84f59731a96507908f6bbc10e69015086fa0dda65c62216fe49"
dependencies = [
- "futures",
"miette",
"reqwest",
"starbase_archive",
@@ -4830,11 +4817,12 @@ dependencies = [
[[package]]
name = "proto_pdk_api"
-version = "0.22.0"
+version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f025cab878f43c8a4c1a3eaf062a81ef6383694d91a874614769523d5b67c67a"
+checksum = "7707a07768c2d4a0e8c28e7a24aa7651c88f0aab0197332cd05e2a3f8eda0b2c"
dependencies = [
"rustc-hash 2.0.0",
+ "schematic",
"semver",
"serde",
"serde_json",
@@ -4846,9 +4834,9 @@ dependencies = [
[[package]]
name = "proto_shim"
-version = "0.4.3"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e524e880e758cb90639ec1e54b17e8ebc0f185a342c19afd0665536cc690fbb9"
+checksum = "4d5eba553bde4d4d934bd8755167c7ef20bfed088e87ca28759f01a0aa5a3b26"
dependencies = [
"command-group",
"dirs 5.0.1",
@@ -5274,9 +5262,9 @@ dependencies = [
[[package]]
name = "scc"
-version = "2.1.9"
+version = "2.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06ff467073ddaff34c3a39e5b454f25dd982484a26fff50254ca793c56a1b714"
+checksum = "aeb7ac86243095b70a7920639507b71d51a63390d1ba26c4f60a552fbb914a37"
dependencies = [
"sdd",
"serde",
@@ -5304,12 +5292,12 @@ dependencies = [
[[package]]
name = "schematic"
-version = "0.16.6"
+version = "0.17.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39662af6f427584874872ecc0e42888bccd0c42510d32d519c4ac9319f4c52f3"
+checksum = "14bf79931c9c99d9bcdc29a448836dbcea9ad5991285cc83dd4c9f46cf771ac2"
dependencies = [
"garde",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"markdown",
"miette",
"reqwest",
@@ -5328,26 +5316,28 @@ dependencies = [
[[package]]
name = "schematic_macros"
-version = "0.16.6"
+version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9747db30b2549f7a3d5c5c61e00a4da45d6fe7f4a413594ffc5e598f5ced1330"
+checksum = "ea2f037e36d93185ba8e25049754095e4aabb985ed5a8157da369d40be60d9fa"
dependencies = [
"convert_case",
"darling",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
name = "schematic_types"
-version = "0.8.4"
+version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6196a0b23e5b4ee02e3894a937606fc49ccc9211e1650a9bef759062cfff3d58"
+checksum = "7ce97b2ad673e2183ec94cce86b039e692ecdf1b3b8a1195c90ad31f8adbbd0d"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"semver",
+ "serde",
"serde_json",
+ "serde_yaml",
"toml 0.8.19",
"url",
]
@@ -5360,9 +5350,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "sdd"
-version = "2.1.0"
+version = "3.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "177258b64c0faaa9ffd3c65cd3262c2bc7e2588dbbd9c1641d0346145c1bbda8"
+checksum = "0495e4577c672de8254beb68d01a9b62d0e8a13c099edecdbedccce3223cd29f"
[[package]]
name = "security-framework"
@@ -5398,31 +5388,31 @@ dependencies = [
[[package]]
name = "serde"
-version = "1.0.204"
+version = "1.0.208"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12"
+checksum = "cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.204"
+version = "1.0.208"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222"
+checksum = "24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
name = "serde_json"
-version = "1.0.122"
+version = "1.0.125"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da"
+checksum = "83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"itoa",
"memchr",
"ryu",
@@ -5476,7 +5466,7 @@ version = "0.9.34+deprecated"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"itoa",
"ryu",
"serde",
@@ -5505,7 +5495,7 @@ checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -5732,7 +5722,7 @@ dependencies = [
"darling",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -5777,9 +5767,9 @@ dependencies = [
[[package]]
name = "starbase_utils"
-version = "0.8.5"
+version = "0.8.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8353d4dd059139755ceafe835d95292e049b44d99e78de0f2718df0bfa33c4d"
+checksum = "3f21ce2ab027c71bdee539effc654b529f4016c62f65d9687dcaf08b856232fc"
dependencies = [
"dirs 5.0.1",
"ec4rs",
@@ -5884,9 +5874,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.72"
+version = "2.0.75"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af"
+checksum = "f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9"
dependencies = [
"proc-macro2",
"quote",
@@ -5951,9 +5941,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",
@@ -6058,7 +6048,7 @@ checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -6117,6 +6107,7 @@ dependencies = [
"bytes",
"libc",
"mio 1.0.1",
+ "parking_lot",
"pin-project-lite",
"signal-hook-registry",
"socket2 0.5.5",
@@ -6133,7 +6124,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -6218,7 +6209,7 @@ version = "0.19.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"serde",
"serde_spanned",
"toml_datetime",
@@ -6231,7 +6222,7 @@ version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"toml_datetime",
"winnow 0.5.34",
]
@@ -6242,7 +6233,7 @@ version = "0.22.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"serde",
"serde_spanned",
"toml_datetime",
@@ -6297,7 +6288,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -6379,7 +6370,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7cc416eaf05297012ead9d192226fe9a92e9a20f64f8780efb9085aaae9b590"
dependencies = [
"clean-path",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"rustc-hash 1.1.0",
"serde",
"serde_json",
@@ -6583,9 +6574,9 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]]
name = "version_spec"
-version = "0.6.1"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "037cc6c66ece56eaf96a6be8484a59eb6a3fe64fb1b26475468ffc4afc727c8a"
+checksum = "1a8115efd6e9e71ef4f9b71169432fe99b042d435cd80e41314d3d869dab2d33"
dependencies = [
"human-sort",
"regex",
@@ -6631,16 +6622,16 @@ dependencies = [
[[package]]
name = "warpgate"
-version = "0.16.1"
+version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84c13c5620a7841df6284fc9d366a7e45baf91041f54f86f01142d8060df9d38"
+checksum = "1fb9948cc8854946cd87aa6a1ee8e99fc4fde22c8f13c9facb0f229abd169185"
dependencies = [
"extism",
"miette",
"once_cell",
- "once_map",
"regex",
"reqwest",
+ "scc",
"schematic",
"serde",
"serde_json",
@@ -6650,6 +6641,7 @@ dependencies = [
"starbase_utils",
"system_env",
"thiserror",
+ "tokio",
"tracing",
"ureq",
"warpgate_api",
@@ -6657,9 +6649,9 @@ dependencies = [
[[package]]
name = "warpgate_api"
-version = "0.9.0"
+version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e6f834d0999022b7c35b96be8f14d7fe3935281f00e5aaa0ddb6ba7960b889"
+checksum = "5d4fb1a48a03154125e71b7dd3b26887cbc78732d5598859795c6475fdabba6b"
dependencies = [
"anyhow",
"rustc-hash 2.0.0",
@@ -6672,9 +6664,9 @@ dependencies = [
[[package]]
name = "warpgate_pdk"
-version = "0.7.0"
+version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "334ab34dab6ab0977e54a1857884aae2ba3d1687c5ec7653e311e2d84d32b9b7"
+checksum = "2b23ffd7947eb4886375e93104849ec7aec35ff8c4aefeae2d31cab4d0ff46e5"
dependencies = [
"extism-pdk",
"serde",
@@ -6751,7 +6743,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
"wasm-bindgen-shared",
]
@@ -6785,7 +6777,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -6833,7 +6825,7 @@ version = "0.118.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c"
dependencies = [
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"semver",
]
@@ -6844,7 +6836,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab"
dependencies = [
"bitflags 2.4.2",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"semver",
]
@@ -6871,7 +6863,7 @@ dependencies = [
"cfg-if",
"encoding_rs",
"fxprof-processed-profile",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"libc",
"log",
"object",
@@ -6935,7 +6927,7 @@ dependencies = [
"anyhow",
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
"wasmtime-component-util",
"wasmtime-wit-bindgen",
"wit-parser",
@@ -6997,7 +6989,7 @@ dependencies = [
"anyhow",
"cranelift-entity",
"gimli",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"log",
"object",
"serde",
@@ -7086,7 +7078,7 @@ dependencies = [
"cc",
"cfg-if",
"encoding_rs",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"libc",
"log",
"mach",
@@ -7127,7 +7119,7 @@ checksum = "e04682ce587aa8fa9311d3c95148381f08a1db274ad6bcd3553f7c97c8c2debb"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -7190,7 +7182,7 @@ checksum = "af5fbb1adaadad70271fe18a3f938741edb2b5178bf2fc164ab20544018626b8"
dependencies = [
"anyhow",
"heck 0.4.1",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"wit-parser",
]
@@ -7301,7 +7293,7 @@ dependencies = [
"proc-macro2",
"quote",
"shellexpand",
- "syn 2.0.72",
+ "syn 2.0.75",
"witx",
]
@@ -7313,7 +7305,7 @@ checksum = "4a781d29bfd788595f4a392a6f606699e59577b7f4b2858da2ae4068f4d757c8"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
"wiggle-generate",
]
@@ -7403,7 +7395,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -7414,7 +7406,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -7611,7 +7603,7 @@ checksum = "316b36a9f0005f5aa4b03c39bc3728d045df136f8c13a73b7db4510dec725e08"
dependencies = [
"anyhow",
"id-arena",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"log",
"semver",
"serde",
@@ -7685,7 +7677,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.72",
+ "syn 2.0.75",
]
[[package]]
@@ -7705,7 +7697,7 @@ dependencies = [
"crossbeam-utils",
"displaydoc",
"flate2",
- "indexmap 2.3.0",
+ "indexmap 2.4.0",
"memchr",
"thiserror",
"zopfli",
diff --git a/Cargo.toml b/Cargo.toml
index a0b698c5c6c..536b65e8bc8 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -49,7 +49,7 @@ reqwest = { version = "0.12.5", default-features = false, features = [
] }
rustc-hash = "2.0.0"
scc = "2.1.9"
-schematic = { version = "0.16.6", default-features = false, features = [
+schematic = { version = "0.17.2", default-features = false, features = [
"schema",
] }
serial_test = "3.1.1"
@@ -92,14 +92,14 @@ uuid = { version = "1.10.0", features = ["v4"] }
# proto/plugin related
extism = "=1.3.0"
-extism-pdk = "1.2.0"
-proto_core = "0.39.3"
-proto_installer = "0.6.0"
-system_env = "0.5.0"
-version_spec = "0.6.1"
-warpgate = "0.16.1"
-warpgate_api = "0.9.0"
-warpgate_pdk = "0.7.0"
+extism-pdk = "1.2.1"
+proto_core = "0.40.1"
+proto_installer = "0.7.0"
+system_env = "0.6.0"
+version_spec = "0.7.0"
+warpgate = "0.17.0"
+warpgate_api = "0.10.0"
+warpgate_pdk = "0.8.0"
# proto_core = { path = "../proto/crates/core" }
# proto_installer = { path = "../proto/crates/installer" }
diff --git a/crates/app/src/commands/ext.rs b/crates/app/src/commands/ext.rs
index 29df727a871..1801fbb8fd2 100644
--- a/crates/app/src/commands/ext.rs
+++ b/crates/app/src/commands/ext.rs
@@ -38,9 +38,19 @@ pub async fn ext(session: CliSession, args: ExtArgs) -> AppResult {
.await?;
// Execute the plugin
- extensions.perform_sync(&id, |plugin, context| {
- plugin.execute(args.passthrough.clone(), context)
- })?;
+ let plugin = extensions.get(&id).await?;
+
+ plugin
+ .execute(args.passthrough, extensions.create_context())
+ .await?;
+
+ // let passthrough_args = args.passthrough.clone();
+
+ // extensions
+ // .perform(&id, |plugin, context| async move {
+ // plugin.execute(passthrough_args, context).await
+ // })
+ // .await?;
Ok(())
}
diff --git a/crates/cli/tests/ext_test.rs b/crates/cli/tests/ext_test.rs
index 75b69276849..8b724536054 100644
--- a/crates/cli/tests/ext_test.rs
+++ b/crates/cli/tests/ext_test.rs
@@ -1,7 +1,7 @@
use moon_common::Id;
use moon_config::PartialExtensionConfig;
use moon_test_utils::{create_sandbox_with_config, create_sandbox_with_factory, predicates};
-use proto_core::PluginLocator;
+use proto_core::{warpgate::FileLocator, PluginLocator};
use rustc_hash::FxHashMap;
use std::path::PathBuf;
@@ -74,10 +74,10 @@ mod ext_download {
.insert(
Id::raw("example"),
PartialExtensionConfig {
- plugin: Some(PluginLocator::File {
+ plugin: Some(PluginLocator::File(Box::new(FileLocator {
file: "invalid.wasm".into(),
path: Some(PathBuf::from("invalid.wasm")),
- }),
+ }))),
config: None,
},
);
@@ -88,9 +88,7 @@ mod ext_download {
cmd.arg("ext").arg("example");
})
.failure()
- .stderr(predicates::str::contains(
- "Cannot load example plugin, source file invalid.wasm does not exist.",
- ));
+ .stderr(predicates::str::contains("Cannot load example plugin"));
}
#[test]
diff --git a/crates/common/src/consts.rs b/crates/common/src/consts.rs
index b2b9815ac6f..76bc7964d25 100644
--- a/crates/common/src/consts.rs
+++ b/crates/common/src/consts.rs
@@ -16,4 +16,4 @@ pub const CONFIG_PROJECT_FILENAME: &str = "moon.yml";
pub const CONFIG_TEMPLATE_FILENAME: &str = "template.yml";
-pub const PROTO_CLI_VERSION: &str = "0.39.7";
+pub const PROTO_CLI_VERSION: &str = "0.40.0";
diff --git a/crates/config-schema/src/json_schemas.rs b/crates/config-schema/src/json_schemas.rs
index 5fd754ad1f5..a689460acf8 100644
--- a/crates/config-schema/src/json_schemas.rs
+++ b/crates/config-schema/src/json_schemas.rs
@@ -3,7 +3,7 @@ use schematic::schema::json_schema::{JsonSchemaOptions, JsonSchemaRenderer};
use schematic::schema::SchemaGenerator;
use std::path::Path;
-fn create_jsonschema_renderer() -> JsonSchemaRenderer<'static> {
+fn create_jsonschema_renderer() -> JsonSchemaRenderer {
JsonSchemaRenderer::new(JsonSchemaOptions {
markdown_description: true,
mark_struct_fields_required: false,
diff --git a/crates/config/Cargo.toml b/crates/config/Cargo.toml
index 7638d11dd22..360b9a06ab2 100644
--- a/crates/config/Cargo.toml
+++ b/crates/config/Cargo.toml
@@ -21,11 +21,14 @@ regex = { workspace = true }
rustc-hash = { workspace = true }
schematic = { workspace = true, features = [
"config",
+ "env",
+ "extends",
+ "json",
"schema",
"type_indexmap",
"type_semver",
- "type_serde_json",
- "valid_url",
+ "validate",
+ "validate_url",
"yaml",
] }
semver = { workspace = true, features = ["serde"] }
diff --git a/crates/config/src/config_cache.rs b/crates/config/src/config_cache.rs
index 65f408ed39c..a7f2516f713 100644
--- a/crates/config/src/config_cache.rs
+++ b/crates/config/src/config_cache.rs
@@ -1,7 +1,7 @@
use moon_common::consts::CONFIG_DIRNAME;
use moon_common::path::hash_component;
use rustc_hash::FxHashMap;
-use schematic::{Cacher, ConfigError};
+use schematic::{Cacher, HandlerError};
use std::fs;
use std::path::PathBuf;
use std::time::{Duration, SystemTime};
@@ -32,7 +32,13 @@ impl ConfigCache {
// If reading/writing the cache fails, don't crash the entire process,
// just store in memory and move on!
impl Cacher for ConfigCache {
- fn read(&mut self, url: &str) -> Result