Skip to content

Commit d0fda3d

Browse files
authored
No longer call next in server middleware. (#8080)
1 parent dba3f21 commit d0fda3d

File tree

4 files changed

+25
-11
lines changed

4 files changed

+25
-11
lines changed

.changeset/stale-zoos-drop.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
"@cloudflare/vite-plugin": minor
3+
---
4+
5+
No longer call `next` in server middleware.
6+
7+
This is so that the Cloudflare plugin can override subsequent dev middleware for framework integrations.

packages/vite-plugin-cloudflare/playground/hot-channel/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import { defineConfig } from "vite";
44

55
export default defineConfig({
66
plugins: [
7-
cloudflare({ persistState: false }),
87
{
98
name: "test-plugin",
109
configureServer(viteDevServer) {
@@ -22,5 +21,6 @@ export default defineConfig({
2221
};
2322
},
2423
},
24+
cloudflare({ persistState: false }),
2525
],
2626
});

packages/vite-plugin-cloudflare/src/cloudflare-environment.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ export function createCloudflareEnvironmentOptions(
161161
optimizeDeps: {
162162
// Note: ssr pre-bundling is opt-in and we need to enable it by setting `noDiscovery` to false
163163
noDiscovery: false,
164+
entries: workerConfig.main,
164165
exclude: [
165166
...cloudflareBuiltInModules,
166167
// we have to exclude all node modules to work in dev-mode not just the unenv externals...

packages/vite-plugin-cloudflare/src/index.ts

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -267,11 +267,14 @@ export function cloudflare(pluginConfig: PluginConfig = {}): vite.Plugin[] {
267267
miniflare
268268
);
269269

270-
const middleware = createMiddleware(({ request }) => {
271-
return entryWorker.fetch(toMiniflareRequest(request), {
272-
redirect: "manual",
273-
}) as any;
274-
});
270+
const middleware = createMiddleware(
271+
({ request }) => {
272+
return entryWorker.fetch(toMiniflareRequest(request), {
273+
redirect: "manual",
274+
}) as any;
275+
},
276+
{ alwaysCallNext: false }
277+
);
275278

276279
handleWebSocket(
277280
viteDevServer.httpServer,
@@ -293,11 +296,14 @@ export function cloudflare(pluginConfig: PluginConfig = {}): vite.Plugin[] {
293296
)
294297
);
295298

296-
const middleware = createMiddleware(({ request }) => {
297-
return miniflare.dispatchFetch(toMiniflareRequest(request), {
298-
redirect: "manual",
299-
}) as any;
300-
});
299+
const middleware = createMiddleware(
300+
({ request }) => {
301+
return miniflare.dispatchFetch(toMiniflareRequest(request), {
302+
redirect: "manual",
303+
}) as any;
304+
},
305+
{ alwaysCallNext: false }
306+
);
301307

302308
handleWebSocket(
303309
vitePreviewServer.httpServer,

0 commit comments

Comments
 (0)