diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c57a51c..33d61b4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -114,7 +114,7 @@ jobs: uses: dtolnay/rust-toolchain@stable with: # Keep in sync with workspace.package.rust-version in Cargo.toml. - toolchain: "1.91" + toolchain: "1.94" targets: wasm32-unknown-unknown - name: Cache cargo registry diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 346df15..2a0559d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,7 +35,7 @@ Be respectful. We're all here to build something useful. ### Prerequisites -- Rust 1.91+ (the project MSRV, enforced by CI) +- Rust 1.94+ (the project MSRV, enforced by CI) - PostgreSQL (for control plane tests) ### Building diff --git a/Cargo.lock b/Cargo.lock index 7b9d7fa..220d2a9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -601,15 +601,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "bitmaps" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" -dependencies = [ - "typenum", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -871,9 +862,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpp_demangle" -version = "0.4.5" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2bb79cb74d735044c972aae58ed0aaa9a837e85b01106a54c39e42e97f62253" +checksum = "0667304c32ea56cb4cd6d2d7c0cfe9a2f8041229db8c033af7f8d69492429def" dependencies = [ "cfg-if", ] @@ -889,27 +880,27 @@ dependencies = [ [[package]] name = "cranelift-assembler-x64" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc822414b18d1f5b1b33ce1441534e311e62fef86ebb5b9d382af857d0272c9" +checksum = "d552bd33b7a56dc70aeb1e1c960e51a218fa0db50f23873b500a310379450b2d" dependencies = [ "cranelift-assembler-x64-meta", ] [[package]] name = "cranelift-assembler-x64-meta" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c646808b06f4532478d8d6057d74f15c3322f10d995d9486e7dcea405bf521a" +checksum = "078e80e4c222279e3330f6aa1a256ca77ddf156d4453166a9f09defedc4594dd" dependencies = [ "cranelift-srcgen", ] [[package]] name = "cranelift-bforest" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5996f01a686b2349cdb379083ec5ad3e8cb8767fb2d495d3a4f2ee4163a18d" +checksum = "820ce15d4ad3562d613c31a67b6d0434d403e7091a68d1349903842f7d31737e" dependencies = [ "cranelift-entity", "wasmtime-internal-core", @@ -917,9 +908,9 @@ dependencies = [ [[package]] name = "cranelift-bitset" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523fea83273f6a985520f57788809a4de2165794d9ab00fb1254fceb4f5aa00c" +checksum = "61bca563d4b86d285928d9e27f97f27039bb33a0fc524fa130d7d0c106bf8ab3" dependencies = [ "serde", "serde_derive", @@ -928,9 +919,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d73d1e372730b5f64ed1a2bd9f01fe4686c8ec14a28034e3084e530c8d951878" +checksum = "709f4b7c0fb57d952658d5b5c07fbdc4149acd7b7f0de9678ae754b9c981949a" dependencies = [ "bumpalo", "cranelift-assembler-x64", @@ -942,13 +933,16 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "libm", "log", + "postcard", "pulley-interpreter", "regalloc2", "rustc-hash", "serde", + "serde_derive", + "sha2", "smallvec", "target-lexicon", "wasmtime-internal-core", @@ -956,9 +950,9 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0319c18165e93dc1ebf78946a8da0b1c341c95b4a39729a69574671639bdb5f" +checksum = "903dc8915af62aad1d9d0f39a5968d33fa80b9aa899ed6f56e47f40ca4512e1e" dependencies = [ "cranelift-assembler-x64-meta", "cranelift-codegen-shared", @@ -969,24 +963,24 @@ dependencies = [ [[package]] name = "cranelift-codegen-shared" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9195cd8aeecb55e401aa96b2eaa55921636e8246c127ed7908f7ef7e0d40f270" +checksum = "0522d74c227e49f3fd49ab055311486ae4f09083262b66705bed676952491469" [[package]] name = "cranelift-control" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8976c2154b74136322befc74222ab5c7249edd7e2604f8cbef2b94975541ffb9" +checksum = "66560ea1c5cef72e170b18e46d263dba2d3169c9d39e8cafdab2173c6362cc1a" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6038b3147c7982f4951150d5f96c7c06c1e7214b99d4b4a98607aadf8ded89d1" +checksum = "b62ef5b17cc814d27e96b66a5b46da0e4ce2b8ac55a6d478048bb99d04b05526" dependencies = [ "cranelift-bitset", "serde", @@ -996,11 +990,12 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbd294abe236e23cc3d907b0936226b6a8342db7636daa9c7c72be1e323420e" +checksum = "a87e0aaa39dbf70693b348a221e45904111704ee8f9fef140498471005f9842d" dependencies = [ "cranelift-codegen", + "hashbrown 0.17.0", "log", "smallvec", "target-lexicon", @@ -1008,15 +1003,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a90b6ed3aba84189352a87badeb93b2126d3724225a42dc67fdce53d1b139c" +checksum = "cf79003ebfa1eed5e87f3b84446ad5236f540268289960e14f387dc9b28e40b7" [[package]] name = "cranelift-native" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ec0cc1a54e22925eacf4fc3dc815f907734d3b377899d19d52bec04863e853" +checksum = "05bf4f235743c81e67ee4db617c5a4a0b65d58d3f0cfc575ee0f1a4e0cd58273" dependencies = [ "cranelift-codegen", "libc", @@ -1025,9 +1020,9 @@ dependencies = [ [[package]] name = "cranelift-srcgen" -version = "0.130.2" +version = "0.134.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "948865622f87f30907bb46fbb081b235ae63c1896a99a83c26a003305c1fa82d" +checksum = "f6977c2a71ab1e0d1e62f966b411a498aa04c4dce47d93d52f8a360a06058922" [[package]] name = "crc" @@ -1849,17 +1844,17 @@ name = "hashbrown" version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" -dependencies = [ - "foldhash 0.2.0", - "serde", - "serde_core", -] [[package]] name = "hashbrown" version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" +dependencies = [ + "foldhash 0.2.0", + "serde", + "serde_core", +] [[package]] name = "hashlink" @@ -2167,20 +2162,6 @@ dependencies = [ "icu_properties", ] -[[package]] -name = "im-rc" -version = "15.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1955a75fa080c677d3972822ec4bad316169ab1cfc6c257a942c2265dbe5fe" -dependencies = [ - "bitmaps", - "rand_core 0.6.4", - "rand_xoshiro", - "sized-chunks", - "typenum", - "version_check", -] - [[package]] name = "indexmap" version = "2.14.0" @@ -2485,12 +2466,9 @@ dependencies = [ [[package]] name = "mach2" -version = "0.4.3" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" -dependencies = [ - "libc", -] +checksum = "dae608c151f68243f2b000364e1f7b186d9c29845f7d2d85bd31b9ad77ad552b" [[package]] name = "matchers" @@ -2774,12 +2752,12 @@ dependencies = [ [[package]] name = "object" -version = "0.38.1" +version = "0.39.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271638cd5fa9cca89c4c304675ca658efc4e64a66c716b7cfe1afb4b9611dbbc" +checksum = "2e5a6c098c7a3b6547378093f5cc30bc54fd361ce711e05293a5cc589562739b" dependencies = [ "crc32fast", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "indexmap", "memchr", ] @@ -3220,9 +3198,9 @@ dependencies = [ [[package]] name = "pulley-interpreter" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ec12fe19a9588315a49fe5704502a9c02d6a198303314b0c7c86123b06d29e5" +checksum = "bc5c8c21ea032e4efbdf2d067dc45171779dbe0c8ecf20ef4a57efa7474f2b0a" dependencies = [ "cranelift-bitset", "log", @@ -3232,9 +3210,9 @@ dependencies = [ [[package]] name = "pulley-macros" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f7d5ef31ebf1b46cd7e722ffef934e670d7e462f49aa01cde07b9b76dca580" +checksum = "9f10925455d5dde962e3604eade797ba5488644c8ee14a44191e2f2b58980574" dependencies = [ "proc-macro2", "quote", @@ -3376,15 +3354,6 @@ dependencies = [ "getrandom 0.3.4", ] -[[package]] -name = "rand_xoshiro" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" -dependencies = [ - "rand_core 0.6.4", -] - [[package]] name = "rayon" version = "1.12.0" @@ -3482,15 +3451,16 @@ dependencies = [ [[package]] name = "regalloc2" -version = "0.15.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "952ddbfc6f9f64d006c3efd8c9851a6ba2f2b944ba94730db255d55006e0ffda" +checksum = "757712e8e61590d6d4f5d563483755538b5aa13467837a3b41cd9832509a7f85" dependencies = [ "allocator-api2", "bumpalo", - "hashbrown 0.15.5", + "hashbrown 0.17.0", "log", "rustc-hash", + "serde", "smallvec", ] @@ -4100,16 +4070,6 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" -[[package]] -name = "sized-chunks" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" -dependencies = [ - "bitmaps", - "typenum", -] - [[package]] name = "slab" version = "0.4.12" @@ -5216,22 +5176,18 @@ dependencies = [ [[package]] name = "wasm-compose" -version = "0.245.1" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd23d12cc95c451c1306db5bc63075fbebb612bb70c53b4237b1ce5bc178343" +checksum = "d59b710751a35d54732a63851cdfacbfb2266b7160ce174faf269d3f4e84e31b" dependencies = [ "anyhow", "heck", - "im-rc", "indexmap", "log", "petgraph", - "serde", - "serde_derive", - "serde_yaml", "smallvec", - "wasm-encoder 0.245.1", - "wasmparser 0.245.1", + "wasm-encoder 0.252.0", + "wasmparser 0.252.0", "wat", ] @@ -5247,22 +5203,22 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.245.1" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9dca005e69bf015e45577e415b9af8c67e8ee3c0e38b5b0add5aa92581ed5c" +checksum = "8185ae345fa5687c054626ff9a50e7089797a343d9904d1dc9820eb4c4d3196f" dependencies = [ "leb128fmt", - "wasmparser 0.245.1", + "wasmparser 0.252.0", ] [[package]] name = "wasm-encoder" -version = "0.246.2" +version = "0.255.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61fb705ce81adde29d2a8e99d87995e39a6e927358c91398f374474746070ef7" +checksum = "9b524283fb5df62eec102ed0574838961bdd7ba5ac9c50d38e2756c51c971a42" dependencies = [ "leb128fmt", - "wasmparser 0.246.2", + "wasmparser 0.255.0", ] [[package]] @@ -5304,12 +5260,12 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.245.1" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f08c9adee0428b7bddf3890fc27e015ac4b761cc608c822667102b8bfd6995e" +checksum = "d3eb099dcadcde5be9eef55e3a337128efd4e44b4c93122487e4d2e4e1c6627c" dependencies = [ "bitflags 2.11.0", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "indexmap", "semver", "serde", @@ -5317,9 +5273,9 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.246.2" +version = "0.255.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71cde4757396defafd25417cfb36aa3161027d06d865b0c24baaae229aac005d" +checksum = "e8e329ef4b5d46e73b91d3ac6924417cad55a8cbbf869c199283383427c3320b" dependencies = [ "bitflags 2.11.0", "indexmap", @@ -5328,20 +5284,20 @@ dependencies = [ [[package]] name = "wasmprinter" -version = "0.245.1" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41517a3716fbb8ccf46daa9c1325f760fcbff5168e75c7392288e410b91ac8" +checksum = "7142797de29b35ab8dbf15c00f55fda75d409da4c423a8ab8bd6b667a785824b" dependencies = [ "anyhow", "termcolor", - "wasmparser 0.245.1", + "wasmparser 0.252.0", ] [[package]] name = "wasmtime" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb1ed5899dde98357cfdcf647a4614498798719793898245b4b34e663addabf" +checksum = "c80ca6098e0d4d06886d91d7f2cc3cb6623eb583c4c0ab3c89cbfb6098c8586c" dependencies = [ "addr2line", "async-trait", @@ -5372,8 +5328,8 @@ dependencies = [ "target-lexicon", "tempfile", "wasm-compose", - "wasm-encoder 0.245.1", - "wasmparser 0.245.1", + "wasm-encoder 0.252.0", + "wasmparser 0.252.0", "wasmtime-environ", "wasmtime-internal-cache", "wasmtime-internal-component-macro", @@ -5385,16 +5341,16 @@ dependencies = [ "wasmtime-internal-jit-icache-coherence", "wasmtime-internal-unwinder", "wasmtime-internal-versioned-export-macros", - "wasmtime-internal-winch", "wat", "windows-sys 0.61.2", + "wit-parser 0.252.0", ] [[package]] name = "wasmtime-environ" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4172382dcc785c31d0e862c6780a18f5dd437914d22c4691351f965ef751c821" +checksum = "134f9d136d29c76f6c1b4c9b468e97a2efc38c7d49fd188e39b64870b2fea701" dependencies = [ "anyhow", "cpp_demangle", @@ -5402,7 +5358,7 @@ dependencies = [ "cranelift-bitset", "cranelift-entity", "gimli", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "indexmap", "log", "object", @@ -5414,8 +5370,8 @@ dependencies = [ "sha2", "smallvec", "target-lexicon", - "wasm-encoder 0.245.1", - "wasmparser 0.245.1", + "wasm-encoder 0.252.0", + "wasmparser 0.252.0", "wasmprinter", "wasmtime-internal-component-util", "wasmtime-internal-core", @@ -5423,9 +5379,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-cache" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ed398988226d7aa0505ac6bb576e09532ad722d702ec4e66365d78ed695c95f" +checksum = "65db2eb1bfc5371a3b4107dbf539d0b93d05016fc29625b1648146b47db02071" dependencies = [ "base64", "directories-next", @@ -5443,9 +5399,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-component-macro" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae5ec9fff073ff13b81732d56a9515d761c245750bcda09093827f84130ebc25" +checksum = "2bf7b91fed3fc34781d57f9c6654ea2513bf0a99f7b0b0523c00de1e6efebe1c" dependencies = [ "anyhow", "proc-macro2", @@ -5453,32 +5409,32 @@ dependencies = [ "syn", "wasmtime-internal-component-util", "wasmtime-internal-wit-bindgen", - "wit-parser 0.245.1", + "wit-parser 0.252.0", ] [[package]] name = "wasmtime-internal-component-util" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "935d9ab293ba27d1ec9aa7bc1b3a43993dbe961af2a8f23f90a11e1331b4c13f" +checksum = "fc8a678149885cae00289f806fbe74c7863084cf74cace0b8dc73602279400e1" [[package]] name = "wasmtime-internal-core" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3820b174f477d2a7083209d1ad5353fcdb11eaea434b2137b8681029460dd3" +checksum = "8a0092c4b9d070ac5e278b6d0db10f5e71214190f0347ca57502b4692f796321" dependencies = [ "anyhow", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "libm", "serde", ] [[package]] name = "wasmtime-internal-cranelift" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1679d205caf9766c6aa309d45bb3e7c634d7725e3164404df33824b9f7c4fb7" +checksum = "6851ebc9e03cab23d9821d2b2505d380bdfe38f35ccec945247b05274d85c98b" dependencies = [ "cfg-if", "cranelift-codegen", @@ -5494,7 +5450,7 @@ dependencies = [ "smallvec", "target-lexicon", "thiserror 2.0.18", - "wasmparser 0.245.1", + "wasmparser 0.252.0", "wasmtime-environ", "wasmtime-internal-core", "wasmtime-internal-unwinder", @@ -5503,9 +5459,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-fiber" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1e505254058be5b0df458d670ee42d9eafe2349d04c1296e9dc01071dc20a85" +checksum = "9b26da6d5f60d4c438da70bba3553fe810a840533a64156be287dca2081c6991" dependencies = [ "cc", "cfg-if", @@ -5518,9 +5474,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-debug" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c2e05b345f1773e59c20e6ad7298fd6857cdea245023d88bb659c96d8f0ea72" +checksum = "ed621ba25d7bf78b7edd7b4749abbb27c2e5cdba836c9504a424ee74b6c23149" dependencies = [ "cc", "object", @@ -5530,9 +5486,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-jit-icache-coherence" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b86701b234a4643e3f111869aa792b3a05a06e02d486ee9cb6c04dae16b52dab" +checksum = "5684ba160951baad06a725696f3c590e2fb0e8067c2aebee27bf7f9259058e85" dependencies = [ "cfg-if", "libc", @@ -5542,9 +5498,9 @@ dependencies = [ [[package]] name = "wasmtime-internal-unwinder" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63558d801beb83dde9b336eb4ae049019aee26627926edb32cd119d7e4c83cd" +checksum = "112eead527bffa8ff0646a11fb4339a9d52ddd1da2b9a6fce4aff84c815dd94f" dependencies = [ "cfg-if", "cranelift-codegen", @@ -5555,63 +5511,46 @@ dependencies = [ [[package]] name = "wasmtime-internal-versioned-export-macros" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "737c4d956fc3a848541a064afb683dd2771132a6b125be5baaf95c4379aa47df" +checksum = "153592e0bed824fc13c6696203fa1bd7bd20eb355316475e39a55f081ef80eca" dependencies = [ "proc-macro2", "quote", "syn", ] -[[package]] -name = "wasmtime-internal-winch" -version = "43.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f599b79545e3bba0b7913406055ebede5bb0dabee9ba2015ef25a9f4c9f47807" -dependencies = [ - "cranelift-codegen", - "gimli", - "log", - "object", - "target-lexicon", - "wasmparser 0.245.1", - "wasmtime-environ", - "wasmtime-internal-cranelift", - "winch-codegen", -] - [[package]] name = "wasmtime-internal-wit-bindgen" -version = "43.0.2" +version = "47.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2192a77a00b9a67800c2b4e1c70fb6abca79d6b529e53a2ef9dcdcc36090330d" +checksum = "c456ad6e81e0f46abfeca43687d18ea15e289c395b262ea6e0023e2682e088be" dependencies = [ "anyhow", "bitflags 2.11.0", "heck", "indexmap", - "wit-parser 0.245.1", + "wit-parser 0.252.0", ] [[package]] name = "wast" -version = "246.0.2" +version = "255.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe3fe8e3bf88ad96d031b4181ddbd64634b17cb0d06dfc3de589ef43591a9a62" +checksum = "55ffec530f199bd3d553ac442c13dd108353cad533cad8514bc41e1f1f0fe686" dependencies = [ "bumpalo", "leb128fmt", "memchr", "unicode-width", - "wasm-encoder 0.246.2", + "wasm-encoder 0.255.0", ] [[package]] name = "wat" -version = "1.246.2" +version = "1.255.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd7fda1199b94fff395c2d19a153f05dbe7807630316fa9673367666fd2ad8c" +checksum = "dda82c82e1486c7eed42a0465e544d80fff37abc3b39482e0d34dbaabe2fe5b1" dependencies = [ "wast", ] @@ -5695,25 +5634,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "winch-codegen" -version = "43.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52dbb0cf07b0dfe7b7a1ca8efb8f94ba98bd0fb144c411ea1665c78f0449e958" -dependencies = [ - "cranelift-assembler-x64", - "cranelift-codegen", - "gimli", - "regalloc2", - "smallvec", - "target-lexicon", - "thiserror 2.0.18", - "wasmparser 0.245.1", - "wasmtime-environ", - "wasmtime-internal-core", - "wasmtime-internal-cranelift", -] - [[package]] name = "windows-core" version = "0.62.2" @@ -6123,12 +6043,12 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.245.1" +version = "0.252.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330698718e82983499419494dd1e3d7811a457a9bf9f69734e8c5f07a2547929" +checksum = "4266bea110371c620ccf3201c5023676046bc4556e5c7cfb5d500bda5ebc162d" dependencies = [ "anyhow", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "id-arena", "indexmap", "log", @@ -6136,8 +6056,8 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "unicode-xid", - "wasmparser 0.245.1", + "unicode-ident", + "wasmparser 0.252.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index e2f2827..daeba05 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,9 +21,9 @@ resolver = "2" [workspace.package] version = "0.8.1" edition = "2021" -# Minimum supported Rust version, set by the dependency floor: wasmtime 43 and -# cranelift 0.130 require rustc 1.91. Enforced by the `msrv` CI job. -rust-version = "1.91" +# Minimum supported Rust version, set by the dependency floor: wasmtime 47 +# requires rustc 1.94. Enforced by the `msrv` CI job. +rust-version = "1.94" license = "AGPL-3.0-only" repository = "https://github.com/barbacane-dev/Barbacane" homepage = "https://github.com/barbacane-dev/Barbacane" @@ -101,8 +101,8 @@ parking_lot = "0.12" jsonschema = "0.26" # WASM runtime -wasmtime = { version = "43", features = ["cranelift", "pooling-allocator"] } -wasmtime-wasi = { version = "43" } +wasmtime = { version = "47", features = ["cranelift", "pooling-allocator"] } +wasmtime-wasi = { version = "47" } # Plugin manifest toml = "0.8" diff --git a/Dockerfile b/Dockerfile index 89276ec..7085764 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ # Barbacane Data Plane - Multi-stage build # Produces a minimal, rootless container image -# Build stage - Rust 1.91+ required (MSRV; wasmtime 43 / cranelift 0.130 floor), Bookworm for glibc compat -FROM rust:1.93-slim-bookworm AS builder +# Build stage - Rust 1.94+ required (MSRV; wasmtime 47 floor), Bookworm for glibc compat +FROM rust:1.94-slim-bookworm AS builder # Install build dependencies for aws-lc-rs RUN apt-get update && apt-get install -y --no-install-recommends \ diff --git a/Dockerfile.control b/Dockerfile.control index ac77082..fc248f3 100644 --- a/Dockerfile.control +++ b/Dockerfile.control @@ -9,8 +9,8 @@ RUN npm ci COPY ui/ ./ RUN npm run build -# Rust build stage - Rust 1.91+ required (MSRV; wasmtime 43 / cranelift 0.130 floor) -FROM rust:1.93-slim-bookworm AS rust-builder +# Rust build stage - Rust 1.94+ required (MSRV; wasmtime 47 floor) +FROM rust:1.94-slim-bookworm AS rust-builder # Install build dependencies for aws-lc-rs RUN apt-get update && apt-get install -y --no-install-recommends \ diff --git a/Dockerfile.standalone b/Dockerfile.standalone index 7feeb7b..aa84ea4 100644 --- a/Dockerfile.standalone +++ b/Dockerfile.standalone @@ -20,7 +20,7 @@ # --------------------------------------------------------------------------- # Stage 1: Build the barbacane binary # --------------------------------------------------------------------------- -FROM rust:1.93-slim-bookworm AS binary-builder +FROM rust:1.94-slim-bookworm AS binary-builder RUN apt-get update && apt-get install -y --no-install-recommends \ cmake \ @@ -40,7 +40,7 @@ RUN cargo build --release --package barbacane && \ # --------------------------------------------------------------------------- # Stage 2: Build all WASM plugins # --------------------------------------------------------------------------- -FROM rust:1.93-slim-bookworm AS plugin-builder +FROM rust:1.94-slim-bookworm AS plugin-builder RUN rustup target add wasm32-unknown-unknown diff --git a/README.md b/README.md index 253456e..83593a1 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ CLI Tests UI Tests E2E Tests - Rust Version + Rust Version License

