Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/tidy-pandas-smile.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"wrangler": patch
---

Keep the local development server running when proxying an individual request fails.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,28 @@ import { FakeBus } from "../../helpers/fake-bus";
import { mockConsoleMethods } from "../../helpers/mock-console";

describe("ProxyController", () => {
mockConsoleMethods();
const std = mockConsoleMethods();

test("request-scoped ProxyWorker errors are logged without stopping dev", ({
expect,
}) => {
const bus = new FakeBus();
const controller = new ProxyController(bus);

controller.onProxyWorkerMessage({
type: "error",
error: {
name: "Error",
message: "Network connection lost.",
stack: "Error: Network connection lost.",
},
});

expect(bus.events).toEqual([]);
expect(std.err).toContain(
"Error proxying request to the local Worker: Network connection lost."
);
});

test("Runtime.exceptionThrown dispatches a typed runtimeError event", async ({
expect,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -475,7 +475,10 @@ export class ProxyController extends Controller {

break;
case "error":
this.emitErrorEvent("Error inside ProxyWorker", message.error);
logger.error(
"Error proxying request to the local Worker:",
message.error.message
);

break;
case "debug-log":
Expand Down
Loading