Bun 1.4 вышел с Bun.WebView для автоматизации браузера
20 августа 2026 года вышла Bun 1.4, первая стабильная версия JavaScript/TypeScript-рантайма Bun после перехода на Rust, случившегося, по словам автора поста, несколько месяцев назад. Сами релиз-ноты 1.4 почти не упоминают этот переход: вместо этого они перечисляют длинный список новых возможностей и заявляют более 2900 исправленных ошибок.
Согласно релиз-нотам, которые автор дословно цитирует, версия добавляет 1517 новых тестов из тестового набора Node.js, это называют самым большим скачком в совместимости с Node.js со времён Bun 1.0. Там же заявлены улучшения производительности, но без указания, с какой именно прежней версией идёт сравнение: нагрузка на процессор в простое снижена в 5 раз, потребление памяти сокращено максимум на 35%, а запуск на Linux стал быстрее на 50%. Список новых возможностей включает Bun.Image, Bun.WebView, Bun.markdown, Bun.cron(), Bun.Terminal, а также команды bun run --parallel, bun test --parallel, bun audit fix, bun dedupe и bun prune. Отдельным пунктом в тех же релиз-нотах значится и переход самого Bun с языка Zig на Rust, хотя по вступлению этот переход к моменту выхода 1.4 уже состоялся несколько месяцев назад.
Больше всего внимания в материале уделено именно Bun.WebView: эта возможность встраивает в ядро Bun полноценную поддержку автоматизации браузера, либо через WebKit на macOS, либо через управление локальным процессом Chromium по протоколу Chrome DevTools Protocol (CDP, протокол для удалённого управления браузером).
Чтобы опробовать новинку, прототип JSON-API поручили собрать ИИ-инструменту Claude Code for web: сервис должен загружать веб-страницу и затем выполнять на ней JavaScript-код. Идея скопирована с JavaScript-утилиты shot-scraper, более раннего инструмента с того же блога, но теперь на основе Bun.WebView вместо внешних средств автоматизации. Одна из целей эксперимента, понять, сколько оперативной памяти реально требует такой сервис. По замерам с помощью cgroups (механизма учёта и ограничения ресурсов в Linux), получившийся TypeScript-сервер, судя по всему, требует контейнер на 192, 256 МБ, чтобы запускать полноценный Chrome для сложных веб-страниц; в материале эта оценка описывается как приблизительная, а не как точная спецификация.
Ключевые факты
- Bun 1.4, первая стабильная версия рантайма после перехода на Rust; релиз-ноты заявляют более 2900 исправленных ошибок и добавление 1517 тестов из набора Node.js, по заявлению разработчиков, самый большой скачок в совместимости с Node.js со времён Bun 1.0.
- Заявленные улучшения производительности (без указания версии сравнения): нагрузка на CPU в простое снижена в 5 раз, потребление памяти сокращено максимум на 35%, запуск на Linux стал быстрее на 50%.
- Главная новая возможность, Bun.WebView: автоматизация браузера прямо в ядре Bun через WebKit на macOS или через CDP-управление локальным процессом Chromium.
- Релиз также добавляет Bun.Image, Bun.markdown, Bun.cron(), Bun.Terminal, команды bun run --parallel, bun test --parallel, bun audit fix, bun dedupe, bun prune и переписывание самого Bun с языка Zig на Rust.
- Прототип JSON-API на основе Bun.WebView (идея, с утилиты shot-scraper с того же блога) поручили собрать ассистенту Claude Code for web; по замерам через cgroups контейнеру для полноценного Chrome для сложных страниц нужно 192, 256 МБ.
Почему это важно
Bun.WebView делает встроенной частью самого рантайма то, что обычно требует отдельных библиотек: функция даёт возможность загружать страницу и выполнять на ней JavaScript через WebKit на macOS или через CDP-управление локальным процессом Chromium, без сторонних инструментов автоматизации браузера. Одновременно 1.4 называется в материале первой стабильной версией после перехода Bun на Rust, а сами релиз-ноты заявляют сразу несколько крупных чисел: более 2900 исправлений и полторы тысячи новых тестов совместимости с Node.js, то есть релиз одновременно расширяет покрытие сценариев Node.js и добавляет новую категорию встроенных возможностей (браузер, изображения, cron, терминал), а не только чинит ошибки.
Кому это важно
В первую очередь, JavaScript- и TypeScript-разработчикам, которые уже используют Bun или рассматривают переход с Node.js: релиз обещает более широкую совместимость и, по собственным данным разработчиков, заметный прирост производительности. Во вторую, тем, кто строит инструменты браузерной автоматизации, скрапинга или тестирования: Bun.WebView избавляет от необходимости подключать отдельные библиотеки для управления браузером. В третью, тем, кто собирает агентные ИИ-инструменты, использующие браузер как окружение: ровно такую задачу, загрузку страницы и выполнение на ней кода, решает прототип JSON-API из материала, собранный с помощью Claude Code for web.
Как это применить
Материал не приводит ни цены, ни условий лицензирования, ни статуса доступности Bun.WebView (в тексте она описана только для macOS и для управления локальным процессом Chromium через CDP), эти детали для практического использования придётся уточнять отдельно. Для тех, кто хочет повторить эксперимент и собрать на Bun.WebView сервис, который загружает страницы и исполняет на них JavaScript, стоит заранее закладывать ресурсы на реальный процесс Chrome: по приблизительной оценке через cgroups, для сложных страниц контейнеру нужно 192, 256 МБ. Новые команды, bun audit fix, bun dedupe, bun prune, параллельные bun run --parallel и bun test --parallel, и API Bun.Image, Bun.markdown, Bun.cron(), Bun.Terminal доступны сразу после обновления до версии 1.4, согласно перечню в релиз-нотах.
Можно ли доверять
Материал, личный блог-пост от первого лица. Имя автора нигде не названо в самом тексте заметки; по метаданным источника (не по тексту) блог ведёт Саймон Уиллисон. Все числа о новой версии, более 2900 исправлений, 1517 новых тестов, снижение нагрузки на CPU в 5 раз, экономия памяти максимум на 35%, ускорение запуска на 50% на Linux, это собственные заявления релиз-нот Bun, процитированные в материале, а не результат независимой проверки; ни для одного из этих улучшений не назван конкретный номер версии для сравнения. Оценка в 192, 256 МБ памяти на контейнер, тоже не паспортная характеристика, а приблизительный замер на одном прототипе через cgroups.
Риски и подводные камни
Все впечатляющие цифры релиза, более 2900 исправлений, 1517 новых тестов, снижение нагрузки на CPU в 5 раз, экономия памяти максимум на 35%, ускорение запуска на 50% на Linux, исходят из собственных релиз-нот Bun и процитированы без указания версии, с которой идёт сравнение, и без независимой проверки: переносить эти числа на свою нагрузку без собственной проверки не стоит. Оценка памяти для Bun.WebView-сервиса (192, 256 МБ на контейнер), тоже не паспортная величина, а разовый приблизительный замер через cgroups на одном прототипе для неназванных «сложных страниц»; для другого набора страниц или другой ОС результат может отличаться, а материал такой проверки не приводит. Наконец, в тексте не сказано, кто разрабатывает и поддерживает Bun и на каких условиях лицензируется Bun.WebView, эти открытые вопросы стоит закрыть перед тем, как полагаться на новую функцию в продакшене.