Deno 2.9 ускорил холодный старт до 17 мс и собирает десктоп в один бинарник
Рантайм Deno теперь стартует за 17,3 мс — вдвое быстрее версии 2.8, а экспериментальный `deno desktop` превращает приложение на Next.js или Astro в один кросс-платформенный бинарник. Бывший инженер Deno использовал релиз как повод заявить: проект тихо обходит Bun.
Deno 2.9 вдвое сократил холодный старт — до 17,3 мс, разогнал один реальный HTTP-бенчмарк до 72,4k req/s и добавил `deno desktop`: указываете на веб-приложение, он сам определяет фреймворк и кросс-компилирует под Windows, macOS и Linux с одной машины.
Бывший инженер Deno говорит: обилие доступа к ИИ позволило команде наконец одолеть порядок событий в event loop у Node, тогда как Bun «оно пустило под откос». Давний сторонник не согласен: он ловил регрессии Node-совместимости между минорными релизами и винит PR, написанные в соавторстве с Claude.
Deno 2.9 хочет, чтобы вы забыли, что он когда-то был просто CLI

Главное в Deno 2.9 — не доработка рантайма, а смена категории. Новый экспериментальный deno desktop берёт готовое веб-приложение, сам определяет фреймворк (Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit и другие) и компилирует его в один нативный бинарник. В комплекте два бэкенда рендеринга: по умолчанию системный нативный webview или встроенный Chromium (CEF), когда он нужен. С одной машины вы кросс-компилируете под Windows, macOS и Linux.
Под этим рантайм заметно ускорился. Холодный старт упал с 34,2 мс в 2.8 до 17,3 мс, в 1,98 раза. Один реальный HTTP-бенчмарк вырос с 56,8k до 72,4k req/s, и та же нагрузка теперь ест в 2,2 раза меньше памяти (в 3,1 раза меньше при передаче тела в 1 MiB). Совместимость с Node подтянули до Node.js 26.3.0, а голые встроенные модули вроде import "fs" наконец резолвятся без флага конфигурации.
Остальное читается как бэклог, разобранный за раз. deno install теперь читает lock-файлы прямо из npm, pnpm, yarn и Bun, заполняя deno.lock точными версиями, чтобы смена менеджера больше не запускала повторный резолв всего. deno compile --bundle --minify обрезает деревом hello-world на lodash с 11,6 МБ до 1,5 МБ. Дефолты против supply-chain-атак ужесточили: min-release-age теперь по умолчанию на 24 часа блокирует свежеопубликованные версии npm: это защита от скомпрометированных пакетов. Web Crypto API получил постквантовые алгоритмы (ML-KEM, ML-DSA, SLH-DSA), а crypto.subtle переписали с JavaScript на Rust.
Тред спорит не о фичах — он спорит о том, кто побеждает
Самую резкую защиту выдал человек с личной ставкой в игре. Мэтт Мастраччи, отмечающий, что он бывший инженер Deno, подал релиз как историю о том, что ИИ делает с уже сложившимся характером компании:
«Deno всегда был более методичным, более сосредоточенным… на стандартах. Но теперь команда Deno на верном пути: они активно используют Claude, чтобы улучшить совместимость с node.js — а это было совершенно геркулесовой задачей, если не невозможной, до ИИ… Bun же, наоборот, всегда играл немного вольно и небрежно, гоняясь за метриками ценой стабильности. Доступ к обилию ИИ пустил этот проект под откос». — бывший инженер Deno
Он добавил, что, может быть, человек десять в мире понимают, насколько тонок тайминг и порядок в event loop у JS: именно от этого зависит Node-совместимость.
Самый цитируемый контраргумент пришёл от давнего пользователя, развернувшего тот же довод про ИИ в обратную сторону. Он перечислил два issue на GitHub, сломавших его проекты, и проследил их до PR в соавторстве с Claude:
«Я разочарован их вялым подходом к стабильности и тестированию… Недавно я наткнулся на несколько регрессий Node-совместимости в Deno, которые было сложно дебажить, и не помогает то, что они теперь используют Claude для всего — от собственно исправлений до написания постов в блог (включая и этот)». — разработчик, поймавший регрессии в собственных проектах
При этом он отдал должное встроенным в Deno проверке типов, LSP и форматтеру. Его претензия в том, что фокус уплывает с самого рантайма, и он сказал, что вернётся на Node ради стабильности.
Трение при миграции проявилось как живой опыт. Один разработчик попробовал путь deno install → deno task dev и получил ошибку версии Vite/Node, назвав это тем же паттерном «пограничный случай, простое исправление», который стопорит его всякий раз, когда он пытается уйти с Bun. Позже он отредактировал комментарий, признав, что его машина не приняла обновление: чистая переустановка запустила оба проекта нормально, и он извинился за дезинформацию. Сам разворот — отдельная точка данных: половина репутационной проблемы Deno в том, что апгрейды хрупки, реально или в восприятии.
Скептичны не все. Геймдев рассказал, как выпускает свой градостроительный симулятор Microlandia на Deno: ядро симуляции собрано через deno compile в TypeScript-исполняемый файл, работающий сайдкаром к фронтенду на Three.js/React:
«Я знаю, что мог бы перейти на Bun с небольшими правками в коде, но Deno ни разу мне не мешал». — разработчик коммерческой игры на Deno
А сквозным подтоном было простое удивление, что проект вообще жив: один комментатор думал, что Deno «умер во времена ковида», другой попросил TLDR — что это вообще такое. Для рантайма, который в одном релизе выпускает кросс-платформенные десктопные бинарники и постквантовую криптографию, главная угроза в этом треде — не Bun, а забвение.
Получайте такие разборы каждый день
Главные истории Hacker News — на email, в Telegram или RSS.
Физическое издание GTA 6 — коробка за $100 с кодом и без диска
В коробочной GTA 6 от Rockstar лежит листок с кодом активации. Бонус за предзаказ обещают только «пока есть запасы» — для вещи, состоящей из байтов.