Infrastructure

Cloudflare Workers turns on Node.js APIs by default, raises the bundle limit to 64 MiB, and adds a new module registry behind a flag

September 11, 2026 at 3:30 AM PT

Cloudflare blog card for the Workers module registry rewrite

Image: Cloudflare

Why it mattersA Node.js server that would not fit in a Worker last week may fit now, and code that relied on import.meta.url or a real require(esm) can move from a workaround to the standard path.

Cloudflare published a rewrite of the Workers runtime module registry on 9 September 2026. The same post announces two related changes: Node.js runtime APIs are now enabled by default in Workers, and the per-Worker bundle limit has been raised to 64 mebibytes on all plans, up from the previous ceiling.

What is on today

Cloudflare writes that the Workers runtime "now supports every stable API from Node.js that you might want to use in a serverless context, and these APIs are now enabled by default." The 64 MiB bundle limit ships alongside that and applies to every plan, not only paid ones. Both changes take effect without a compatibility flag.

What is behind the new_module_registry flag

The module registry rewrite is opt-in through the new_module_registry compatibility flag, and Cloudflare states there is no default-on date for it yet. Once turned on, a Worker gets URL-based specifiers, import.meta.url and import.meta.main, import.meta.resolve(), standards-conformant require(esm) semantics that follow Node.js including the ERR_REQUIRE_ASYNC_MODULE restriction on top-level await, validated import attributes with type: 'json' as the only accepted value today, and source-phase imports for WebAssembly through import.source().

Two behaviours worth flagging because they can change existing code. Query strings and fragments on a specifier now produce distinct module instances following browser module-identity rules, so ./counter.js?a and ./counter.js?b load the same source but keep separate top-level state. And any import attribute other than type is now a hard error instead of being silently ignored, which Cloudflare says fixes a spec violation in the previous implementation.

The rewrite also lets the runtime compile modules lazily rather than compiling every module in a bundle up front, and share compiled code across V8 isolate replicas of the same Worker rather than holding a private copy per isolate. Cloudflare frames both as steps toward letting bundlers like Rolldown do less work and letting the runtime handle more of the module resolution itself.

What stays the same

Cloudflare says the existing module registry is not going away, and existing Workers continue to run without changes. The new registry sits behind a flag rather than replacing the old one, so a team can adopt it Worker by Worker.

For anyone deploying a Node.js server to Workers, the two default-on changes matter first: an app that hit the previous size ceiling can now target Workers as a real deployment surface, and a codebase that already assumed a Node.js runtime does not need a compatibility flag to start. The registry rewrite is a second decision, worth taking when the code that was working around missing import.meta.url, require(esm), or WebAssembly source-phase imports becomes easier to delete than to keep.

Source

Source: Cloudflare

This item was written by an AI system from the linked source. Reveneau is responsible for what it publishes.

More from AI News

open-compute runs the Cloudflare Workers platform on your own hardware from one binary

open-compute packages the Cloudflare Workers runtime, KV, R2, D1, Durable Objects, Queues and Workflows into one self-hosted binary, and cut its first release on 5 September with 425 stars in under two weeks.

Source: GitHubInfrastructure

Cloudflare launches Vulnerability Discovery and Remediation, using WAF traffic to rank findings and propose patches

Cloudflare opened early access to Vulnerability Discovery and Remediation, an invitation-only service inside Managed Defense that pairs source code review by OpenAI Daybreak models with live WAF and traffic data to rank findings and draft both a code patch and an edge rule.

Source: Vendor blogInfrastructure

Cloudflare added optional OAuth scopes, so users can strip permissions an MCP server asks for

Cloudflare's OAuth provider now lets a client mark some scopes as optional, so a user can approve a subset instead of accepting or rejecting the whole list, with MCP servers cited as the motivating case.

Source: PressInfrastructure