From dc34f24988eaaac29a3fd197a72bf31280035f19 Mon Sep 17 00:00:00 2001 From: Anthony Lukach Date: Tue, 21 Jul 2026 22:43:14 -0700 Subject: [PATCH 1/4] chore(deps): bump worker to 0.8 so consumers can track latest release worker was constrained to 0.7.x, blocking downstream Cloudflare Workers consumers from using the current worker 0.8.5. The wasm-streams conflict that originally forced a pin was resolved by the object_store 0.14 / reqwest 0.13 upgrade, so 0.8 builds cleanly with no source changes. Co-Authored-By: Claude Opus 4.8 (1M context) --- Cargo.lock | 82 ++++++++++++++++++++++++++++++++++++++---------------- Cargo.toml | 5 ++-- 2 files changed, 61 insertions(+), 26 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ebd149e..f3cadbe 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1108,13 +1108,12 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.98" +version = "0.3.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67df7112613f8bfd9150013a0314e196f4800d3201ae742489d999db2f979f08" +checksum = "53b44bfcdb3f8d5837a46dae1ca9660a837176eee74a28b229bc626816589102" dependencies = [ "cfg-if", "futures-util", - "once_cell", "wasm-bindgen", ] @@ -2012,7 +2011,7 @@ dependencies = [ "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", + "wasm-streams 0.5.0", "web-sys", ] @@ -2403,6 +2402,27 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" +[[package]] +name = "strum" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "subtle" version = "2.6.1" @@ -2858,9 +2878,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.121" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49ace1d07c165b0864824eee619580c4689389afa9dc9ed3a4c75040d82e6790" +checksum = "4b067c0c11094aef6b7a801c1e34a26affafdf3d051dba08456b868789aaf9a4" dependencies = [ "cfg-if", "once_cell", @@ -2871,9 +2891,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.71" +version = "0.4.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96492d0d3ffba25305a7dc88720d250b1401d7edca02cc3bcd50633b424673b8" +checksum = "c62df1340f32221cb9c54d6a27b030e3dba64361d4a95bed55f9aacb44da291d" dependencies = [ "js-sys", "wasm-bindgen", @@ -2881,9 +2901,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.121" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e68e6f4afd367a562002c05637acb8578ff2dea1943df76afb9e83d177c8578" +checksum = "167ce5e579f6bcf889c4f7175a8a5a585de84e8ff93976ce393efa5f2837aab1" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2891,9 +2911,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.121" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d95a9ec35c64b2a7cb35d3fead40c4238d0940c86d107136999567a4703259f2" +checksum = "f3997c7839262f4ef12cf90b818d6340c18e80f263f1a94bf157d0ec4420380e" dependencies = [ "bumpalo", "proc-macro2", @@ -2904,9 +2924,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.121" +version = "0.2.126" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4e0100b01e9f0d03189a92b96772a1fb998639d981193d7dbab487302513441" +checksum = "dc1b4cb0cc549fcf58d7dfc081778139b3d283a081644e833e84682ad71cea24" dependencies = [ "unicode-ident", ] @@ -2946,6 +2966,19 @@ dependencies = [ "web-sys", ] +[[package]] +name = "wasm-streams" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d3be8814f5ba5f074491a469eed3d73c273ffad955f25ed1635efac4b0d269" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + [[package]] name = "wasmparser" version = "0.244.0" @@ -2960,9 +2993,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.98" +version = "0.3.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b572dff8bcf38bad0fa19729c89bb5748b2b9b1d8be70cf90df697e3a8f32aa" +checksum = "8622dcb61c0bcc9fffa6938bed81210af2da9a7e4a1a834b2e37a59b6dfb6141" dependencies = [ "js-sys", "wasm-bindgen", @@ -3310,9 +3343,9 @@ dependencies = [ [[package]] name = "worker" -version = "0.7.5" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7267f3baa986254a8dace6f6a7c6ab88aef59f00c03aaad6749e048b5faaf6f6" +checksum = "2f8adbf6c9ae45b665dee995c5e3a342c2bd7d58a2e8ca5c75b50ce8b1b8bfd9" dependencies = [ "async-trait", "bytes", @@ -3328,11 +3361,12 @@ dependencies = [ "serde-wasm-bindgen", "serde_json", "serde_urlencoded", + "strum", "tokio", "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", + "wasm-streams 0.6.0", "web-sys", "worker-macros", "worker-sys", @@ -3340,25 +3374,25 @@ dependencies = [ [[package]] name = "worker-macros" -version = "0.7.5" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7410081121531ec2fa111ab17b911efc601d7b6d590c0a92b847874ebeff0030" +checksum = "6d908735d273dd7f9c325a842623f4e5a745e0686187ce465b34dc162ad348df" dependencies = [ "async-trait", "proc-macro2", "quote", + "strum", "syn", "wasm-bindgen", - "wasm-bindgen-futures", "wasm-bindgen-macro-support", "worker-sys", ] [[package]] name = "worker-sys" -version = "0.7.5" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4777582bf8a04174a034cb336f3702eb0e5cb444a67fdaa4fd44454ff7e2dd95" +checksum = "33faa1a8fa6c7eec67b196e008859c44d468a5ad4f991855cdc856f119e0e98f" dependencies = [ "cfg-if", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 8a0073b..74abc6f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -83,8 +83,9 @@ tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Cloudflare Workers -# worker 0.7.5+ requires wasm-streams 0.5, which needs reqwest 0.13.2+ (via object_store 0.14) -worker = "0.7.5" +# Unpinned so consumers can track the latest worker release. worker 0.7.5+ needs +# wasm-streams 0.5, satisfied since object_store 0.14 / reqwest 0.13.2. +worker = "0.8" wasm-bindgen = "0.2" wasm-bindgen-futures = "0.4" js-sys = "0.3" From 5967481ffdcc79f299ea3bcfd6f526d0a6d9d222 Mon Sep 17 00:00:00 2001 From: Anthony Lukach Date: Tue, 21 Jul 2026 22:43:41 -0700 Subject: [PATCH 2/4] docs: drop temporal framing from worker dep comment --- Cargo.toml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 74abc6f..efa95fe 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -83,8 +83,7 @@ tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Cloudflare Workers -# Unpinned so consumers can track the latest worker release. worker 0.7.5+ needs -# wasm-streams 0.5, satisfied since object_store 0.14 / reqwest 0.13.2. +# worker needs wasm-streams 0.5, provided via object_store 0.14 / reqwest 0.13.2. worker = "0.8" wasm-bindgen = "0.2" wasm-bindgen-futures = "0.4" From 3afd8201fc1eaee41352b5240a18108ecf274976 Mon Sep 17 00:00:00 2001 From: Anthony Lukach Date: Tue, 21 Jul 2026 22:52:52 -0700 Subject: [PATCH 3/4] docs(cf-workers): note worker major-version alignment for consumers --- crates/cf-workers/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crates/cf-workers/README.md b/crates/cf-workers/README.md index 0030b5d..9517b1e 100644 --- a/crates/cf-workers/README.md +++ b/crates/cf-workers/README.md @@ -8,6 +8,8 @@ Provides everything needed to run the multistore proxy on Cloudflare Workers: a This crate only compiles for `wasm32-unknown-unknown`. +Depend on the same `worker` major version as this crate (see its `Cargo.toml`) so your Worker entrypoint and multistore resolve to a single `worker` copy in the bundle. + ## Feature Flags - `azure` — Azure Blob Storage backend support From b2f267e05d529efed6e38617a990f40ccce09301 Mon Sep 17 00:00:00 2001 From: Anthony Lukach Date: Tue, 21 Jul 2026 22:59:57 -0700 Subject: [PATCH 4/4] fix(deps): bump worker-build to 0.8 to match worker 0.8 worker-build ^0.7 rejects worker 0.8.5 ("Unsupported version"), breaking the "Build worker" CI step and the preview deploy. Bump the pin in both the CI workflow and the example wrangler.toml, and drop the now-stale wasm-streams note on the worker dep. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/ci.yml | 5 ++--- Cargo.toml | 2 +- examples/cf-workers/wrangler.toml | 5 ++--- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f2649c9..0905dfd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -124,9 +124,8 @@ jobs: - name: Build worker working-directory: examples/cf-workers run: | - # worker-build ^0.7 to match worker 0.7.x in Cargo.toml. - # worker-build 0.8+ requires worker 0.8+ (a separate upgrade). - cargo install worker-build --version "^0.7" + # worker-build ^0.8 to match worker 0.8.x in Cargo.toml. + cargo install worker-build --version "^0.8" worker-build --release - name: Write .dev.vars diff --git a/Cargo.toml b/Cargo.toml index efa95fe..533fcfc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -83,7 +83,7 @@ tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # Cloudflare Workers -# worker needs wasm-streams 0.5, provided via object_store 0.14 / reqwest 0.13.2. +# Bumping the major requires a matching worker-build (see examples/cf-workers/wrangler.toml). worker = "0.8" wasm-bindgen = "0.2" wasm-bindgen-futures = "0.4" diff --git a/examples/cf-workers/wrangler.toml b/examples/cf-workers/wrangler.toml index dca4bc2..084b446 100644 --- a/examples/cf-workers/wrangler.toml +++ b/examples/cf-workers/wrangler.toml @@ -3,9 +3,8 @@ main = "build/worker/shim.mjs" name = "multistore" [build] -# worker-build ^0.7 to match worker 0.7.x in Cargo.toml. -# worker-build 0.8+ requires worker 0.8+ (a separate upgrade). -command = "cargo install worker-build --version '^0.7' && worker-build --release" +# worker-build ^0.8 to match worker 0.8.x in Cargo.toml. +command = "cargo install worker-build --version '^0.8' && worker-build --release" [vars] VIRTUAL_HOST_DOMAIN = "s3.local"