


11 ноября вышел Vite 8.3.8. В стабильном обновлении исправили выдачу файлов, на которые ссылаются встроенные worker, и обработку CSS при сборке. На Mentoring.digital разбираем изменения для разработчиков интерфейсов и авторов конфигураций сборки.
Worker выполняет работу отдельно от основного потока страницы. В вариантах ?worker&inline и ?sharedworker&inline его код встраивается через blob URL, но используемые им ресурсы могут оставаться отдельными файлами.
В исправленном сценарии горячего обновления имя такого файла менялось вместе с хешем содержимого, а сам файл не попадал в выдачу. Запрос мог получить HTML главной страницы приложения вместо нужного ресурса. Теперь кешированные ресурсы встроенного worker также выдаются на этапе загрузки.
После обновления проверьте исходное открытие страницы и изменение worker во время разработки. В сетевых ответах смотрите не только статус, но и тип содержимого: ответ 200 с HTML не подтверждает получение нужного файла.
При build.cssCodeSplit: false Vite отклоняет отдельные CSS-файлы, заданные как входные точки сборки. Исправление предотвращает падение в таком сочетании настроек. Проектам с CSS-входами стоит проверить свою конфигурацию и ожидаемый состав выходных файлов.
Ещё одно изменение касается Sass: его импорт выполняется один раз вместо повтора для каждого файла. Релиз содержит оптимизацию, но по её описанию нельзя обещать одинаковое ускорение всем проектам. Время зависит от набора стилей, загрузчика и окружения.
Обновите зависимость в отдельной рабочей ветке и проверьте установку по lock-файлу, запуск разработки и итоговую сборку. Если используются встроенные worker, откройте их ресурсы после горячего обновления. Если применяются Sass и необычные CSS-входы, проверьте их отдельно.
Результат имеет смысл сравнивать на одном проекте в одинаковых условиях. Разобрать конфигурацию и план такой проверки можно с наставником по frontend-разработке.