Skip to content

Conversation

@edmundhung
Copy link
Member

Fixes n/a.

The getPlatformProxy() API was designed for framework integrations on Cloudflare Pages with DO support limited to external workers only (i.e. DO with script_name specified).

This PR enables local DO binding support (including RPC) if the user is building on Cloudflare Workers (e.g. with Static Assets).


  • Tests
    • TODO (before merge)
    • Tests included
    • Tests not necessary because:
  • E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)
    • I don't know
    • Required
    • Not required because:
  • Public documentation
    • TODO (before merge)
    • Cloudflare docs PR(s):
    • Documentation not necessary because:

@changeset-bot
Copy link

changeset-bot bot commented Nov 19, 2024

⚠️ No Changeset found

Latest commit: 104b2e9

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@edmundhung edmundhung changed the title initial draft copied from #7087 feat(wrangler): add local DO support with getPlatformProxy Nov 19, 2024
@edmundhung edmundhung force-pushed the edmundhung/platform-proxy-local-do branch from 7df228e to 77a3aaf Compare November 19, 2024 17:32
@github-actions
Copy link
Contributor

github-actions bot commented Nov 19, 2024

A wrangler prerelease is available for testing. You can install this latest build in your project with:

npm install --save-dev https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-wrangler-7292

You can reference the automatically updated head of this PR with:

npm install --save-dev https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/prs/7292/npm-package-wrangler-7292

Or you can use npx with this latest build directly:

npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-wrangler-7292 dev path/to/script.js
Additional artifacts:
wget https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-workers-bindings-extension-7292 -O ./cloudflare-workers-bindings-extension.0.0.0-v1fc1de75a.vsix && code --install-extension ./cloudflare-workers-bindings-extension.0.0.0-v1fc1de75a.vsix
npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-create-cloudflare-7292 --no-auto-update
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-kv-asset-handler-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-miniflare-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-pages-shared-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-unenv-preset-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-vitest-pool-workers-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-workers-editor-shared-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-workers-shared-7292
npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12471346157/npm-package-cloudflare-workflows-shared-7292

Note that these links will no longer work once the GitHub Actions artifact expires.


[email protected] includes the following runtime dependencies:

Package Constraint Resolved
miniflare workspace:* 3.20241218.0
workerd 1.20241218.0 1.20241218.0
workerd --version 1.20241218.0 2024-12-18

Please ensure constraints are pinned, and miniflare/workerd minor versions match.

@edmundhung edmundhung force-pushed the edmundhung/platform-proxy-local-do branch from 47e8508 to 726b0e4 Compare December 23, 2024 14:11
@ajaishankar
Copy link

Really looking forward to this support!

Currently this is what I have for my setup and tests 🙂

  1. wrangler.toml (prod)
  2. wrangler-local.toml (with script_name = "do-worker" pointing to external DO worker)
  3. wrangler-do.toml (without script_name to run DO locally)
  4. wrangler-test.toml (for tests - to run tests without DO)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants