insight Simon Willison 2026-10-09T22:48 正文 ok 369 words

Deno 将加入 Cloudflare

英文标题:Deno is joining Cloudflare

Cloudflare 将全资收购 Deno,并计划基于 Deno 团队开源的 celld 项目,推动 workerd 自托管成为 Workers 编程模型的一等开发和运行方式。Cloudflare 将在未来一年继续以每月发布的形式维护 Deno runtime,提供漏洞修复和安全更新,之后将停止其开发。Deno 与 Node.js 创始人 Ryan Dahl 表示,Deno 受 Node 兼容性需求牵引,难以解决更大的问题;他希望转向 celld 所代表的新型服务器开发抽象。对开发者而言,Deno 的权限模型仍具价值,但 Node.js 已具备类似权限机制,只是尚不支持按具体网络主机设置白名单。
打开原文相关 2.4 · 机会 2

中文

2026 年 10 月 9 日 - 链接博客

Deno 将加入 Cloudflare([来源](https://news.ycombinator.com/item?id=50019911 "Hacker News")Deno 团队在今年 8 月发布了 celld 的首个版本——这是他们对 Cloudflare Workers 中 Durable Objects 模式的开源实现。

今天,Cloudflare 将全资收购 Deno,目标是以 celld 为基础,“让 workerd 自托管成为使用 Workers 编程模型构建和运行应用的一种一等且受支持的方式”(参见 Cloudflare 博客)。

坏消息是,Cloudflare 不会在明年之后继续维护 Deno 本身:

我们将在未来一年继续支持 Deno runtime,每月发布包含错误修复和安全更新的版本。一年后,我们将停止 Deno runtime 的开发。Deno 将继续保持开源,我们欢迎其他希望继续推进其开发的人。

Deno(以及 Node.js)的创建者 Ryan Dahl 在 Hacker News 的一条评论中解释了这一决定:

这是一个共同决定,我也认同它。我是最投入于其成功、也是为它付出最多工作的人——但我不再认为这是我能够从事最重要工作的方向。Deno 中有一些不错的想法,工程实现也很好——但归根结底,它并没有解决重大问题。它已被 Node 兼容性的引力井所吸入,这迫使它的行为必须与 Node 完全一致。为什么要重新实现 Node?它本来就能用。边际性的性能、用户体验或安全性收益并不够。

我感兴趣的是构建强大的新抽象。celld 的运行效果非常出色,它仅依赖对象存储来完成协调和持久化。它不只是一个与文件系统或网络交互时略有不同的 API——它是一个全新的服务器开发模型。

我长期以来最喜欢的 Deno 功能是其权限系统:你可以运行一个 Deno 脚本,并精确指定它可以读取和写入哪些文件及文件夹,以及可以访问哪些网络主机。

如今,Node.js 也拥有类似的权限模型:该功能于 2023 年 4 月随 Node v20.0.0 加入,并于 2025 年 1 月在 Node v22.13.0 中被宣布为稳定功能。不过,它们尚不支持为特定网络主机设置允许列表——网络访问目前只能整体开启或关闭。

English / 原文

9th October 2026 - Link Blog

Deno is joining Cloudflare (via) The Deno team released the first version of celld back in August - their open source implementation of the Durable Objects pattern from Cloudflare Workers.

Today, Cloudflare are acquiring Deno outright, with the goal of building on celld to "make workerd self-hosting a first-class supported way to build and run apps using the Workers programming model" (see the Cloudflare blog.)

The bad news is that Deno itself will not be maintained by Cloudflare beyond the next year:

We will support the Deno runtime for another year with monthly releases containing bug fixes and security updates. After that year we will end our development of the Deno runtime. Deno will remain open source, and we welcome others who want to continue its development.

Deno (and Node.js) creator Ryan Dahl explained that decision in a comment on Hacker News:

It's a joint decision and I agree with it. I'm most invested in its success and have put the most work into it - and I no longer think it's where I can do the most important work. There are some good ideas in Deno and it's well engineered - but it ultimately is not solving big problems. It has been sucked into the gravity well of node compatibility, which forces it to behave exactly as Node does. Why reimplement Node? It works. Marginal performance or UX or security benefits are not enough.

I'm interested in building powerful new abstractions. celld has been working remarkably well, depending only on object storage for coordination and persistence. It is not just a slightly different API to interact with the file system or network - it's an entirely new model for server development.

My favorite feature of Deno has long been the permissions system, where you can run a Deno script and specify exactly which files and folders it can read and write to, and which network hosts it can access.

Node.js has a similar permissions model these days, added in Node v20.0.0 in April 2023 and declared stable in Node v22.13.0 in January 2025. They don't yet support allow-listing specific network hosts though - networking is either on or off.