From 60f63ec9d391d27cccd93ffe3926fcf9f8d2b531 Mon Sep 17 00:00:00 2001
From: David Justice
Date: Mon, 4 Nov 2024 14:33:38 -0500
Subject: [PATCH 1/3] get-many move option to value
Signed-off-by: David Justice
---
imports.md | 2 +-
watch-service.md | 2 +-
wit/batch.wit | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/imports.md b/imports.md
index ca31a78..6bb14ad 100644
--- a/imports.md
+++ b/imports.md
@@ -304,7 +304,7 @@ list.
Return values
-- result<list<option<(
string, list<u8>)>>, error>
+- result<list<(
string, option<list<u8>>)>, error>
set-many: func
Set the values associated with the keys in the store. If the key already exists in the
diff --git a/watch-service.md b/watch-service.md
index a65115a..5ae5362 100644
--- a/watch-service.md
+++ b/watch-service.md
@@ -302,7 +302,7 @@ list.
Return values
-- result<list<option<(
string, list<u8>)>>, error>
+- result<list<(
string, option<list<u8>>)>, error>
set-many: func
Set the values associated with the keys in the store. If the key already exists in the
diff --git a/wit/batch.wit b/wit/batch.wit
index 70c05fe..495c939 100644
--- a/wit/batch.wit
+++ b/wit/batch.wit
@@ -29,7 +29,7 @@ interface batch {
/// MAY show an out-of-date value if there are concurrent writes to the store.
///
/// If any other error occurs, it returns an `Err(error)`.
- get-many: func(bucket: borrow, keys: list) -> result>>>, error>;
+ get-many: func(bucket: borrow, keys: list) -> result>>>, error>;
/// Set the values associated with the keys in the store. If the key already exists in the
/// store, it overwrites the value.
From 15965a382bc5732d7bee077f5a2270f1da8cd836 Mon Sep 17 00:00:00 2001
From: danbugs
Date: Sat, 15 Aug 2026 11:59:24 -0700
Subject: [PATCH 2/3] docs: clarify get-many returns an entry for every key
requested
Update the doc comment to make it explicit that the returned list
always contains one entry per requested key, with `none` for the
value if the key does not exist. Regenerate imports.md and
watch-service.md to match.
---
imports.md | 6 +++---
watch-service.md | 6 +++---
wit/batch.wit | 6 +++---
3 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/imports.md b/imports.md
index 6bb14ad..6bd6180 100644
--- a/imports.md
+++ b/imports.md
@@ -292,9 +292,9 @@ resource.
Functions
get-many: func
Get the key-value pairs associated with the keys in the store. It returns a list of
-key-value pairs.
-If any of the keys do not exist in the store, it returns a none value for that pair in the
-list.
+key-value pairs, one for each key requested.
+The returned list contains an entry for every key provided. If a key does not exist in the
+store, its corresponding value will be none.
MAY show an out-of-date value if there are concurrent writes to the store.
If any other error occurs, it returns an Err(error).
Params
diff --git a/watch-service.md b/watch-service.md
index 5ae5362..d0612a2 100644
--- a/watch-service.md
+++ b/watch-service.md
@@ -290,9 +290,9 @@ resource.
Functions
get-many: func
Get the key-value pairs associated with the keys in the store. It returns a list of
-key-value pairs.
-If any of the keys do not exist in the store, it returns a none value for that pair in the
-list.
+key-value pairs, one for each key requested.
+The returned list contains an entry for every key provided. If a key does not exist in the
+store, its corresponding value will be none.
MAY show an out-of-date value if there are concurrent writes to the store.
If any other error occurs, it returns an Err(error).
Params
diff --git a/wit/batch.wit b/wit/batch.wit
index 495c939..ed7f6dd 100644
--- a/wit/batch.wit
+++ b/wit/batch.wit
@@ -21,10 +21,10 @@ interface batch {
use store.{bucket, error};
/// Get the key-value pairs associated with the keys in the store. It returns a list of
- /// key-value pairs.
+ /// key-value pairs, one for each key requested.
///
- /// If any of the keys do not exist in the store, it returns a `none` value for that pair in the
- /// list.
+ /// The returned list contains an entry for every key provided. If a key does not exist in the
+ /// store, its corresponding value will be `none`.
///
/// MAY show an out-of-date value if there are concurrent writes to the store.
///
From 620a84c39e575ccddd97b2ae901f68a033d4d2cd Mon Sep 17 00:00:00 2001
From: danbugs
Date: Sat, 15 Aug 2026 12:04:23 -0700
Subject: [PATCH 3/3] ci: update wit-abi-up-to-date to v25
The v22 action fails because it looks for a pre-built binary at
tag `wit-bindgen-cli-0.32.0` which no longer exists. The v25
action uses cargo install with caching instead, which resolves
the tool from crates.io and works for any published version.
---
.github/workflows/main.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index e71c041..0b36d11 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - uses: WebAssembly/wit-abi-up-to-date@v22
+ - uses: WebAssembly/wit-abi-up-to-date@v25
with:
wit-bindgen: '0.32.0'
worlds: 'imports watch-service'
\ No newline at end of file