Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[vite-plugin-cloudflare] make sure that runner initialization is properly validated #7846

Merged
merged 2 commits into from
Jan 22, 2025

Conversation

dario-piotrowicz
Copy link
Member

@dario-piotrowicz dario-piotrowicz commented Jan 21, 2025

Fixes flarelabs-net/vite-plugin-cloudflare#59

The plugin validation around the module runner initialization is not properly propagated, the changes here make sure
that it is and that a (hopefully) helpful error message is shown to the user

An easy way to see the different behavior here is to make the createModuleRunner function always throw:
Screenshot 2025-01-21 at 15 30 14
and run a playground application, without the changes here it's not clear/surfaced that the runner failed initialization


  • Tests
    • TODO (before merge)
    • Tests included
    • Tests not necessary because: this is an extra check that, it is just in case, we don't expect the error to be triggered and testing this would require some potentially hacking tweaks in the runner initialization code (so that it can throw with no proper reason), so it's most likely not worth it, I am happy to have a look if we do strongly believe that this needs testing though
  • E2E Tests CI Job required? (Use "e2e" label or ask maintainer to run separately)
    • I don't know
    • Required
    • Not required because: no wrangler changes
  • Public documentation
    • TODO (before merge)
    • Cloudflare docs PR(s):
    • Documentation not necessary because: just better error handling

@dario-piotrowicz dario-piotrowicz requested a review from a team as a code owner January 21, 2025 15:27
Copy link

changeset-bot bot commented Jan 21, 2025

🦋 Changeset detected

Latest commit: b6d547a

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@cloudflare/vite-plugin Patch

Not sure what this means? Click here to learn what changesets are.

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

@dario-piotrowicz dario-piotrowicz force-pushed the dario/flarelabs/59/modulerunner-validation branch from 5de498f to 1572c8a Compare January 21, 2025 15:29
@dario-piotrowicz dario-piotrowicz changed the title [vite-plugin-cloudflare] make sure that runner initialization is validated [vite-plugin-cloudflare] make sure that runner initialization is properly validated Jan 21, 2025
@jamesopstad jamesopstad added the vite-plugin Relating to the `@cloudflare/vite-plugin` package label Jan 21, 2025
Copy link
Contributor

github-actions bot commented Jan 21, 2025

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/12890740728/npm-package-wrangler-7846

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

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

Or you can use npx with this latest build directly:

npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-wrangler-7846 dev path/to/script.js
Additional artifacts:

cloudflare-workers-bindings-extension:

wget https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-workers-bindings-extension-7846 -O ./cloudflare-workers-bindings-extension.0.0.0-v74b239dff.vsix && code --install-extension ./cloudflare-workers-bindings-extension.0.0.0-v74b239dff.vsix

create-cloudflare:

npx https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-create-cloudflare-7846 --no-auto-update

@cloudflare/kv-asset-handler:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-kv-asset-handler-7846

miniflare:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-miniflare-7846

@cloudflare/pages-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-pages-shared-7846

@cloudflare/unenv-preset:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-unenv-preset-7846

@cloudflare/vite-plugin:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-vite-plugin-7846

@cloudflare/vitest-pool-workers:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-vitest-pool-workers-7846

@cloudflare/workers-editor-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-workers-editor-shared-7846

@cloudflare/workers-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-workers-shared-7846

@cloudflare/workflows-shared:

npm install https://prerelease-registry.devprod.cloudflare.dev/workers-sdk/runs/12890740728/npm-package-cloudflare-workflows-shared-7846

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.20241230.2
workerd 1.20241230.0 1.20241230.0
workerd --version 1.20241230.0 2024-12-30

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

…is properly validated

remove extra `JSON.stringify` call
@dario-piotrowicz dario-piotrowicz merged commit cd31971 into main Jan 22, 2025
32 checks passed
@dario-piotrowicz dario-piotrowicz deleted the dario/flarelabs/59/modulerunner-validation branch January 22, 2025 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
vite-plugin Relating to the `@cloudflare/vite-plugin` package
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Missing validation: createModuleRunner
3 participants