From cb00af1182bd5618f4bcc0435f96850979c1117c Mon Sep 17 00:00:00 2001 From: Daniel Vigovszky Date: Mon, 9 Dec 2024 13:06:47 +0100 Subject: [PATCH] Golem 1.1 (#1160) * Update golem-wit * Missing log context * Updated golem-examples * Updated golem-wasm-ast * Fix sqlite indexed storage scan * Fix idempotency key issue * Updated wasm-rpc --- Cargo.lock | 387 +++++++++--------- Cargo.toml | 4 +- golem-cli/Cargo.toml | 4 +- golem-worker-executor-base/Cargo.toml | 2 +- golem-worker-executor-base/src/grpc.rs | 5 +- .../src/storage/indexed/sqlite.rs | 2 +- .../tests/indexed_storage.rs | 4 + 7 files changed, 215 insertions(+), 193 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index af54e6d6d..327624b22 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -229,7 +229,7 @@ dependencies = [ "nom 7.1.3", "num-traits 0.2.19", "rusticata-macros", - "thiserror", + "thiserror 1.0.69", "time", ] @@ -375,7 +375,7 @@ checksum = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec" dependencies = [ "async-task", "concurrent-queue", - "fastrand 2.2.0", + "fastrand 2.3.0", "futures-lite 2.5.0", "slab", ] @@ -448,7 +448,7 @@ dependencies = [ "futures-lite 2.5.0", "parking", "polling 3.7.4", - "rustix 0.38.41", + "rustix 0.38.42", "slab", "tracing", "windows-sys 0.59.0", @@ -496,7 +496,7 @@ dependencies = [ "cfg-if", "event-listener 3.1.0", "futures-lite 1.13.0", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.48.0", ] @@ -544,7 +544,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 0.38.41", + "rustix 0.38.42", "signal-hook-registry", "slab", "windows-sys 0.59.0", @@ -599,7 +599,7 @@ dependencies = [ "crc32fast", "futures-lite 2.5.0", "pin-project 1.1.7", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", ] @@ -664,7 +664,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes 1.9.0", - "fastrand 2.2.0", + "fastrand 2.3.0", "hex", "http 0.2.12", "ring", @@ -729,7 +729,7 @@ dependencies = [ "aws-smithy-types", "aws-types", "bytes 1.9.0", - "fastrand 2.2.0", + "fastrand 2.3.0", "http 0.2.12", "http-body 0.4.6", "once_cell", @@ -759,7 +759,7 @@ dependencies = [ "aws-smithy-xml", "aws-types", "bytes 1.9.0", - "fastrand 2.2.0", + "fastrand 2.3.0", "hex", "hmac", "http 0.2.12", @@ -972,7 +972,7 @@ dependencies = [ "aws-smithy-runtime-api", "aws-smithy-types", "bytes 1.9.0", - "fastrand 2.2.0", + "fastrand 2.3.0", "h2 0.3.26", "http 0.2.12", "http-body 0.4.6", @@ -1235,9 +1235,9 @@ checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" [[package]] name = "bigdecimal" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f850665a0385e070b64c38d2354e6c104c8479c59868d1e48a0c13ee2c7a1c1" +checksum = "7f31f3af01c5c65a07985c804d3366560e6fa7883d640a122819b14ec327482c" dependencies = [ "autocfg", "libm", @@ -1402,7 +1402,7 @@ dependencies = [ "serde_json", "serde_repr", "serde_urlencoded", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tower-service", @@ -1501,7 +1501,7 @@ checksum = "4ac68674a6042af2bcee1adad9f6abd432642cf03444ce3a5b36c3f39f23baf8" dependencies = [ "cap-primitives", "cap-std", - "rustix 0.38.41", + "rustix 0.38.42", "smallvec", ] @@ -1517,7 +1517,7 @@ dependencies = [ "io-lifetimes 2.0.4", "ipnet", "maybe-owned", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.59.0", "winx", ] @@ -1541,7 +1541,7 @@ dependencies = [ "cap-primitives", "io-extras", "io-lifetimes 2.0.4", - "rustix 0.38.41", + "rustix 0.38.42", ] [[package]] @@ -1554,7 +1554,7 @@ dependencies = [ "cap-primitives", "iana-time-zone", "once_cell", - "rustix 0.38.41", + "rustix 0.38.42", "winx", ] @@ -1569,7 +1569,7 @@ dependencies = [ "cargo-component-core", "cargo-config2", "cargo_metadata", - "clap 4.5.22", + "clap 4.5.23", "futures", "heck 0.5.0", "indexmap 2.7.0", @@ -1608,7 +1608,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf60eee7916f926d079ac6dc1851bfd8e2869bbdfc3ff997013cf7b802565f86" dependencies = [ "anyhow", - "clap 4.5.22", + "clap 4.5.23", "futures", "indexmap 2.7.0", "libc", @@ -1660,7 +1660,7 @@ dependencies = [ "semver", "serde 1.0.215", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -1690,9 +1690,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" +checksum = "27f657647bcff5394bf56c7317665bbf790a137a50eaaa5c6bfbb9e27a518f2d" dependencies = [ "jobserver", "libc", @@ -1722,9 +1722,9 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1769,9 +1769,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.22" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69371e34337c4c984bbe322360c2547210bf632eb2814bbe78a6e87a2935bd2b" +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" dependencies = [ "clap_builder", "clap_derive", @@ -1783,15 +1783,15 @@ version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34c77f67047557f62582784fd7482884697731b2932c7d37ced54bce2312e1e2" dependencies = [ - "clap 4.5.22", + "clap 4.5.23", "log 0.4.22", ] [[package]] name = "clap_builder" -version = "4.5.22" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e24c1b4099818523236a8ca881d2b45db98dadfb4625cf6608c12069fcbbde1" +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" dependencies = [ "anstream", "anstyle", @@ -1805,7 +1805,7 @@ version = "4.5.38" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9647a559c112175f17cf724dc72d3645680a883c58481332779192b0d8e7a01" dependencies = [ - "clap 4.5.22", + "clap 4.5.23", ] [[package]] @@ -1822,9 +1822,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "cli-table" @@ -2649,7 +2649,7 @@ dependencies = [ "console", "shell-words", "tempfile", - "thiserror", + "thiserror 1.0.69", "zeroize", ] @@ -3142,9 +3142,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] name = "fd-lock" @@ -3153,15 +3153,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947" dependencies = [ "cfg-if", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.52.0", ] [[package]] name = "fdeflate" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07c6f4c64c1d33a3111c4466f7365ebdcc37c5bd1ea0d62aae2e3d722aacbedb" +checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" dependencies = [ "simd-adler32", ] @@ -3423,7 +3423,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e2e6123af26f0f2c51cc66869137080199406754903cc926a7690401ce09cb4" dependencies = [ "io-lifetimes 2.0.4", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.59.0", ] @@ -3513,7 +3513,7 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1" dependencies = [ - "fastrand 2.2.0", + "fastrand 2.3.0", "futures-core", "futures-io", "parking", @@ -3734,7 +3734,7 @@ version = "0.0.0" dependencies = [ "anyhow", "bytes 1.9.0", - "clap 4.5.22", + "clap 4.5.23", "futures", "golem-cli", "golem-common", @@ -3802,7 +3802,7 @@ dependencies = [ "async_zip", "base64 0.22.1", "chrono", - "clap 4.5.22", + "clap 4.5.23", "clap-verbosity-flag", "clap_complete", "cli-table", @@ -3929,7 +3929,7 @@ dependencies = [ "serde_yaml", "sqlx", "test-r", - "thiserror", + "thiserror 1.0.69", "tokio", "toml 0.8.19", "tonic", @@ -3962,7 +3962,7 @@ dependencies = [ "prometheus", "serde 1.0.215", "test-r", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tonic", @@ -4004,7 +4004,7 @@ dependencies = [ "sqlx", "tap", "test-r", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-util", @@ -4029,7 +4029,7 @@ dependencies = [ "bytes 1.9.0", "chrono", "conditional-trait-gen", - "fastrand 2.2.0", + "fastrand 2.3.0", "futures", "golem-api-grpc", "golem-common", @@ -4052,7 +4052,7 @@ dependencies = [ "test-r", "testcontainers", "testcontainers-modules", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-util", @@ -4064,13 +4064,13 @@ dependencies = [ [[package]] name = "golem-examples" -version = "1.1.0-rc1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb49a530af60e3911d7a5d59ee3d2e375ad11dfbe60b6188a2bc492a8452563" +checksum = "7c0bcbbedbbecc9c66f2349150cbeb1b9e9704958611af624fbf11ea7202c4d9" dependencies = [ "Inflector", "cargo_metadata", - "clap 4.5.22", + "clap 4.5.23", "colored", "copy_dir", "derive_more 0.99.18", @@ -4092,7 +4092,7 @@ version = "0.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b33e98f6cc141902ffcc13d027d0bb9a4d3310e51ff182f67236384e8dfeb3ac" dependencies = [ - "clap 4.5.22", + "clap 4.5.23", "convert_case 0.6.0", "fmt", "indexmap 2.7.0", @@ -4170,7 +4170,7 @@ dependencies = [ "test-r", "testcontainers", "testcontainers-modules", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-util", @@ -4210,7 +4210,7 @@ dependencies = [ "serde 1.0.215", "serde_json", "test-r", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tonic", @@ -4234,7 +4234,7 @@ dependencies = [ "async-trait", "bytes 1.9.0", "chrono", - "clap 4.5.22", + "clap 4.5.23", "cli-table", "colored", "console-subscriber", @@ -4270,9 +4270,9 @@ dependencies = [ [[package]] name = "golem-wasm-ast" -version = "1.1.0-rc1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fdc418403c365a36acb38514a2674e3c467826b60863ddfdd98f19f2072458f" +checksum = "8ec69d83cae3a2586f05ff3f1ff58ad88b2f402271d1663fe4938288cbd07346" dependencies = [ "bincode", "leb128", @@ -4290,9 +4290,9 @@ dependencies = [ [[package]] name = "golem-wasm-rpc" -version = "1.1.0-rc4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "def6d54f3119f807e390a7e9f63b518048773270d7063ef4cb9d18323176cb2c" +checksum = "9cc001e774dbe67b555f9049df141a2523c525eb30f1438a1cb1a1ff3217d60a" dependencies = [ "arbitrary", "async-recursion", @@ -4316,9 +4316,9 @@ dependencies = [ [[package]] name = "golem-wasm-rpc-stubgen" -version = "1.1.0-rc4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686db25a3c8633eaf62ff66df6f1a343ce5ce8bdf3a48a7ce2c90612358941a2" +checksum = "b6ccd883751a917f3d5e9b6f1d1dc35284e322bcd90d1805f43eae95feac5f66" dependencies = [ "anyhow", "assert2", @@ -4326,7 +4326,7 @@ dependencies = [ "cargo-component", "cargo-component-core", "cargo_toml", - "clap 4.5.22", + "clap 4.5.23", "colored", "dir-diff", "fs_extra", @@ -4362,9 +4362,9 @@ dependencies = [ [[package]] name = "golem-wit" -version = "1.1.0-rc1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2345b9a0945ac9226e06e6813ca1689cf6d038f5cf1802a2ee3424c21e8cee25" +checksum = "72ea2d892fbe54de5ca2083ce2dc635015a177e89d3a7c872e44c59b8ff6b88e" [[package]] name = "golem-worker-executor" @@ -4471,9 +4471,9 @@ dependencies = [ "test-r", "testcontainers", "testcontainers-modules", - "thiserror", + "thiserror 1.0.69", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls 0.26.1", "tokio-stream", "tokio-util", "tonic", @@ -4557,7 +4557,7 @@ dependencies = [ "conditional-trait-gen", "criterion", "derive_more 0.99.18", - "fastrand 2.2.0", + "fastrand 2.3.0", "figment", "fred", "futures", @@ -4598,7 +4598,7 @@ dependencies = [ "test-r", "testcontainers", "testcontainers-modules", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-util", @@ -5018,7 +5018,7 @@ dependencies = [ "pin-project-lite", "rustls-native-certs 0.7.3", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls 0.26.1", "tower-service", ] @@ -5068,7 +5068,7 @@ dependencies = [ "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls 0.26.1", "tower-service", ] @@ -5446,7 +5446,7 @@ dependencies = [ "assert2", "async-trait", "axum 0.7.9", - "clap 4.5.22", + "clap 4.5.23", "console-subscriber", "golem-api-grpc", "golem-common", @@ -5636,9 +5636,9 @@ checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0" [[package]] name = "js-sys" -version = "0.3.74" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" +checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" dependencies = [ "once_cell", "wasm-bindgen", @@ -5653,7 +5653,7 @@ dependencies = [ "jsonptr", "serde 1.0.215", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5668,7 +5668,7 @@ dependencies = [ "pest_derive", "regex", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5774,7 +5774,7 @@ dependencies = [ "serde 1.0.215", "serde_json", "serde_yaml", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tower 0.4.13", @@ -5796,7 +5796,7 @@ dependencies = [ "schemars", "serde 1.0.215", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -5834,7 +5834,7 @@ dependencies = [ "pin-project 1.1.7", "serde 1.0.215", "serde_json", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tracing", @@ -5888,9 +5888,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.167" +version = "0.2.168" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" +checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d" [[package]] name = "libloading" @@ -5991,9 +5991,9 @@ checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "logos" -version = "0.14.3" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b6aa86787fd2da255f97a4425799c8d1fd39951f5798a1192fc1b956581f605" +checksum = "1c6b6e02facda28ca5fb8dbe4b152496ba3b1bd5a4b40bb2b1b2d8ad74e0f39b" dependencies = [ "logos-derive", ] @@ -6096,7 +6096,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.38.41", + "rustix 0.38.42", ] [[package]] @@ -6131,7 +6131,7 @@ checksum = "317f146e2eb7021892722af37cf1b971f0a70c8406f487e24952667616192c64" dependencies = [ "cfg-if", "miette-derive", - "thiserror", + "thiserror 1.0.69", "unicode-width 0.1.14", ] @@ -6511,7 +6511,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "sha2", - "thiserror", + "thiserror 1.0.69", "url", ] @@ -6602,7 +6602,7 @@ dependencies = [ "serde_with", "sha2", "subtle", - "thiserror", + "thiserror 1.0.69", "url", ] @@ -6661,7 +6661,7 @@ dependencies = [ "js-sys", "once_cell", "pin-project-lite", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -6674,7 +6674,7 @@ dependencies = [ "futures-sink", "js-sys", "pin-project-lite", - "thiserror", + "thiserror 1.0.69", "tracing", ] @@ -6725,7 +6725,7 @@ dependencies = [ "percent-encoding", "rand", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -6993,20 +6993,20 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.14" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" +checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror", + "thiserror 2.0.6", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.7.14" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd" +checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e" dependencies = [ "pest", "pest_generator", @@ -7014,9 +7014,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.14" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e" +checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b" dependencies = [ "pest", "pest_meta", @@ -7027,9 +7027,9 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.7.14" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d" +checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea" dependencies = [ "once_cell", "pest", @@ -7147,7 +7147,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" dependencies = [ "atomic-waker", - "fastrand 2.2.0", + "fastrand 2.3.0", "futures-io", ] @@ -7236,9 +7236,9 @@ dependencies = [ [[package]] name = "png" -version = "0.17.14" +version = "0.17.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0" +checksum = "b67582bd5b65bdff614270e2ea89a1cf15bef71245cc1e5f7ea126977144211d" dependencies = [ "bitflags 1.3.2", "crc32fast", @@ -7286,7 +7286,7 @@ dependencies = [ "sse-codec", "sync_wrapper 1.0.2", "tempfile", - "thiserror", + "thiserror 1.0.69", "time", "tokio", "tokio-stream", @@ -7331,7 +7331,7 @@ dependencies = [ "serde_json", "serde_urlencoded", "serde_yaml", - "thiserror", + "thiserror 1.0.69", "time", "tokio", "url", @@ -7353,7 +7353,7 @@ dependencies = [ "quote", "regex", "syn 2.0.90", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -7382,7 +7382,7 @@ dependencies = [ "concurrent-queue", "hermit-abi 0.4.0", "pin-project-lite", - "rustix 0.38.41", + "rustix 0.38.42", "tracing", "windows-sys 0.59.0", ] @@ -7617,7 +7617,7 @@ dependencies = [ "hex", "lazy_static 1.5.0", "procfs-core", - "rustix 0.38.41", + "rustix 0.38.42", ] [[package]] @@ -7644,7 +7644,7 @@ dependencies = [ "parking_lot", "procfs", "protobuf", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -7679,12 +7679,12 @@ dependencies = [ [[package]] name = "prost" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f" +checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec" dependencies = [ "bytes 1.9.0", - "prost-derive 0.13.3", + "prost-derive 0.13.4", ] [[package]] @@ -7710,11 +7710,10 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c1318b19085f08681016926435853bbf7858f9c082d0999b80550ff5d9abe15" +checksum = "d0f3e5beed80eb580c68e2c600937ac2c4eedabdfd5ef1e5b7ea4f3fba84497b" dependencies = [ - "bytes 1.9.0", "heck 0.5.0", "itertools 0.13.0", "log 0.4.22", @@ -7722,8 +7721,8 @@ dependencies = [ "once_cell", "petgraph", "prettyplease", - "prost 0.13.3", - "prost-types 0.13.3", + "prost 0.13.4", + "prost-types 0.13.4", "regex", "syn 2.0.90", "tempfile", @@ -7744,9 +7743,9 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5" +checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3" dependencies = [ "anyhow", "itertools 0.13.0", @@ -7779,11 +7778,11 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4759aa0d3a6232fb8dbdb97b61de2c20047c68aca932c7ed76da9d788508d670" +checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc" dependencies = [ - "prost 0.13.3", + "prost 0.13.4", ] [[package]] @@ -7804,7 +7803,7 @@ dependencies = [ "prost-reflect", "prost-types 0.12.6", "protox-parse", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -7816,7 +7815,7 @@ dependencies = [ "logos", "miette", "prost-types 0.12.6", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -8015,7 +8014,7 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", "libredox", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -8325,9 +8324,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.41" +version = "0.38.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" +checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" dependencies = [ "bitflags 2.6.0", "errno", @@ -8335,7 +8334,7 @@ dependencies = [ "libc", "linux-raw-sys 0.4.14", "once_cell", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -8768,7 +8767,7 @@ dependencies = [ "serde_json", "serde_json_path_core", "serde_json_path_macros", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -8780,7 +8779,7 @@ dependencies = [ "inventory", "serde 1.0.215", "serde_json", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -9134,14 +9133,14 @@ dependencies = [ "pool", "poule", "prettytable-rs", - "prost 0.13.3", - "prost-build 0.13.3", + "prost 0.13.4", + "prost-build 0.13.4", "rand", "rusty_ulid", "serde 1.0.215", "serde_json", "sha2", - "thiserror", + "thiserror 1.0.69", "time", "toml 0.8.19", "trailer", @@ -9175,7 +9174,7 @@ dependencies = [ "slab", "socket2 0.5.8", "sozu-command-lib", - "thiserror", + "thiserror 1.0.69", "time", ] @@ -9279,7 +9278,7 @@ dependencies = [ "sha2", "smallvec", "sqlformat", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tracing", @@ -9364,7 +9363,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror", + "thiserror 1.0.69", "tracing", "uuid", "whoami", @@ -9404,7 +9403,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror", + "thiserror 1.0.69", "tracing", "uuid", "whoami", @@ -9649,7 +9648,7 @@ dependencies = [ "cap-std", "fd-lock", "io-lifetimes 2.0.4", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.59.0", "winx", ] @@ -9673,9 +9672,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" dependencies = [ "cfg-if", - "fastrand 2.2.0", + "fastrand 2.3.0", "once_cell", - "rustix 0.38.41", + "rustix 0.38.42", "windows-sys 0.59.0", ] @@ -9722,7 +9721,7 @@ dependencies = [ "anstyle-query", "anstyle-wincon", "bincode", - "clap 4.5.22", + "clap 4.5.23", "escape8259", "futures", "interprocess", @@ -9769,7 +9768,7 @@ dependencies = [ "serde 1.0.215", "serde_json", "serde_with", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-stream", "tokio-tar", @@ -9812,7 +9811,16 @@ version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec2a1820ebd077e2b90c4df007bebf344cd394098a13c563957d0afc83ea47" +dependencies = [ + "thiserror-impl 2.0.6", ] [[package]] @@ -9826,6 +9834,17 @@ dependencies = [ "syn 2.0.90", ] +[[package]] +name = "thiserror-impl" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d65750cab40f4ff1929fb1ba509e9914eb756131cef4210da8d5d700d26f6312" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.90", +] + [[package]] name = "thread_local" version = "1.1.8" @@ -10010,12 +10029,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ "rustls 0.23.19", - "rustls-pki-types", "tokio", ] @@ -10027,15 +10045,15 @@ checksum = "0d4770b8024672c1101b3f6733eab95b18007dbe0847a8afe341fcf79e06043f" dependencies = [ "either", "futures-util", - "thiserror", + "thiserror 1.0.69", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" dependencies = [ "futures-core", "pin-project-lite", @@ -10456,7 +10474,7 @@ dependencies = [ "native-tls", "rand", "sha1", - "thiserror", + "thiserror 1.0.69", "url", "utf-8", ] @@ -10475,7 +10493,7 @@ dependencies = [ "log 0.4.22", "rand", "sha1", - "thiserror", + "thiserror 1.0.69", "url", "utf-8", ] @@ -10494,7 +10512,7 @@ dependencies = [ "log 0.4.22", "rand", "sha1", - "thiserror", + "thiserror 1.0.69", "utf-8", ] @@ -10754,7 +10772,7 @@ dependencies = [ "log 0.4.22", "petgraph", "semver", - "thiserror", + "thiserror 1.0.69", "wac-types", "wasm-encoder 0.202.0", "wasm-metadata 0.202.0", @@ -10819,7 +10837,7 @@ dependencies = [ "itertools 0.12.1", "serde 1.0.215", "serde_with", - "thiserror", + "thiserror 1.0.69", "warg-crypto", "warg-protocol", ] @@ -10834,7 +10852,7 @@ dependencies = [ "async-recursion", "async-trait", "bytes 1.9.0", - "clap 4.5.22", + "clap 4.5.23", "dialoguer", "dirs 5.0.1", "futures-util", @@ -10853,7 +10871,7 @@ dependencies = [ "serde_json", "sha256", "tempfile", - "thiserror", + "thiserror 1.0.69", "tokio", "tokio-util", "tracing", @@ -10888,7 +10906,7 @@ dependencies = [ "serde 1.0.215", "sha2", "signature 2.2.0", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -10926,7 +10944,7 @@ dependencies = [ "semver", "serde 1.0.215", "serde_with", - "thiserror", + "thiserror 1.0.69", "warg-crypto", "warg-protobuf", "warg-transparency", @@ -10942,7 +10960,7 @@ dependencies = [ "anyhow", "indexmap 2.7.0", "prost 0.12.6", - "thiserror", + "thiserror 1.0.69", "warg-crypto", "warg-protobuf", ] @@ -10990,9 +11008,9 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" +checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" dependencies = [ "cfg-if", "once_cell", @@ -11001,13 +11019,12 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" +checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" dependencies = [ "bumpalo", "log 0.4.22", - "once_cell", "proc-macro2", "quote", "syn 2.0.90", @@ -11016,9 +11033,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.47" +version = "0.4.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dfaf8f50e5f293737ee323940c7d8b08a66a95a419223d9f41610ca08b0833d" +checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" dependencies = [ "cfg-if", "js-sys", @@ -11029,9 +11046,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" +checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -11039,9 +11056,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" +checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", @@ -11052,9 +11069,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.97" +version = "0.2.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" +checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" [[package]] name = "wasm-compose" @@ -11218,7 +11235,7 @@ checksum = "9de15f412defafcc78c2f9271d86c0fae5fa44886b3f317c5eaa51f5f07af534" dependencies = [ "indexmap 2.7.0", "logos", - "thiserror", + "thiserror 1.0.69", "wasmtime", "wit-parser 0.208.1", ] @@ -11345,7 +11362,7 @@ dependencies = [ "postcard", "psm", "rayon", - "rustix 0.38.41", + "rustix 0.38.42", "semver", "serde 1.0.215", "serde_derive", @@ -11389,7 +11406,7 @@ dependencies = [ "directories-next", "log 0.4.22", "postcard", - "rustix 0.38.41", + "rustix 0.38.42", "serde 1.0.215", "serde_derive", "sha2", @@ -11434,7 +11451,7 @@ dependencies = [ "log 0.4.22", "object 0.33.0", "target-lexicon", - "thiserror", + "thiserror 1.0.69", "wasmparser 0.207.0", "wasmtime-environ", "wasmtime-versioned-export-macros", @@ -11472,7 +11489,7 @@ dependencies = [ "anyhow", "cc", "cfg-if", - "rustix 0.38.41", + "rustix 0.38.42", "wasmtime-asm-macros", "wasmtime-versioned-export-macros", "windows-sys 0.52.0", @@ -11485,7 +11502,7 @@ source = "git+https://github.com/golemcloud/wasmtime.git?branch=golem-wasmtime-v dependencies = [ "object 0.33.0", "once_cell", - "rustix 0.38.41", + "rustix 0.38.42", "wasmtime-versioned-export-macros", ] @@ -11546,9 +11563,9 @@ dependencies = [ "io-extras", "io-lifetimes 2.0.4", "once_cell", - "rustix 0.38.41", + "rustix 0.38.42", "system-interface", - "thiserror", + "thiserror 1.0.69", "tokio", "tracing", "url", @@ -11639,9 +11656,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.74" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" +checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" dependencies = [ "js-sys", "wasm-bindgen", @@ -11677,7 +11694,7 @@ dependencies = [ "either", "home", "once_cell", - "rustix 0.38.41", + "rustix 0.38.42", ] [[package]] @@ -11688,7 +11705,7 @@ checksum = "b4ee928febd44d98f2f459a4a79bd4d928591333a494a10a868418ac1b39cf1f" dependencies = [ "either", "home", - "rustix 0.38.41", + "rustix 0.38.42", "winsafe", ] @@ -11717,7 +11734,7 @@ dependencies = [ "anyhow", "async-trait", "bitflags 2.6.0", - "thiserror", + "thiserror 1.0.69", "tracing", "wasmtime", "wiggle-macro", @@ -12241,7 +12258,7 @@ checksum = "e366f27a5cabcddb2706a78296a40b8fcc451e1a6aba2fc1d94b4a01bdaaef4b" dependencies = [ "anyhow", "log 0.4.22", - "thiserror", + "thiserror 1.0.69", "wast 35.0.2", ] @@ -12270,7 +12287,7 @@ dependencies = [ "nom 7.1.3", "oid-registry", "rusticata-macros", - "thiserror", + "thiserror 1.0.69", "time", ] @@ -12282,7 +12299,7 @@ checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" dependencies = [ "libc", "linux-raw-sys 0.4.14", - "rustix 0.38.41", + "rustix 0.38.42", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 2deb2f85f..6568b9a7a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -106,8 +106,8 @@ futures = "0.3" futures-core = "0.3.29" futures-util = "0.3.29" git-version = "0.3.9" -golem-wasm-ast = "1.1.0-rc1" -golem-wasm-rpc = { version = "1.1.0-rc4", default-features = false, features = [ +golem-wasm-ast = "1.1.0" +golem-wasm-rpc = { version = "1.1.0", default-features = false, features = [ "host", ] } hex = "0.4.3" diff --git a/golem-cli/Cargo.toml b/golem-cli/Cargo.toml index 85d08cf4d..9dc3525a5 100644 --- a/golem-cli/Cargo.toml +++ b/golem-cli/Cargo.toml @@ -42,10 +42,10 @@ derive_more = { workspace = true } dirs = "5.0.1" futures-util = { workspace = true } glob = "0.3.1" -golem-examples = "1.1.0-rc1" +golem-examples = "1.1.0" golem-wasm-ast = { workspace = true } golem-wasm-rpc = { workspace = true } -golem-wasm-rpc-stubgen = { version = "1.1.0-rc4", optional = true, default-features = false } +golem-wasm-rpc-stubgen = { version = "1.1.0", optional = true, default-features = false } h2 = "0.3.24" http = { workspace = true } humansize = { workspace = true } diff --git a/golem-worker-executor-base/Cargo.toml b/golem-worker-executor-base/Cargo.toml index 6ba685cdb..700443051 100644 --- a/golem-worker-executor-base/Cargo.toml +++ b/golem-worker-executor-base/Cargo.toml @@ -49,7 +49,7 @@ fs-set-times = "0.20.1" futures = { workspace = true } futures-util = { workspace = true } gethostname = "0.4.3" -golem-wit = { version = "=1.1.0-rc1" } +golem-wit = { version = "=1.1.0" } hex = { workspace = true } http = { workspace = true } http_02 = { workspace = true } diff --git a/golem-worker-executor-base/src/grpc.rs b/golem-worker-executor-base/src/grpc.rs index 2f9bbe6df..e0d8e46a2 100644 --- a/golem-worker-executor-base/src/grpc.rs +++ b/golem-worker-executor-base/src/grpc.rs @@ -1726,7 +1726,8 @@ impl + UsesAllDeps + Send + Sync + "invoke_worker", worker_id = proto_target_worker_id_string(&request.worker_id), function = request.name, - account_id = proto_account_id_string(&request.account_id) + account_id = proto_account_id_string(&request.account_id), + idempotency_key = proto_idempotency_key_string(&request.idempotency_key), ); match self @@ -2501,7 +2502,7 @@ impl GrpcInvokeRequest for golem::workerexecutor::v1::InvokeWorkerRequest { } fn idempotency_key(&self) -> Result, GolemError> { - Ok(None) + Ok(self.idempotency_key.clone().map(IdempotencyKey::from)) } fn name(&self) -> String { diff --git a/golem-worker-executor-base/src/storage/indexed/sqlite.rs b/golem-worker-executor-base/src/storage/indexed/sqlite.rs index e6052bf98..e3c8a04fb 100644 --- a/golem-worker-executor-base/src/storage/indexed/sqlite.rs +++ b/golem-worker-executor-base/src/storage/indexed/sqlite.rs @@ -115,7 +115,7 @@ impl IndexedStorage for SqliteIndexedStorage { ) -> Result<(ScanCursor, Vec), String> { let key = pattern.replace("*", "%").replace("?", "_"); let query = - sqlx::query_as("SELECT key FROM index_storage WHERE namespace = ? AND key LIKE ? ORDER BY key LIMIT ? OFFSET ?;") + sqlx::query_as("SELECT DISTINCT key FROM index_storage WHERE namespace = ? AND key LIKE ? ORDER BY key LIMIT ? OFFSET ?;") .bind(Self::namespace(namespace)) .bind(&key) .bind(sqlx::types::Json(count)) diff --git a/golem-worker-executor-base/tests/indexed_storage.rs b/golem-worker-executor-base/tests/indexed_storage.rs index 909acafeb..994618322 100644 --- a/golem-worker-executor-base/tests/indexed_storage.rs +++ b/golem-worker-executor-base/tests/indexed_storage.rs @@ -367,6 +367,10 @@ macro_rules! test_indexed_storage { .append("svc", "api", "entity", ns.clone(), &key1, 1, value1) .await .unwrap(); + let _ = is + .append("svc", "api", "entity", ns.clone(), &key1, 2, value2) + .await + .unwrap(); let _ = is .append("svc", "api", "entity", ns.clone(), &key2, 1, value2) .await