diff --git a/adr/0019-packaging-and-release-strategy.md b/adr/0019-packaging-and-release-strategy.md index d677617..790ffec 100644 --- a/adr/0019-packaging-and-release-strategy.md +++ b/adr/0019-packaging-and-release-strategy.md @@ -79,7 +79,7 @@ We will publish the following artifacts for each release: ```dockerfile # Data plane - multi-stage build, rootless # Use -bookworm suffix to match glibc in distroless cc-debian12 -FROM rust:1.93-slim-bookworm AS builder +FROM rust:1.94-slim-bookworm AS builder WORKDIR /build COPY . . RUN cargo build --release --package barbacane diff --git a/docs/contributing/development.md b/docs/contributing/development.md index c989a11..5f6b180 100644 --- a/docs/contributing/development.md +++ b/docs/contributing/development.md @@ -4,7 +4,7 @@ This guide helps you set up a development environment for contributing to Barbac ## Prerequisites -- **Rust 1.91+** - Install via [rustup](https://rustup.rs/). This is the project MSRV (enforced by CI); the dependency floor (wasmtime/cranelift) requires it. +- **Rust 1.94+** - Install via [rustup](https://rustup.rs/). This is the project MSRV (enforced by CI); the dependency floor (wasmtime/cranelift) requires it. - **Git** - For version control - **Node.js 20+** - For the UI (if working on the web interface) - **PostgreSQL 14+** - For the control plane (or use Docker) diff --git a/docs/guide/fips.md b/docs/guide/fips.md index 44b6cb8..556b32d 100644 --- a/docs/guide/fips.md +++ b/docs/guide/fips.md @@ -88,7 +88,7 @@ The first FIPS build takes longer because `aws-lc-fips-sys` compiles AWS-LC from Update the Dockerfile to install Go for the FIPS build: ```dockerfile -FROM rust:1.93-slim-bookworm AS builder +FROM rust:1.94-slim-bookworm AS builder # Build dependencies — Go required for aws-lc-fips-sys RUN apt-get update && apt-get install -y --no-install-recommends \