Skip to content

Commit 755a27c

Browse files
Add Warning about browser rendering when running locally (#7533)
* Warn about browser rendering when running locally * fix warning check * update snapshot --------- Co-authored-by: emily-shen <[email protected]>
1 parent b4e0af1 commit 755a27c

File tree

3 files changed

+37
-0
lines changed

3 files changed

+37
-0
lines changed

.changeset/moody-suns-chew.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"wrangler": patch
3+
---
4+
5+
Add warning about the browser rendering not available on local

packages/wrangler/src/__tests__/dev.test.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1879,6 +1879,23 @@ describe.sequential("wrangler dev", () => {
18791879
});
18801880
});
18811881

1882+
describe("`browser rendering binding", () => {
1883+
it("should show error when running locally", async () => {
1884+
writeWranglerConfig({
1885+
browser: {
1886+
binding: "MYBROWSER",
1887+
},
1888+
});
1889+
fs.writeFileSync("index.js", `export default {};`);
1890+
1891+
await expect(
1892+
runWrangler("dev index.js")
1893+
).rejects.toThrowErrorMatchingInlineSnapshot(
1894+
"[Error: Browser Rendering is not supported locally. Please use `wrangler dev --remote` instead.]"
1895+
);
1896+
});
1897+
});
1898+
18821899
it("should error helpfully if pages_build_output_dir is set", async () => {
18831900
writeWranglerConfig({ pages_build_output_dir: "dist", name: "test" });
18841901
await expect(runWrangler("dev")).rejects.toThrowErrorMatchingInlineSnapshot(

packages/wrangler/src/api/startDevWorker/ConfigController.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,21 @@ async function resolveConfig(
315315
);
316316
}
317317

318+
if (resolved.assets && resolved.dev.remote) {
319+
throw new UserError(
320+
"Cannot use assets in remote mode. Workers with assets are only supported in local mode. Please use `wrangler dev`."
321+
);
322+
}
323+
324+
if (
325+
extractBindingsOfType("browser", resolved.bindings).length &&
326+
!resolved.dev.remote
327+
) {
328+
throw new UserError(
329+
"Browser Rendering is not supported locally. Please use `wrangler dev --remote` instead."
330+
);
331+
}
332+
318333
validateAssetsArgsAndConfig(resolved);
319334

320335
const services = extractBindingsOfType("service", resolved.bindings);

0 commit comments

Comments
 (0)