diff --git a/.devcontainer/bootstrap.sh b/.devcontainer/bootstrap.sh index e868f2a..ce5d3b4 100755 --- a/.devcontainer/bootstrap.sh +++ b/.devcontainer/bootstrap.sh @@ -2,7 +2,7 @@ rustup update stable && rustup default stable && rustup component add clippy rustfmt # Installs wasm32 compiler targets -rustup target add wasm32-wasi wasm32-unknown-unknown +rustup target add wasm32-wasip1 wasm32-unknown-unknown # Installs cmake sudo apt update && sudo apt install cmake -y diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 776023c..db054a2 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -31,7 +31,7 @@ jobs: - name: Install Rust uses: dtolnay/rust-toolchain@stable with: - toolchain: 1.81 + toolchain: 1.85 - name: Install dependencies run: | @@ -54,8 +54,8 @@ jobs: fail-fast: false matrix: config: - - { target: "x86_64-unknown-linux-gnu", os: "ubuntu-20.04", arch: "amd64", extension: "" } - - { target: "aarch64-unknown-linux-gnu", os: "ubuntu-20.04", arch: "aarch64", extension: "" } + - { target: "x86_64-unknown-linux-gnu", os: "ubuntu-22.04", arch: "amd64", extension: "" } + - { target: "aarch64-unknown-linux-gnu", os: "ubuntu-22.04", arch: "aarch64", extension: "" } - { target: "x86_64-apple-darwin", os: "macos-13", arch: "amd64", extension: "" } - { target: "aarch64-apple-darwin", os: "macos-14", arch: "aarch64", extension: "" } - { target: "x86_64-pc-windows-msvc", os: "windows-latest", arch: "amd64", extension: ".exe" } @@ -68,12 +68,12 @@ jobs: - name: Install Rust uses: dtolnay/rust-toolchain@stable with: - toolchain: 1.81 + toolchain: 1.85 targets: ${{ matrix.config.target }} - name: Install Spin uses: rajatjindal/setup-actions/spin@main with: - version: "v2.4.2" + version: "v3.3.0" - name: Install pluginify shell: bash run: spin plugins install --url https://github.com/itowlson/spin-pluginify/releases/download/canary/pluginify.json --yes diff --git a/Cargo.lock b/Cargo.lock index e4c64dc..16c7538 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -147,7 +147,7 @@ dependencies = [ "futures-lite 2.3.0", "parking", "polling", - "rustix", + "rustix 0.38.39", "slab", "tracing", "windows-sys 0.59.0", @@ -185,7 +185,7 @@ dependencies = [ "cfg-if", "event-listener 5.3.1", "futures-lite 2.3.0", - "rustix", + "rustix 0.38.39", "tracing", ] @@ -201,7 +201,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix", + "rustix 0.38.39", "signal-hook-registry", "slab", "windows-sys 0.59.0", @@ -226,7 +226,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -243,7 +243,7 @@ checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -263,6 +263,18 @@ dependencies = [ "winapi", ] +[[package]] +name = "auditable-serde" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c7bf8143dfc3c0258df908843e169b5cc5fcf76c7718bd66135ef4a9cd558c5" +dependencies = [ + "semver", + "serde", + "serde_json", + "topological-sort", +] + [[package]] name = "autocfg" version = "1.3.0" @@ -706,7 +718,7 @@ dependencies = [ "futures", "serde", "serde_json", - "thiserror", + "thiserror 1.0.63", "time", "tracing", "url", @@ -769,9 +781,9 @@ dependencies = [ [[package]] name = "backon" -version = "1.3.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5289ec98f68f28dd809fd601059e6aa908bb8f6108620930828283d4ee23d7" +checksum = "302eaff5357a264a2c42f127ecb8bac761cf99749fc3dc95677e2743991f99e7" dependencies = [ "fastrand 2.1.0", ] @@ -819,24 +831,6 @@ dependencies = [ "vsimd", ] -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.6.0", - "cexpr", - "clang-sys", - "itertools", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.87", -] - [[package]] name = "bitflags" version = "1.3.2" @@ -897,9 +891,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.1" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" +checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" dependencies = [ "serde", ] @@ -916,33 +910,33 @@ dependencies = [ [[package]] name = "cap-fs-ext" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16619ada836f12897a72011fe99b03f0025b87a8dbbea4f3c9f89b458a23bf3" +checksum = "e41cc18551193fe8fa6f15c1e3c799bc5ec9e2cfbfaa8ed46f37013e3e6c173c" dependencies = [ "cap-primitives", "cap-std", "io-lifetimes", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "cap-net-ext" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "710b0eb776410a22c89a98f2f80b2187c2ac3a8206b99f3412332e63c9b09de0" +checksum = "9f83833816c66c986e913b22ac887cec216ea09301802054316fc5301809702c" dependencies = [ "cap-primitives", "cap-std", - "rustix", + "rustix 1.0.7", "smallvec", ] [[package]] name = "cap-primitives" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82fa6c3f9773feab88d844aa50035a33fb6e7e7426105d2f4bb7aadc42a5f89a" +checksum = "0a1e394ed14f39f8bc26f59d4c0c010dbe7f0a1b9bafff451b1f98b67c8af62a" dependencies = [ "ambient-authority", "fs-set-times", @@ -950,16 +944,17 @@ dependencies = [ "io-lifetimes", "ipnet", "maybe-owned", - "rustix", - "windows-sys 0.52.0", + "rustix 1.0.7", + "rustix-linux-procfs", + "windows-sys 0.59.0", "winx", ] [[package]] name = "cap-rand" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53774d49369892b70184f8312e50c1b87edccb376691de4485b0ff554b27c36c" +checksum = "0acb89ccf798a28683f00089d0630dfaceec087234eae0d308c05ddeaa941b40" dependencies = [ "ambient-authority", "rand 0.8.5", @@ -967,27 +962,27 @@ dependencies = [ [[package]] name = "cap-std" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f71b70818556b4fe2a10c7c30baac3f5f45e973f49fc2673d7c75c39d0baf5b" +checksum = "07c0355ca583dd58f176c3c12489d684163861ede3c9efa6fd8bba314c984189" dependencies = [ "cap-primitives", "io-extras", "io-lifetimes", - "rustix", + "rustix 1.0.7", ] [[package]] name = "cap-time-ext" -version = "3.4.1" +version = "3.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69dd48afa2363f746c93f961c211f6f099fb594a3446b8097bc5f79db51b6816" +checksum = "491af520b8770085daa0466978c75db90368c71896523f2464214e38359b1a5b" dependencies = [ "ambient-authority", "cap-primitives", "iana-time-zone", "once_cell", - "rustix", + "rustix 1.0.7", "winx", ] @@ -1002,15 +997,6 @@ dependencies = [ "shlex", ] -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - [[package]] name = "cfg-if" version = "1.0.0" @@ -1038,17 +1024,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "clang-sys" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading", -] - [[package]] name = "clap" version = "3.2.25" @@ -1166,20 +1141,38 @@ dependencies = [ "libc", ] +[[package]] +name = "cranelift-assembler-x64" +version = "0.120.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ff8e35182c7372df00447cb90a04e584e032c42b9b9b6e8c50ddaaf0d7900d5" +dependencies = [ + "cranelift-assembler-x64-meta", +] + +[[package]] +name = "cranelift-assembler-x64-meta" +version = "0.120.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14220f9c2698015c3b94dc6b84ae045c1c45509ddc406e43c6139252757fdb7a" +dependencies = [ + "cranelift-srcgen", +] + [[package]] name = "cranelift-bforest" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e15d04a0ce86cb36ead88ad68cf693ffd6cda47052b9e0ac114bc47fd9cd23c4" +checksum = "d372ef2777ceefd75829e1390211ac240e9196bc60699218f7ea2419038288ee" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-bitset" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c6e3969a7ce267259ce244b7867c5d3bc9e65b0a87e81039588dfdeaede9f34" +checksum = "56323783e423818fa89ce8078e90a3913d2a6e0810399bfce8ebd7ee87baa81f" dependencies = [ "serde", "serde_derive", @@ -1187,11 +1180,12 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c22032c4cb42558371cf516bb47f26cdad1819d3475c133e93c49f50ebf304e" +checksum = "74ffb780aab6186c6e9ba26519654b1ac55a09c0a866f6088a4efbbd84da68ed" dependencies = [ "bumpalo", + "cranelift-assembler-x64", "cranelift-bforest", "cranelift-bitset", "cranelift-codegen-meta", @@ -1200,10 +1194,11 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli 0.31.1", - "hashbrown 0.14.5", + "hashbrown 0.15.2", "log", + "pulley-interpreter", "regalloc2", - "rustc-hash 2.0.0", + "rustc-hash", "serde", "smallvec", "target-lexicon", @@ -1211,33 +1206,36 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c904bc71c61b27fc57827f4a1379f29de64fe95653b620a3db77d59655eee0b8" +checksum = "c23ef13814d3b39c869650d5961128cbbecad83fbdff4e6836a03ecf6862d7ed" dependencies = [ + "cranelift-assembler-x64-meta", "cranelift-codegen-shared", + "cranelift-srcgen", + "pulley-interpreter", ] [[package]] name = "cranelift-codegen-shared" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40180f5497572f644ce88c255480981ae2ec1d7bb4d8e0c0136a13b87a2f2ceb" +checksum = "b9f623300657679f847803ce80811454bfff89cea4f6bf684be5c468d4a73631" [[package]] name = "cranelift-control" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d132c6d0bd8a489563472afc171759da0707804a65ece7ceb15a8c6d7dd5ef" +checksum = "31f4168af69989aa6b91fab46799ed4df6096f3209f4a6c8fb4358f49c60188f" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d0d9618275474fbf679dd018ac6e009acbd6ae6850f6a67be33fb3b00b323" +checksum = "ca6fa9bae1c8de26d71ac2162f069447610fd91e7780cb480ee0d76ac81eabb8" dependencies = [ "cranelift-bitset", "serde", @@ -1246,9 +1244,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fac41e16729107393174b0c9e3730fb072866100e1e64e80a1a963b2e484d57" +checksum = "b8219205608aa0b0e6769b580284a7e055c7e0c323c1041cde7ca078add3e412" dependencies = [ "cranelift-codegen", "log", @@ -1258,21 +1256,27 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ca20d576e5070044d0a72a9effc2deacf4d6aa650403189d8ea50126483944d" +checksum = "588d0c5964f10860b04043e55aab26d7f7a206b0fd4f10c5260e8aa5773832bd" [[package]] name = "cranelift-native" -version = "0.116.1" +version = "0.120.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8dee82f3f1f2c4cba9177f1cc5e350fe98764379bcd29340caa7b01f85076c7" +checksum = "19ed3c94cb97b14f92b6a94a1d45ef8c851f6a2ad9114e5d91d233f7da638fed" dependencies = [ "cranelift-codegen", "libc", "target-lexicon", ] +[[package]] +name = "cranelift-srcgen" +version = "0.120.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85256fac1519a7d25a040c1d850fba67478f3f021ad5fdf738ba4425ee862dbf" + [[package]] name = "crc32fast" version = "1.4.2" @@ -1466,43 +1470,23 @@ dependencies = [ [[package]] name = "dirs" -version = "4.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" dependencies = [ - "dirs-sys 0.3.7", -] - -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys 0.4.1", + "dirs-sys", ] [[package]] name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" dependencies = [ "libc", "option-ext", - "redox_users", - "windows-sys 0.48.0", + "redox_users 0.5.0", + "windows-sys 0.59.0", ] [[package]] @@ -1512,7 +1496,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" dependencies = [ "libc", - "redox_users", + "redox_users 0.4.6", "winapi", ] @@ -1563,12 +1547,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1649,7 +1633,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947" dependencies = [ "cfg-if", - "rustix", + "rustix 0.38.39", "windows-sys 0.52.0", ] @@ -1661,12 +1645,12 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.0.33" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" +checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" dependencies = [ "crc32fast", - "miniz_oxide 0.8.0", + "miniz_oxide 0.8.9", ] [[package]] @@ -1723,7 +1707,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "033b337d725b97690d86893f9de22b67b80dcc4e9ad815f348254c38119db8fb" dependencies = [ "io-lifetimes", - "rustix", + "rustix 0.38.39", "windows-sys 0.52.0", ] @@ -1811,7 +1795,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -1919,7 +1903,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" dependencies = [ "fallible-iterator 0.3.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "stable_deref_trait", ] @@ -1941,7 +1925,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.4.0", + "indexmap 2.9.0", "slab", "tokio", "tokio-util", @@ -1960,7 +1944,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.1.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "slab", "tokio", "tokio-util", @@ -1981,7 +1965,6 @@ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", "allocator-api2", - "serde", ] [[package]] @@ -1996,11 +1979,11 @@ dependencies = [ [[package]] name = "hashlink" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.15.2", ] [[package]] @@ -2352,12 +2335,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.4.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c" +checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" dependencies = [ "equivalent", - "hashbrown 0.14.5", + "hashbrown 0.15.2", "serde", ] @@ -2398,6 +2381,22 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa2f047c0a98b2f299aa5d6d7088443570faae494e9ae1305e48be000c9e0eb1" +[[package]] +name = "ip_network_table" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4099b7cfc5c5e2fe8c5edf3f6f7adf7a714c9cc697534f63a5a5da30397cb2c0" +dependencies = [ + "ip_network", + "ip_network_table-deps-treebitmap", +] + +[[package]] +name = "ip_network_table-deps-treebitmap" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e537132deb99c0eb4b752f0346b6a836200eaaa3516dd7e5514b63930a09e5d" + [[package]] name = "ipnet" version = "2.9.0" @@ -2413,6 +2412,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -2463,7 +2471,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ee7893dab2e44ae5f9d0173f26ff4aa327c10b01b06a72b52dd9405b628640d" dependencies = [ - "indexmap 2.4.0", + "indexmap 2.9.0", ] [[package]] @@ -2479,20 +2487,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] -name = "libc" -version = "0.2.162" +name = "leb128fmt" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" +checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] -name = "libloading" -version = "0.8.5" +name = "libc" +version = "0.2.173" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" -dependencies = [ - "cfg-if", - "windows-targets 0.52.6", -] +checksum = "d8cfeafaffdbc32176b64fb251369d52ea9f0a8fbc6f8759edffef7b525d64bb" [[package]] name = "libm" @@ -2530,7 +2534,7 @@ dependencies = [ "libsql-sqlite3-parser", "serde", "serde_json", - "thiserror", + "thiserror 1.0.63", "tokio", "tokio-util", "tower 0.4.13", @@ -2558,7 +2562,7 @@ dependencies = [ "bitflags 2.6.0", "cc", "fallible-iterator 0.3.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "memchr", "phf", @@ -2569,9 +2573,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.30.1" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" +checksum = "fbb8270bb4060bd76c6e96f20c52d80620f1d82a3470885694e41e0f81ef6fe7" dependencies = [ "cc", "pkg-config", @@ -2584,6 +2588,12 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +[[package]] +name = "linux-raw-sys" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" + [[package]] name = "lock_api" version = "0.4.12" @@ -2661,7 +2671,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix", + "rustix 0.38.39", ] [[package]] @@ -2670,12 +2680,6 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - [[package]] name = "miniz_oxide" version = "0.7.4" @@ -2687,9 +2691,9 @@ dependencies = [ [[package]] name = "miniz_oxide" -version = "0.8.0" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", ] @@ -2707,9 +2711,9 @@ dependencies = [ [[package]] name = "mysql_async" -version = "0.34.2" +version = "0.35.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0b66e411c31265e879d9814d03721f2daa7ad07337b6308cb4bb0cde7e6fd47" +checksum = "d14cf024116ba8fef4a7fec5abf0bd5de89b9fb29a7e55818a119ac5ec745077" dependencies = [ "bytes", "crossbeam", @@ -2728,7 +2732,7 @@ dependencies = [ "serde", "serde_json", "socket2", - "thiserror", + "thiserror 2.0.12", "tokio", "tokio-native-tls", "tokio-util", @@ -2738,12 +2742,11 @@ dependencies = [ [[package]] name = "mysql_common" -version = "0.32.4" +version = "0.34.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478b0ff3f7d67b79da2b96f56f334431aef65e15ba4b29dd74a4236e29582bdc" +checksum = "34a9141e735d5bb02414a7ac03add09522466d4db65bdd827069f76ae0850e58" dependencies = [ - "base64 0.21.7", - "bindgen", + "base64 0.22.1", "bitflags 2.6.0", "btoi", "byteorder", @@ -2762,9 +2765,8 @@ dependencies = [ "serde_json", "sha1", "sha2", - "smallvec", "subprocess", - "thiserror", + "thiserror 1.0.63", "uuid", "zstd", ] @@ -2798,16 +2800,6 @@ dependencies = [ "libc", ] -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -2886,7 +2878,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "sha2", - "thiserror", + "thiserror 1.0.63", "url", ] @@ -2898,7 +2890,7 @@ checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "crc32fast", "hashbrown 0.15.2", - "indexmap 2.4.0", + "indexmap 2.9.0", "memchr", ] @@ -2931,7 +2923,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -2964,23 +2956,23 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab70038c28ed37b97d8ed414b6429d343a8bbf44c9f79ec854f3a643029ba6d7" +checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" dependencies = [ "futures-core", "futures-sink", "js-sys", "pin-project-lite", - "thiserror", + "thiserror 2.0.12", "tracing", ] [[package]] name = "opentelemetry-appender-tracing" -version = "0.27.0" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5feffc321035ad94088a7e5333abb4d84a8726e54a802e736ce9dd7237e85b" +checksum = "c513c7af3bec30113f3d4620134ff923295f1e9c580fda2b8abe0831f925ddc0" dependencies = [ "opentelemetry", "tracing", @@ -2990,22 +2982,23 @@ dependencies = [ [[package]] name = "opentelemetry-http" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a8a7f5f6ba7c1b286c2fbca0454eaba116f63bbe69ed250b642d36fbb04d80" +checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" dependencies = [ "async-trait", "bytes", "http 1.1.0", "opentelemetry", "reqwest 0.12.7", + "tracing", ] [[package]] name = "opentelemetry-otlp" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cf61a1868dacc576bf2b2a1c3e9ab150af7272909e80085c3173384fe11f76" +checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" dependencies = [ "async-trait", "futures-core", @@ -3016,7 +3009,7 @@ dependencies = [ "opentelemetry_sdk", "prost 0.13.3", "reqwest 0.12.7", - "thiserror", + "thiserror 2.0.12", "tokio", "tonic", "tracing", @@ -3024,9 +3017,9 @@ dependencies = [ [[package]] name = "opentelemetry-proto" -version = "0.27.0" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6e05acbfada5ec79023c85368af14abd0b307c015e9064d249b2a950ef459a6" +checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" dependencies = [ "opentelemetry", "opentelemetry_sdk", @@ -3036,9 +3029,9 @@ dependencies = [ [[package]] name = "opentelemetry_sdk" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "231e9d6ceef9b0b2546ddf52335785ce41252bc7474ee8ba05bfad277be13ab8" +checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" dependencies = [ "async-trait", "futures-channel", @@ -3049,7 +3042,7 @@ dependencies = [ "percent-encoding", "rand 0.8.5", "serde_json", - "thiserror", + "thiserror 2.0.12", "tokio", "tokio-stream", "tracing", @@ -3081,9 +3074,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "paho-mqtt" -version = "0.12.5" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8367868d51cef74c28da328ed8f60529ddd3f04dca1867dd825fcc3085a4308" +checksum = "e2a9dc54c16b2e290ab3045b214a2a4effb61a42cf920cc83aa250367a4cceed" dependencies = [ "async-channel 1.9.0", "crossbeam-channel", @@ -3092,14 +3085,14 @@ dependencies = [ "libc", "log", "paho-mqtt-sys", - "thiserror", + "thiserror 1.0.63", ] [[package]] name = "paho-mqtt-sys" -version = "0.9.0" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e482419d847af4ec43c07eed70f5f94f87dc712d267aecc91ab940944ab6bf4" +checksum = "4d3094e35ab92c9ffa90775d8faad0e8ecac0a0ed4c409c3e683cbf84f784287" dependencies = [ "cmake", "openssl-sys", @@ -3163,7 +3156,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.4.0", + "indexmap 2.9.0", ] [[package]] @@ -3222,7 +3215,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -3264,7 +3257,7 @@ dependencies = [ "concurrent-queue", "hermit-abi 0.4.0", "pin-project-lite", - "rustix", + "rustix 0.38.39", "tracing", "windows-sys 0.59.0", ] @@ -3365,9 +3358,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] @@ -3399,10 +3392,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools", + "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -3412,10 +3405,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5" dependencies = [ "anyhow", - "itertools", + "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -3429,13 +3422,12 @@ dependencies = [ [[package]] name = "pulley-interpreter" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62d95f8575df49a2708398182f49a888cf9dc30210fb1fd2df87c889edcee75d" +checksum = "aeb99cb5a3ada8e95a246d09f5fdb609f021bf740efd3ca9bddf458e3293a6a0" dependencies = [ "cranelift-bitset", "log", - "sptr", "wasmtime-math", ] @@ -3564,9 +3556,9 @@ dependencies = [ [[package]] name = "redis" -version = "0.28.1" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f89727cba9cec05cc579942321ff6dd09fe57a8b3217f52f952301efa010da5" +checksum = "1bc42f3a12fd4408ce64d8efef67048a924e543bd35c6591c0447fda9054695f" dependencies = [ "arc-swap", "backon", @@ -3605,20 +3597,31 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom 0.2.15", "libredox", - "thiserror", + "thiserror 1.0.63", +] + +[[package]] +name = "redox_users" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b" +dependencies = [ + "getrandom 0.2.15", + "libredox", + "thiserror 2.0.12", ] [[package]] name = "regalloc2" -version = "0.11.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145c1c267e14f20fb0f88aa76a1c5ffec42d592c1d28b3cd9148ae35916158d3" +checksum = "5216b1837de2149f8bc8e6d5f88a9326b63b8c836ed58ce4a0a29ec736a59734" dependencies = [ "allocator-api2", "bumpalo", "hashbrown 0.15.2", "log", - "rustc-hash 2.0.0", + "rustc-hash", "smallvec", ] @@ -3788,7 +3791,7 @@ dependencies = [ "rustls-native-certs 0.7.3", "rustls-pemfile 2.1.3", "rustls-webpki 0.102.8", - "thiserror", + "thiserror 1.0.63", "tokio", "tokio-rustls 0.25.0", "url", @@ -3796,9 +3799,9 @@ dependencies = [ [[package]] name = "rusqlite" -version = "0.32.1" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7753b721174eb8ff87a9a0e799e2d7bc3749323e773db92e0984debb00019d6e" +checksum = "37e34486da88d8e051c7c0e23c3f15fd806ea8546260aa2fec247e97242ec143" dependencies = [ "bitflags 2.6.0", "fallible-iterator 0.3.0", @@ -3814,12 +3817,6 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - [[package]] name = "rustc-hash" version = "2.0.0" @@ -3850,7 +3847,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "thiserror", + "thiserror 1.0.63", "tracing", "url", ] @@ -3877,13 +3874,34 @@ checksum = "375116bee2be9ed569afe2154ea6a99dfdffd257f533f187498c2a8f5feaf4ee" dependencies = [ "bitflags 2.6.0", "errno", - "itoa", "libc", - "linux-raw-sys", - "once_cell", + "linux-raw-sys 0.4.14", "windows-sys 0.52.0", ] +[[package]] +name = "rustix" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +dependencies = [ + "bitflags 2.6.0", + "errno", + "libc", + "linux-raw-sys 0.9.4", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustix-linux-procfs" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fc84bf7e9aa16c4f2c758f27412dc9841341e16aa682d9c7ac308fe3ee12056" +dependencies = [ + "once_cell", + "rustix 1.0.7", +] + [[package]] name = "rustls" version = "0.21.12" @@ -3971,9 +3989,12 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.8.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" +checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +dependencies = [ + "zeroize", +] [[package]] name = "rustls-webpki" @@ -4033,6 +4054,32 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "schemars" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +dependencies = [ + "dyn-clone", + "indexmap 2.9.0", + "schemars_derive", + "semver", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.103", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -4098,7 +4145,18 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.103", ] [[package]] @@ -4131,7 +4189,7 @@ checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" dependencies = [ "percent-encoding", "serde", - "thiserror", + "thiserror 1.0.63", ] [[package]] @@ -4192,15 +4250,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "shellexpand" -version = "2.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ccc8076840c4da029af4f87e4e8daeb0fca6b87bbb02e10cb60b791450e11e4" -dependencies = [ - "dirs 4.0.0", -] - [[package]] name = "shlex" version = "1.3.0" @@ -4270,8 +4319,8 @@ dependencies = [ [[package]] name = "spin-app" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "serde", @@ -4281,11 +4330,11 @@ dependencies = [ [[package]] name = "spin-common" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", - "dirs 5.0.1", + "dirs", "sha2", "tempfile", "tokio", @@ -4294,40 +4343,40 @@ dependencies = [ [[package]] name = "spin-componentize" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "tracing", - "wasm-encoder 0.217.0", - "wasm-metadata 0.217.0", - "wasmparser 0.217.0", - "wit-component 0.217.0", - "wit-parser 0.217.0", + "wasm-encoder 0.230.0", + "wasm-metadata 0.230.0", + "wasmparser 0.230.0", + "wit-component 0.230.0", + "wit-parser 0.230.0", ] [[package]] name = "spin-compose" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", "spin-app", "spin-common", "spin-componentize", "spin-serde", - "thiserror", + "thiserror 2.0.12", "tokio", "wac-graph", ] [[package]] name = "spin-core" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", @@ -4337,9 +4386,9 @@ dependencies = [ [[package]] name = "spin-executor" -version = "3.0.1" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2df1a5e2cc70a628c9ea6914770c234cc4a292218091e6707ae8be68b4a5de76" +checksum = "8d11baf86ca52100e8742ea43d2c342cf4d75b94f8a85454cf44fd108cdd71d5" dependencies = [ "futures", "once_cell", @@ -4348,20 +4397,20 @@ dependencies = [ [[package]] name = "spin-expressions" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", "futures", "spin-locked-app", - "thiserror", + "thiserror 2.0.12", ] [[package]] name = "spin-factor-key-value" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "serde", @@ -4370,7 +4419,7 @@ dependencies = [ "spin-locked-app", "spin-resource-table", "spin-world", - "thiserror", + "thiserror 2.0.12", "tokio", "toml", "tracing", @@ -4378,8 +4427,8 @@ dependencies = [ [[package]] name = "spin-factor-llm" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", @@ -4397,14 +4446,13 @@ dependencies = [ [[package]] name = "spin-factor-outbound-http" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "http 1.1.0", "http-body-util", "hyper 1.4.1", - "ip_network", "reqwest 0.12.7", "rustls 0.23.13", "spin-factor-outbound-networking", @@ -4421,8 +4469,8 @@ dependencies = [ [[package]] name = "spin-factor-outbound-mqtt" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "rumqttc", @@ -4437,8 +4485,8 @@ dependencies = [ [[package]] name = "spin-factor-outbound-mysql" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "mysql_async", @@ -4454,15 +4502,15 @@ dependencies = [ [[package]] name = "spin-factor-outbound-networking" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "futures-util", "http 1.1.0", - "ipnet", + "ip_network", + "ip_network_table", "rustls 0.23.13", - "rustls-pemfile 2.1.3", "rustls-pki-types", "serde", "spin-expressions", @@ -4480,8 +4528,8 @@ dependencies = [ [[package]] name = "spin-factor-outbound-pg" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "chrono", @@ -4499,8 +4547,8 @@ dependencies = [ [[package]] name = "spin-factor-outbound-redis" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "redis 0.25.4", @@ -4514,8 +4562,8 @@ dependencies = [ [[package]] name = "spin-factor-sqlite" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "async-trait", "spin-factors", @@ -4528,8 +4576,8 @@ dependencies = [ [[package]] name = "spin-factor-variables" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "spin-expressions", "spin-factors", @@ -4539,8 +4587,8 @@ dependencies = [ [[package]] name = "spin-factor-wasi" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "async-trait", "bytes", @@ -4553,32 +4601,32 @@ dependencies = [ [[package]] name = "spin-factors" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "serde", "spin-app", "spin-factors-derive", - "thiserror", + "thiserror 2.0.12", "toml", "wasmtime", ] [[package]] name = "spin-factors-derive" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] name = "spin-factors-executor" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "spin-app", @@ -4588,8 +4636,8 @@ dependencies = [ [[package]] name = "spin-key-value-aws" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-once-cell", @@ -4603,8 +4651,8 @@ dependencies = [ [[package]] name = "spin-key-value-azure" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", @@ -4619,11 +4667,11 @@ dependencies = [ [[package]] name = "spin-key-value-redis" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", - "redis 0.28.1", + "redis 0.29.5", "serde", "spin-core", "spin-factor-key-value", @@ -4633,8 +4681,8 @@ dependencies = [ [[package]] name = "spin-key-value-spin" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "rusqlite", @@ -4647,8 +4695,8 @@ dependencies = [ [[package]] name = "spin-llm-remote-http" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "reqwest 0.12.7", @@ -4661,29 +4709,31 @@ dependencies = [ [[package]] name = "spin-locked-app" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", + "itertools 0.14.0", "serde", "serde_json", "spin-serde", - "thiserror", + "thiserror 2.0.12", ] [[package]] name = "spin-manifest" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", - "indexmap 2.4.0", + "indexmap 2.9.0", + "schemars", "semver", "serde", "spin-serde", "terminal", - "thiserror", + "thiserror 2.0.12", "toml", "url", "wasm-pkg-common", @@ -4710,13 +4760,13 @@ dependencies = [ [[package]] name = "spin-resource-table" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" [[package]] name = "spin-runtime-config" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "spin-common", @@ -4744,8 +4794,8 @@ dependencies = [ [[package]] name = "spin-runtime-factors" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "clap", @@ -4771,11 +4821,12 @@ dependencies = [ [[package]] name = "spin-serde" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "base64 0.22.1", + "schemars", "semver", "serde", "wasm-pkg-common", @@ -4783,8 +4834,8 @@ dependencies = [ [[package]] name = "spin-sqlite" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "serde", "spin-factor-sqlite", @@ -4796,8 +4847,8 @@ dependencies = [ [[package]] name = "spin-sqlite-inproc" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", @@ -4809,8 +4860,8 @@ dependencies = [ [[package]] name = "spin-sqlite-libsql" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "async-trait", @@ -4822,8 +4873,8 @@ dependencies = [ [[package]] name = "spin-telemetry" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "http 0.2.12", @@ -4840,8 +4891,8 @@ dependencies = [ [[package]] name = "spin-trigger" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "anyhow", "clap", @@ -4866,8 +4917,8 @@ dependencies = [ [[package]] name = "spin-variables" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "azure_core 0.20.0", "azure_identity 0.20.0", @@ -4885,8 +4936,8 @@ dependencies = [ [[package]] name = "spin-world" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "async-trait", "wasmtime", @@ -4904,12 +4955,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - [[package]] name = "stringprep" version = "0.1.5" @@ -4956,9 +5001,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "e4307e30089d6fd6aff212f2da3a1f9e32f3223b1f010fb09b7c95f90f3ca1e8" dependencies = [ "proc-macro2", "quote", @@ -5045,7 +5090,7 @@ dependencies = [ "cap-std", "fd-lock", "io-lifetimes", - "rustix", + "rustix 0.38.39", "windows-sys 0.52.0", "winx", ] @@ -5065,7 +5110,7 @@ dependencies = [ "cfg-if", "fastrand 2.1.0", "once_cell", - "rustix", + "rustix 0.38.39", "windows-sys 0.59.0", ] @@ -5080,8 +5125,8 @@ dependencies = [ [[package]] name = "terminal" -version = "3.2.0" -source = "git+https://github.com/spinframework/spin?tag=v3.2.0#c9be6d8feafc15cf1e1ef17bd9f6cb72988fa350" +version = "3.3.0" +source = "git+https://github.com/spinframework/spin?tag=v3.3.0#9dadd8c4bf347e5703f9488a7ec7eb4239cd083c" dependencies = [ "termcolor", ] @@ -5098,7 +5143,16 @@ version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.63", +] + +[[package]] +name = "thiserror" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +dependencies = [ + "thiserror-impl 2.0.12", ] [[package]] @@ -5109,7 +5163,18 @@ checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.103", ] [[package]] @@ -5198,7 +5263,7 @@ checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] @@ -5299,7 +5364,7 @@ version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" dependencies = [ - "indexmap 2.4.0", + "indexmap 2.9.0", "serde", "serde_spanned", "toml_datetime", @@ -5321,7 +5386,7 @@ version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ - "indexmap 2.4.0", + "indexmap 2.9.0", "serde", "serde_spanned", "toml_datetime", @@ -5358,6 +5423,12 @@ dependencies = [ "tracing", ] +[[package]] +name = "topological-sort" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea68304e134ecd095ac6c3574494fc62b909f416c4fca77e440530221e549d3d" + [[package]] name = "tower" version = "0.4.13" @@ -5406,9 +5477,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "log", "pin-project-lite", @@ -5418,20 +5489,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "1b1ffbcf9c6f6b99d386e7444eb608ba646ae452a36b39737deb9663b610f662" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" dependencies = [ "once_cell", "valuable", @@ -5439,9 +5510,9 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a971f6058498b5c0f1affa23e7ea202057a7301dbff68e968b2d578bcbd053" +checksum = "721f2d2569dce9f3dfbbddee5906941e953bfcdf736a62da3377f5751650cc36" dependencies = [ "js-sys", "once_cell", @@ -5492,12 +5563,12 @@ checksum = "70977707304198400eb4835a78f6a9f928bf41bba420deb8fdb175cd965d77a7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] name = "trigger-mqtt" -version = "0.4.0" +version = "0.4.1" dependencies = [ "anyhow", "clap", @@ -5525,14 +5596,9 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "twox-hash" -version = "1.6.3" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" -dependencies = [ - "cfg-if", - "rand 0.8.5", - "static_assertions", -] +checksum = "8b907da542cbced5261bd3256de1b3a1bf340a3d37f93425a07362a1d687de56" [[package]] name = "typenum" @@ -5657,7 +5723,7 @@ dependencies = [ "rustify_derive", "serde", "serde_json", - "thiserror", + "thiserror 1.0.63", "tracing", "url", ] @@ -5688,11 +5754,11 @@ checksum = "d94268a683b67ae20210565b5f91e106fe05034c36b931e739fe90377ed80b98" dependencies = [ "anyhow", "id-arena", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "petgraph", "semver", - "thiserror", + "thiserror 1.0.63", "wac-types", "wasm-encoder 0.202.0", "wasm-metadata 0.202.0", @@ -5707,7 +5773,7 @@ checksum = "f5028a15e266f4c8fed48beb95aebb76af5232dcd554fd849a305a4e5cce1563" dependencies = [ "anyhow", "id-arena", - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", "wasm-encoder 0.202.0", "wasmparser 0.202.0", @@ -5768,7 +5834,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", "wasm-bindgen-shared", ] @@ -5802,7 +5868,7 @@ checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5842,22 +5908,32 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.217.0" +version = "0.229.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b88b0814c9a2b323a9b46c687e726996c255ac8b64aa237dd11c81ed4854760" +checksum = "38ba1d491ecacb085a2552025c10a675a6fddcbd03b1fc9b36c536010ce265d2" dependencies = [ - "leb128", - "wasmparser 0.217.0", + "leb128fmt", + "wasmparser 0.229.0", ] [[package]] name = "wasm-encoder" -version = "0.221.3" +version = "0.230.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc8444fe4920de80a4fe5ab564fff2ae58b6b73166b89751f8c6c93509da32e5" +checksum = "d4349d0943718e6e434b51b9639e876293093dca4b96384fb136ab5bd5ce6660" dependencies = [ - "leb128", - "wasmparser 0.221.3", + "leb128fmt", + "wasmparser 0.230.0", +] + +[[package]] +name = "wasm-encoder" +version = "0.235.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3bc393c395cb621367ff02d854179882b9a351b4e0c93d1397e6090b53a5c2a" +dependencies = [ + "leb128fmt", + "wasmparser 0.235.0", ] [[package]] @@ -5867,7 +5943,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18ebaa7bd0f9e7a5e5dd29b9a998acf21c4abed74265524dd7e85934597bfb10" dependencies = [ "anyhow", - "indexmap 2.4.0", + "indexmap 2.9.0", "serde", "serde_derive", "serde_json", @@ -5883,7 +5959,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "094aea3cb90e09f16ee25a4c0e324b3e8c934e7fd838bfa039aef5352f44a917" dependencies = [ "anyhow", - "indexmap 2.4.0", + "indexmap 2.9.0", "serde", "serde_derive", "serde_json", @@ -5894,25 +5970,28 @@ dependencies = [ [[package]] name = "wasm-metadata" -version = "0.217.0" +version = "0.230.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65a146bf9a60e9264f0548a2599aa9656dba9a641eff9ab88299dc2a637e483c" +checksum = "1a52e010df5494f4289ccc68ce0c2a8c17555225a5e55cc41b98f5ea28d0844b" dependencies = [ "anyhow", - "indexmap 2.4.0", + "auditable-serde", + "flate2", + "indexmap 2.9.0", "serde", "serde_derive", "serde_json", "spdx", - "wasm-encoder 0.217.0", - "wasmparser 0.217.0", + "url", + "wasm-encoder 0.230.0", + "wasmparser 0.230.0", ] [[package]] name = "wasm-pkg-common" -version = "0.8.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca6fb1d9c267809e4e9db5cfea0907dd818bf88b682b3ef609fa104b68c305f" +checksum = "5e003b5142b594d7effff9dadf09573d8378edfd571b25ed83c5079c4ff2a8e5" dependencies = [ "anyhow", "bytes", @@ -5923,7 +6002,7 @@ dependencies = [ "serde", "serde_json", "sha2", - "thiserror", + "thiserror 1.0.63", "tokio", "toml", "tracing", @@ -5948,7 +6027,7 @@ version = "0.118.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" dependencies = [ - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", ] @@ -5959,7 +6038,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab" dependencies = [ "bitflags 2.6.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", ] @@ -5970,53 +6049,63 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6998515d3cf3f8b980ef7c11b29a9b1017d4cf86b99ae93b546992df9931413" dependencies = [ "bitflags 2.6.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", ] [[package]] name = "wasmparser" -version = "0.217.0" +version = "0.229.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca917a21307d3adf2b9857b94dd05ebf8496bdcff4437a9b9fb3899d3e6c74e7" +checksum = "0cc3b1f053f5d41aa55640a1fa9b6d1b8a9e4418d118ce308d20e24ff3575a8c" dependencies = [ - "ahash", "bitflags 2.6.0", - "hashbrown 0.14.5", - "indexmap 2.4.0", + "hashbrown 0.15.2", + "indexmap 2.9.0", "semver", "serde", ] [[package]] name = "wasmparser" -version = "0.221.3" +version = "0.230.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d06bfa36ab3ac2be0dee563380147a5b81ba10dd8885d7fbbc9eb574be67d185" +checksum = "808198a69b5a0535583370a51d459baa14261dfab04800c4864ee9e1a14346ed" dependencies = [ "bitflags 2.6.0", "hashbrown 0.15.2", - "indexmap 2.4.0", + "indexmap 2.9.0", "semver", "serde", ] +[[package]] +name = "wasmparser" +version = "0.235.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "161296c618fa2d63f6ed5fffd1112937e803cb9ec71b32b01a76321555660917" +dependencies = [ + "bitflags 2.6.0", + "indexmap 2.9.0", + "semver", +] + [[package]] name = "wasmprinter" -version = "0.221.3" +version = "0.229.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7343c42a97f2926c7819ff81b64012092ae954c5d83ddd30c9fcdefd97d0b283" +checksum = "d25dac01892684a99b8fbfaf670eb6b56edea8a096438c75392daeb83156ae2e" dependencies = [ "anyhow", "termcolor", - "wasmparser 0.221.3", + "wasmparser 0.229.0", ] [[package]] name = "wasmtime" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11976a250672556d1c4c04c6d5d7656ac9192ac9edc42a4587d6c21460010e69" +checksum = "15396de4fce22e431aa913a9d17325665e72a39aaa7972c8aeae7507eff6144f" dependencies = [ "addr2line 0.24.2", "anyhow", @@ -6028,8 +6117,8 @@ dependencies = [ "encoding_rs", "fxprof-processed-profile", "gimli 0.31.1", - "hashbrown 0.14.5", - "indexmap 2.4.0", + "hashbrown 0.15.2", + "indexmap 2.9.0", "ittapi", "libc", "log", @@ -6037,12 +6126,11 @@ dependencies = [ "memfd", "object", "once_cell", - "paste", "postcard", "psm", "pulley-interpreter", "rayon", - "rustix", + "rustix 1.0.7", "semver", "serde", "serde_derive", @@ -6051,8 +6139,8 @@ dependencies = [ "sptr", "target-lexicon", "trait-variant", - "wasm-encoder 0.221.3", - "wasmparser 0.221.3", + "wasm-encoder 0.229.0", + "wasmparser 0.229.0", "wasmtime-asm-macros", "wasmtime-cache", "wasmtime-component-macro", @@ -6072,25 +6160,25 @@ dependencies = [ [[package]] name = "wasmtime-asm-macros" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f178b0d125201fbe9f75beaf849bd3e511891f9e45ba216a5b620802ccf64f2" +checksum = "c8d13b1a25d9b77ce42b4641a797e8c0bde0643b9ad5aaa36ce7e00cf373ffab" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b1161c8f62880deea07358bc40cceddc019f1c81d46007bc390710b2fe24ffc" +checksum = "dfc77a5e7d358c0180745021735de789e0d8d64a9eb740d54cee525a164f0343" dependencies = [ "anyhow", - "base64 0.21.7", + "base64 0.22.1", "directories-next", "log", "postcard", - "rustix", + "rustix 1.0.7", "serde", "serde_derive", "sha2", @@ -6101,30 +6189,30 @@ dependencies = [ [[package]] name = "wasmtime-component-macro" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d74de6592ed945d0a602f71243982a304d5d02f1e501b638addf57f42d57dfaf" +checksum = "be73f1c13b25cf7c062ea2f3aba8a92abe4284a14b49e866e4962824802da5cf" dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", "wasmtime-component-util", "wasmtime-wit-bindgen", - "wit-parser 0.221.3", + "wit-parser 0.229.0", ] [[package]] name = "wasmtime-component-util" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707dc7b3c112ab5a366b30cfe2fb5b2f8e6a0f682f16df96a5ec582bfe6f056e" +checksum = "1cba282555a9f2443f4e40e415772ea98acabbc341e9b3b905f541ff304cbc5e" [[package]] name = "wasmtime-cranelift" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "366be722674d4bf153290fbcbc4d7d16895cc82fb3e869f8d550ff768f9e9e87" +checksum = "a0c2c2e083dc4c119cca61cc42ca6b3711b75ed9823f77b684ee009c74f939d8" dependencies = [ "anyhow", "cfg-if", @@ -6134,29 +6222,30 @@ dependencies = [ "cranelift-frontend", "cranelift-native", "gimli 0.31.1", - "itertools", + "itertools 0.14.0", "log", "object", + "pulley-interpreter", "smallvec", "target-lexicon", - "thiserror", - "wasmparser 0.221.3", + "thiserror 2.0.12", + "wasmparser 0.229.0", "wasmtime-environ", "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-environ" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdadc1af7097347aa276a4f008929810f726b5b46946971c660b6d421e9994ad" +checksum = "357542664493b1359727f235b615ae74f63bd46aa4d0c587b09e3b060eb0b8ef" dependencies = [ "anyhow", "cpp_demangle", "cranelift-bitset", "cranelift-entity", "gimli 0.31.1", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "object", "postcard", @@ -6166,22 +6255,22 @@ dependencies = [ "serde_derive", "smallvec", "target-lexicon", - "wasm-encoder 0.221.3", - "wasmparser 0.221.3", + "wasm-encoder 0.229.0", + "wasmparser 0.229.0", "wasmprinter", "wasmtime-component-util", ] [[package]] name = "wasmtime-fiber" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccba90d4119f081bca91190485650730a617be1fff5228f8c4757ce133d21117" +checksum = "d83e697b13d6ae9eff31edac86673aabaf8dbf20267f2aa20e831dd01da480a3" dependencies = [ "anyhow", "cc", "cfg-if", - "rustix", + "rustix 1.0.7", "wasmtime-asm-macros", "wasmtime-versioned-export-macros", "windows-sys 0.59.0", @@ -6189,20 +6278,21 @@ dependencies = [ [[package]] name = "wasmtime-jit-debug" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e7b61488a5ee00c35c8c22de707c36c0aecacf419a3be803a6a2ba5e860f56a" +checksum = "6748fe974240d45e6bb25ac8e9a600be36f77347253cbbb35bd2d72e01ff0ece" dependencies = [ + "cc", "object", - "rustix", + "rustix 1.0.7", "wasmtime-versioned-export-macros", ] [[package]] name = "wasmtime-jit-icache-coherence" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec5e8552e01692e6c2e5293171704fed8abdec79d1a6995a0870ab190e5747d1" +checksum = "175e924dbc944c185808466d1e90b5a7feb610f3b9abdfe26f8ee25fd1086d1c" dependencies = [ "anyhow", "cfg-if", @@ -6212,35 +6302,35 @@ dependencies = [ [[package]] name = "wasmtime-math" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29210ec2aa25e00f4d54605cedaf080f39ec01a872c5bd520ad04c67af1dde17" +checksum = "0d9448adcd9c5980c0eac1630794bd1be3cf573c28d0630f7d3184405b36bcfe" dependencies = [ "libm", ] [[package]] name = "wasmtime-slab" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb5821a96fa04ac14bc7b158bb3d5cd7729a053db5a74dad396cd513a5e5ccf" +checksum = "b50f7c227d6a925d9dfd0fbfdbf06877cb2fe387bb3248049706b19b5f86e560" [[package]] name = "wasmtime-versioned-export-macros" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ff86db216dc0240462de40c8290887a613dddf9685508eb39479037ba97b5b" +checksum = "55b39ffeda28be925babb2d45067d8ba2c67d2227328c5364d23b4152eba9950" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] name = "wasmtime-wasi" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d1be69bfcab1bdac74daa7a1f9695ab992b9c8e21b9b061e7d66434097e0ca4" +checksum = "1d357e5699ed32103d0dab897c3965fd66f1ba29a37072d441199e7febe6324e" dependencies = [ "anyhow", "async-trait", @@ -6255,23 +6345,23 @@ dependencies = [ "futures", "io-extras", "io-lifetimes", - "rustix", + "rustix 1.0.7", "system-interface", - "thiserror", + "thiserror 2.0.12", "tokio", "tracing", - "trait-variant", "url", "wasmtime", + "wasmtime-wasi-io", "wiggle", "windows-sys 0.59.0", ] [[package]] name = "wasmtime-wasi-http" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ab36725582dce3cb191e70ef0b6b10d375df83e61c579ee6798b860ce73d94c" +checksum = "7db9276689904ae7ed4359253d120015ec20cd14fc4c311db2f10a87576c44ab" dependencies = [ "anyhow", "async-trait", @@ -6290,18 +6380,31 @@ dependencies = [ "webpki-roots 0.26.5", ] +[[package]] +name = "wasmtime-wasi-io" +version = "33.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43418871afd46c188231e4d822d375c0660c7a1484db3f7f247e552186e971a2" +dependencies = [ + "anyhow", + "async-trait", + "bytes", + "futures", + "wasmtime", +] + [[package]] name = "wasmtime-winch" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdbabfb8f20502d5e1d81092b9ead3682ae59988487aafcd7567387b7a43cf8f" +checksum = "1f180e6a8c0724608cd2d55ceb7d03ed3a729ca78fcd34a6756f36cf9a5fd546" dependencies = [ "anyhow", "cranelift-codegen", "gimli 0.31.1", "object", "target-lexicon", - "wasmparser 0.221.3", + "wasmparser 0.229.0", "wasmtime-cranelift", "wasmtime-environ", "winch-codegen", @@ -6309,14 +6412,14 @@ dependencies = [ [[package]] name = "wasmtime-wit-bindgen" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8358319c2dd1e4db79e3c1c5d3a5af84956615343f9f89f4e4996a36816e06e6" +checksum = "6f8d793a398e2974d562e65c8d366f39a942fe1ce7970244d9d6e5f96f29b534" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.4.0", - "wit-parser 0.221.3", + "indexmap 2.9.0", + "wit-parser 0.229.0", ] [[package]] @@ -6330,24 +6433,24 @@ dependencies = [ [[package]] name = "wast" -version = "221.0.3" +version = "235.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e0d10d282261b825ffb3d49f46e8309e60a8b608328b6a0b0578e80f3f98e57" +checksum = "1eda4293f626c99021bb3a6fbe4fbbe90c0e31a5ace89b5f620af8925de72e13" dependencies = [ "bumpalo", - "leb128", + "leb128fmt", "memchr", "unicode-width", - "wasm-encoder 0.221.3", + "wasm-encoder 0.235.0", ] [[package]] name = "wat" -version = "1.221.3" +version = "1.235.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d744e4500534bada448bf611109a6b972160f94c8e8bcbe421e7be06ea346520" +checksum = "e777e0327115793cb96ab220b98f85327ec3d11f34ec9e8d723264522ef206aa" dependencies = [ - "wast 221.0.3", + "wast 235.0.0", ] [[package]] @@ -6398,14 +6501,14 @@ dependencies = [ [[package]] name = "wiggle" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b9af35bc9629c52c261465320a9a07959164928b4241980ba1cf923b9e6751d" +checksum = "73aed697b5eb6a5726dca57f85199f73c61dee669e58faab71086eb7eda6b077" dependencies = [ "anyhow", "async-trait", "bitflags 2.6.0", - "thiserror", + "thiserror 2.0.12", "tracing", "wasmtime", "wiggle-macro", @@ -6413,28 +6516,27 @@ dependencies = [ [[package]] name = "wiggle-generate" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cf267dd05673912c8138f4b54acabe6bd53407d9d1536f0fadb6520dd16e101" +checksum = "d477015cda1d476b7e45d50eeb93d9038df8f24827007669065292651b26d225" dependencies = [ "anyhow", "heck 0.5.0", "proc-macro2", "quote", - "shellexpand", - "syn 2.0.87", + "syn 2.0.103", "witx", ] [[package]] name = "wiggle-macro" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c5c473d4198e6c2d377f3809f713ff0c110cab88a0805ae099a82119ee250c" +checksum = "71ac603ee46847d2e3c142ba715d326f1045155c7758f4e8dd001d5f92810c12" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", "wiggle-generate", ] @@ -6471,18 +6573,19 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winch-codegen" -version = "29.0.1" +version = "33.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f849ef2c5f46cb0a20af4b4487aaa239846e52e2c03f13fa3c784684552859c" +checksum = "ad3072bf7c270d5e29a3d69744c81665dd3adb6e60f123925393a1c150bf9ec4" dependencies = [ "anyhow", + "cranelift-assembler-x64", "cranelift-codegen", "gimli 0.31.1", "regalloc2", "smallvec", "target-lexicon", - "thiserror", - "wasmparser 0.221.3", + "thiserror 2.0.12", + "wasmparser 0.229.0", "wasmtime-cranelift", "wasmtime-environ", ] @@ -6746,7 +6849,7 @@ dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", "wit-bindgen-core", "wit-bindgen-rust", "wit-component 0.18.2", @@ -6760,7 +6863,7 @@ checksum = "5b8a35a2a9992898c9d27f1664001860595a4bc99d32dd3599d547412e17d7e2" dependencies = [ "anyhow", "bitflags 2.6.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "serde", "serde_derive", @@ -6773,21 +6876,21 @@ dependencies = [ [[package]] name = "wit-component" -version = "0.217.0" +version = "0.230.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7117809905e49db716d81e794f79590c052bf2fdbbcda1731ca0fb28f6f3ddf" +checksum = "b607b15ead6d0e87f5d1613b4f18c04d4e80ceeada5ffa608d8360e6909881df" dependencies = [ "anyhow", "bitflags 2.6.0", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "serde", "serde_derive", "serde_json", - "wasm-encoder 0.217.0", - "wasm-metadata 0.217.0", - "wasmparser 0.217.0", - "wit-parser 0.217.0", + "wasm-encoder 0.230.0", + "wasm-metadata 0.230.0", + "wasmparser 0.230.0", + "wit-parser 0.230.0", ] [[package]] @@ -6798,7 +6901,7 @@ checksum = "316b36a9f0005f5aa4b03c39bc3728d045df136f8c13a73b7db4510dec725e08" dependencies = [ "anyhow", "id-arena", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "semver", "serde", @@ -6809,38 +6912,38 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.217.0" +version = "0.229.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb893dcd6d370cfdf19a0d9adfcd403efb8e544e1a0ea3a8b81a21fe392eaa78" +checksum = "459c6ba62bf511d6b5f2a845a2a736822e38059c1cfa0b644b467bbbfae4efa6" dependencies = [ "anyhow", "id-arena", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "semver", "serde", "serde_derive", "serde_json", "unicode-xid", - "wasmparser 0.217.0", + "wasmparser 0.229.0", ] [[package]] name = "wit-parser" -version = "0.221.3" +version = "0.230.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "896112579ed56b4a538b07a3d16e562d101ff6265c46b515ce0c701eef16b2ac" +checksum = "679fde5556495f98079a8e6b9ef8c887f731addaffa3d48194075c1dd5cd611b" dependencies = [ "anyhow", "id-arena", - "indexmap 2.4.0", + "indexmap 2.9.0", "log", "semver", "serde", "serde_derive", "serde_json", "unicode-xid", - "wasmparser 0.221.3", + "wasmparser 0.230.0", ] [[package]] @@ -6851,7 +6954,7 @@ checksum = "e366f27a5cabcddb2706a78296a40b8fcc451e1a6aba2fc1d94b4a01bdaaef4b" dependencies = [ "anyhow", "log", - "thiserror", + "thiserror 1.0.63", "wast 35.0.2", ] @@ -6879,7 +6982,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.103", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 393b6be..48d7cf0 100755 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "trigger-mqtt" -version = "0.4.0" +version = "0.4.1" edition = "2021" rust-version = "1.81" @@ -9,18 +9,18 @@ anyhow = "1.0.68" clap = { version = "3.1.15", features = ["derive", "env"] } futures = "0.3.25" serde = "1.0.188" -spin-app = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-core = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-expressions = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-factors = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-runtime-factors = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-trigger = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-telemetry = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -spin-factor-variables = { git = "https://github.com/spinframework/spin", tag = "v3.2.0" } -tokio = { version = "1.37", features = ["full"] } -tracing = { version = "0.1", features = ["log"] } -paho-mqtt = { version = "0.12.3", features = ["vendored-ssl"] } -wasmtime = { version = "29.0.1" } +spin-app = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-core = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-expressions = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-factors = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-runtime-factors = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-trigger = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-telemetry = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +spin-factor-variables = { git = "https://github.com/spinframework/spin", tag = "v3.3.0" } +tokio = { version = "1", features = ["full"] } +tracing = { version = "0.1.41", features = ["log"] } +paho-mqtt = { version = "0.13.3", features = ["vendored-ssl"] } +wasmtime = { version = "33.0.0" } [workspace] members = ["sdk", "sdk/macro"] diff --git a/README.md b/README.md index 8d7c2f8..25fe147 100755 --- a/README.md +++ b/README.md @@ -67,6 +67,16 @@ To inject the Spin variable using environment variables: SPIN_VARIABLE_PASSWORD=password spin up ``` +To skip authentication, set the `username` and `password` fields to empty strings: + +```toml +[application.trigger.mqtt] +address = "mqtt://localhost:1883" +username = "admin" +password = "public" +keep_alive_interval = "30" +``` + ## State of Play 1. Authenticates using anonymous and username/password to MQTT server. @@ -74,11 +84,31 @@ SPIN_VARIABLE_PASSWORD=password spin up [more MQTT client/subscription attributes will be available soon] +## Running an MQTT Broker + +Download [MQTTX CLI](https://github.com/emqx/MQTTX/tree/main/cli) + +```sh +brew install emqx/mqttx/mqttx-cli +``` + +Run the EMQX broker: https://mqttx.app/docs/get-started + +```sh +docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx +``` + +The default username and password of the broker is `admin` and `public`. + +> Alternatively, use [Mosquitto's public MQTT broker](https://test.mosquitto.org/) without authentication by setting the broker hostname to `test.mosquitto.org`. + ## Dev Loop [Build and Install from Source] +For this simple dev loop, make sure you have access to an MQTT broker. The following steps assume you followed the section to [run an MQTT broker locally](#running-an-mqtt-broker). + * Open the repo in Dev Container or in pre-configured GitHub [Codespace](https://codespaces.new/spinkube/spin-trigger-mqtt) * Run ```make``` to build and install the plugin locally. * Update ```examples/mqtt-app/spin.toml``` to reflect your MQTT server details and ensure it's accessible on the network. * Run ```spin build --up --from examples/mqtt-app/spin.toml``` to run the example Spin app. -* Run ```mqttx pub -t 'messages-in01' -h '' -p 1883 -u -P -m 'Hello to MQTT Spin Component!'``` with the hostname and credentials for your server, to publish the message which is then received by Spin app. +* Run ```mqttx pub -t 'messages-in01' -h 'localhost' -p 1883 -u 'admin' -P 'public' -m 'Hello to MQTT Spin Component!'``` with the hostname and credentials for your server, to publish the message which is then received by Spin app. * Optionally, run ```make clean``` to clean up and rebuild and install the plugin locally. diff --git a/examples/mqtt-app/Cargo.lock b/examples/mqtt-app/Cargo.lock index b8c6bfe..5d1c11b 100755 --- a/examples/mqtt-app/Cargo.lock +++ b/examples/mqtt-app/Cargo.lock @@ -19,9 +19,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.75" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" +checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" [[package]] name = "autocfg" @@ -37,15 +37,18 @@ checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "bumpalo" -version = "3.15.3" +version = "3.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b" +checksum = "793db76d6187cd04dff33004d8e6c9cc4e05cd330500379d2394209271b4aeee" [[package]] name = "cc" -version = "1.0.89" +version = "1.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0ba8f7aaa012f30d5b2861462f6708eccd49c3c39863fe083a308035f63d723" +checksum = "d487aa071b5f64da6f19a3e848e3578944b726ee5a4854b82172f02aa876bfdc" +dependencies = [ + "shlex", +] [[package]] name = "cfg-if" @@ -135,7 +138,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.103", ] [[package]] @@ -170,9 +173,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.1" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" [[package]] name = "heck" @@ -214,9 +217,9 @@ checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" [[package]] name = "indexmap" -version = "2.2.5" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" +checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" dependencies = [ "equivalent", "hashbrown", @@ -231,10 +234,11 @@ checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" -version = "0.3.68" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -246,9 +250,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.153" +version = "0.2.173" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "d8cfeafaffdbc32176b64fb251369d52ea9f0a8fbc6f8759edffef7b525d64bb" [[package]] name = "log" @@ -300,9 +304,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] @@ -316,6 +320,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "rustversion" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" + [[package]] name = "ryu" version = "1.0.15" @@ -330,22 +340,22 @@ checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" [[package]] name = "serde" -version = "1.0.189" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e422a44e74ad4001bdc8eede9a4570ab52f71190e9c076d14369f38b9200537" +checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.189" +version = "1.0.219" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5" +checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.103", ] [[package]] @@ -359,6 +369,12 @@ dependencies = [ "serde", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "slab" version = "0.4.9" @@ -385,9 +401,9 @@ dependencies = [ [[package]] name = "spin-executor" -version = "3.0.1" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2df1a5e2cc70a628c9ea6914770c234cc4a292218091e6707ae8be68b4a5de76" +checksum = "8d11baf86ca52100e8742ea43d2c342cf4d75b94f8a85454cf44fd108cdd71d5" dependencies = [ "futures", "once_cell", @@ -426,9 +442,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.52" +version = "2.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" +checksum = "e4307e30089d6fd6aff212f2da3a1f9e32f3223b1f010fb09b7c95f90f3ca1e8" dependencies = [ "proc-macro2", "quote", @@ -455,34 +471,35 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "wasm-bindgen" -version = "0.2.91" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ "cfg-if", + "once_cell", + "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.91" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", - "once_cell", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.103", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.91" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -490,22 +507,25 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.91" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.103", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.91" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +dependencies = [ + "unicode-ident", +] [[package]] name = "wasm-encoder" @@ -573,13 +593,14 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", "windows_i686_gnu", + "windows_i686_gnullvm", "windows_i686_msvc", "windows_x86_64_gnu", "windows_x86_64_gnullvm", @@ -588,45 +609,51 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" -version = "0.52.4" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" -version = "0.52.4" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "wit-bindgen" @@ -671,7 +698,7 @@ dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.103", "wit-bindgen-core", "wit-bindgen-rust", "wit-component", diff --git a/examples/mqtt-app/spin.toml b/examples/mqtt-app/spin.toml index 36b42cd..ec83d56 100644 --- a/examples/mqtt-app/spin.toml +++ b/examples/mqtt-app/spin.toml @@ -8,7 +8,7 @@ authors = ["Suneet Nangia "] [application.trigger.mqtt] address = "mqtt://localhost:1883" -username = "user" +username = "admin" password = "password" keep_alive_interval = "30" @@ -25,15 +25,15 @@ topic = "messages-in02" qos = "0" [component.mqtt-c01] -source = "target/wasm32-wasi/release/mqtt_app.wasm" +source = "target/wasm32-wasip1/release/mqtt_app.wasm" allowed_outbound_hosts = ["mqtt://localhost:1883"] [component.mqtt-c01.build] -command = "cargo build --target wasm32-wasi --release" +command = "cargo build --target wasm32-wasip1 --release" [component.mqtt-c02] -source = "target/wasm32-wasi/release/mqtt_app.wasm" +source = "target/wasm32-wasip1/release/mqtt_app.wasm" allowed_outbound_hosts = ["mqtt://localhost:1883"] [component.mqtt-c02.build] -command = "cargo build --target wasm32-wasi --release" +command = "cargo build --target wasm32-wasip1 --release" diff --git a/sdk/Cargo.toml b/sdk/Cargo.toml index 2022c59..4bbf3db 100644 --- a/sdk/Cargo.toml +++ b/sdk/Cargo.toml @@ -8,6 +8,6 @@ include = ["../spin-mqtt.wit"] name = "spin_mqtt_sdk" [dependencies] -spin-executor = "3.0.1" +spin-executor = "3.1.1" spin-mqtt-macro = { path = "macro" } wit-bindgen = { workspace = true } \ No newline at end of file diff --git a/spin-pluginify.toml b/spin-pluginify.toml index 01cff43..94e377b 100644 --- a/spin-pluginify.toml +++ b/spin-pluginify.toml @@ -1,5 +1,5 @@ name = "trigger-mqtt" -version = "0.4.0" +version = "0.4.1" spin_compatibility = ">=2.0" license = "MIT" package = "./target/release/trigger-mqtt" \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index 720473a..18d14ba 100755 --- a/src/main.rs +++ b/src/main.rs @@ -7,7 +7,7 @@ type Command = FactorsTriggerCommand; #[tokio::main] async fn main() -> Result<(), anyhow::Error> { - let _telemetry_guard = spin_telemetry::init(build_info())?; + spin_telemetry::init(build_info())?; let trigger = Command::parse(); trigger.run().await } diff --git a/tests/src/lib.rs b/tests/src/lib.rs new file mode 100644 index 0000000..93430d9 --- /dev/null +++ b/tests/src/lib.rs @@ -0,0 +1,48 @@ + #[tokio::test] + async fn spin_mqtt_trigger_app_test() -> Result<()> { + use std::time::Duration; + let mqtt_port = 1883; + let message = "MESSAGE"; + let iterations = 5; + + // Publish a message to the emqx broker + let mut mqttoptions = rumqttc::MqttOptions::new("123", "127.0.0.1", forward_port); + mqttoptions.set_keep_alive(std::time::Duration::from_secs(1)); + + let (client, mut eventloop) = rumqttc::AsyncClient::new(mqttoptions, 10); + client + .subscribe( + "containerd-shim-spin/mqtt-test-17h24d", + rumqttc::QoS::AtMostOnce, + ) + .await + .unwrap(); + + // Publish a message several times for redundancy + tokio::task::spawn(async move { + for _i in 0..iterations { + client + .publish( + "containerd-shim-spin/mqtt-test-17h24d", + rumqttc::QoS::AtLeastOnce, + false, + message.as_bytes(), + ) + .await + .unwrap(); + tokio::time::sleep(Duration::from_millis(100)).await; + } + }); + tokio::time::sleep(Duration::from_secs(5)).await; + + // Poll the event loop to ensure messages are published + for _i in 0..iterations { + eventloop.poll().await?; + } + thread::sleep(time::Duration::from_secs(5)); + + // Ensure that the message was received and logged by the spin app + let log = get_logs_by_label("app=spin-mqtt-message-logger").await?; + assert!(log.contains(message)); + Ok(()) + } \ No newline at end of file