
Cloudflare Workers cập nhật registry module để tăng tương thích Node.js
"Cloudflare rebuilt the workerd module registry used by Workers to improve Node.js compatibility, standards-based URL resolution, and module loading behavior. The new implementation adds support for import.meta.url, import.meta.resolve(), import attributes, require(esm), lazy compilation, and WebAssembly source-phase imports, while also enabling larger Node.js apps and reducing runtime bundling constraints. No CVE is mentioned; the change is a compatibility and runtime architecture update rather than a security fix."
Không phải bản vá lỗ hổng; tác động chính là cải thiện tương thích runtime và giảm rủi ro lỗi do khác biệt hành vi module khi chạy ứng dụng Node.js trên Workers.
Có thể hỗ trợ ứng dụng lớn hơn và giảm phụ thuộc vào bundling ở bước build, từ đó đơn giản hóa triển khai và giảm chi phí điều chỉnh mã cho các đội phát triển.
Cloudflare đã viết lại module registry trong workerd để cải thiện tương thích với Node.js, chuẩn hóa cách phân giải URL và hành vi tải module trong Workers. Bản triển khai mới hỗ trợ import.meta.url, import.meta.resolve(), import attributes, require(esm), lazy compilation và WebAssembly source-phase imports.
Theo Cloudflare, thay đổi này không phải bản vá bảo mật mà là nâng cấp kiến trúc runtime. Tuy vậy, nó có ý nghĩa vận hành rõ rệt: các ứng dụng Node.js lớn hơn có thể chạy trên Workers, với giới hạn kích thước bundle nén được nâng lên 64 MiB trên mọi gói. Đồng thời, runtime có thể xử lý module graph gần hơn với cách Node.js hoạt động, giảm nhu cầu phải biến đổi mã quá nhiều ở bước build.
Người dùng có thể bật tính năng này bằng cờ tương thích **new_module_registry* trong Worker. Các đội kỹ thuật nên kiểm tra lại luồng ESM/CommonJS, các import dùng query string hoặc fragment, và các dependency phụ thuộc vào node: built-ins. Với ứng dụng đang triển khai nhiều module hoặc dùng --no-bundle, nên thử nghiệm sớm để đánh giá tác động đến build pipeline và khả năng tương thích runtime*.