Команда Vite заявила о значительном росте производительности сборки благодаря новому бандлеру Rolldown, написанному на Rust. По их данным, скорость сборки увеличивается в 10–30 раз по сравнению с Rollup и сопоставима с esbuild, который также использует нативный код.
Rolldown как единый бандлер
В Vite 8 Rolldown заменяет сразу два инструмента, которые ранее использовались параллельно: esbuild для разработки и Rollup для продакшн-сборки. Теперь это единый бандлер, что устраняет необходимость поддерживать две разные цепочки трансформаций.
Rolldown совместим с существующей экосистемой, так как поддерживает тот же API плагинов, что и Rollup. Это позволяет использовать большинство текущих плагинов без изменений.
Сам проект пока находится в статусе release candidate, а функция минификации остаётся на стадии alpha.
Основа на Oxc и Rust-инструментах
Rolldown построен поверх Oxc - набора инструментов на Rust, включающего линтинг, форматирование, парсинг, трансформацию TypeScript и JSX, а также разрешение модулей и минификацию.
Оба проекта развиваются компанией VoidZero, основанной Эваном Ю, создателем Vite и Vue. Идея заключается в создании единого инструментария для устранения фрагментации и несовместимости в JavaScript-экосистеме.
Дополнительные изменения в Vite 8
В новой версии появились инструменты DevTools для анализа сборки и отладки, доступные при использовании Rolldown. Также добавлена поддержка WebAssembly в SSR и возможность проксирования логов браузера в терминал dev-сервера.
В планах команды реализовать режим полной бандлизации в процессе разработки. Предварительные результаты показывают ускорение старта dev-сервера в 3 раза, ускорение полной перезагрузки на 40% и снижение количества сетевых запросов в 10 раз.
Практические результаты и реакция
Ранние отзывы разработчиков в основном положительные и связаны с ускорением сборки. В одном из проектов время сборки сократилось с 12 минут до 2 минут.
Похожие подходы используются и в других инструментах: Turbopack от Vercel и Rspack от ByteDance, также написанные на Rust. При этом Rolldown и Vite сохраняют преимущество за счёт широкой поддержки фреймворков и развитой экосистемы плагинов.
Тренд на нативные инструменты
Переход к нативным языкам затрагивает и другие части экосистемы. Например, компилятор TypeScript планируется переписать на Go с заявленным приростом производительности более чем в 10 раз.
При этом возникает вопрос о целесообразности использования интерпретируемых языков вне браузера, учитывая преимущества нативных решений в скорости и потреблении ресурсов.
Источник: DevClass