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: externalize getbindingsproxy from cloudflare preset #8688

Merged
merged 10 commits into from
Feb 7, 2024

Conversation

pcattori
Copy link
Contributor

@pcattori pcattori commented Feb 5, 2024

Vite: Require getBindingsProxy from Wrangler for Cloudflare preset

This is a breaking change for projects using the Cloudflare preset for the unstable Vite plugin.

You must now pass in getBindingsProxy from Wrangler:

  // vite.config.ts
  import {
    unstable_vitePlugin as remix,
    unstable_cloudflarePreset as cloudflare,
  } from "@remix-run/dev";
  import { defineConfig } from "vite";
  import tsconfigPaths from "vite-tsconfig-paths";
+ import { getBindingsProxy } from "wrangler";

  export default defineConfig({
    plugins: [
      remix({
        presets: [
-         cloudflare()
+         cloudflare(getBindingsProxy)
        ],
      }),
      tsconfigPaths(),
    ],
    ssr: {
      resolve: {
        externalConditions: ["workerd", "worker"],
      },
    },
  });

Additionally, the getRemixDevLoadContext function now provides the request as part of the context:

cloudflare(getBindingsProxy, {
  getRemixDevLoadContext: ({ request, env}) => {
    // return augmented context here
  },
})

When using getRemixDevLoadContext, it's recommended that you create a load-context.ts file to define a shared getLoadContext function that you can use for both getRemixDevLoadContext in vite.config.ts as well as within functions/[[path]].ts.
For more, see the Future > Vite > Cloudflare docs.

Copy link

changeset-bot bot commented Feb 5, 2024

🦋 Changeset detected

Latest commit: 086d7e6

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

This PR includes changesets to release 16 packages
Name Type
@remix-run/dev Patch
create-remix Patch
remix Patch
@remix-run/architect Patch
@remix-run/cloudflare Patch
@remix-run/cloudflare-pages Patch
@remix-run/cloudflare-workers Patch
@remix-run/css-bundle Patch
@remix-run/deno Patch
@remix-run/eslint-config Patch
@remix-run/express Patch
@remix-run/node Patch
@remix-run/react Patch
@remix-run/serve Patch
@remix-run/server-runtime Patch
@remix-run/testing 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

@pcattori pcattori force-pushed the pedro/stabilize-cloudflare-preset branch from 9052cc2 to 5d0b47a Compare February 5, 2024 20:23
@pcattori pcattori marked this pull request as ready for review February 5, 2024 21:11
@pcattori pcattori force-pushed the pedro/stabilize-cloudflare-preset branch from 5d0b47a to 3dc64e5 Compare February 6, 2024 19:08
@pcattori pcattori changed the title vite: cloudflare preset improvements vite: externalize getbindingsproxy from cloudflare preset Feb 6, 2024
@markdalgleish
Copy link
Member

A couple of minor wording suggestions but nothing blocking 👍

@pcattori pcattori merged commit 48377b6 into dev Feb 7, 2024
9 checks passed
@pcattori pcattori deleted the pedro/stabilize-cloudflare-preset branch February 7, 2024 01:24
@github-actions github-actions bot added the awaiting release This issue has been fixed and will be released soon label Feb 7, 2024
Copy link
Contributor

🤖 Hello there,

We just published version 2.7.0-pre.0 which includes this pull request. If you'd like to take it for a test run please try it out and let us know what you think!

Thanks!

Copy link
Contributor

🤖 Hello there,

We just published version 2.7.0 which includes this pull request. If you'd like to take it for a test run please try it out and let us know what you think!

Thanks!

@github-actions github-actions bot removed the awaiting release This issue has been fixed and will be released soon label Feb 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants