Astro 4.7

Автор
Erika
Emanuele Stoppa
Matthew Phillips
Nate Moore
Bjorn Lu
Sarah Rainsberger

Доступен Astro 4.7! В релизе — значительные улучшения API для toolbar-приложений, новые способы держать проект в актуальном состоянии и многое другое.

Основные новинки:

Чтобы обновить существующий проект, используйте CLI @astrojs/upgrade. Или обновите вручную:

# Рекомендуется:
npx @astrojs/upgrade
# Вручную:
npm install astro@latest
pnpm upgrade astro --latest
yarn upgrade astro --latest

Dev Toolbar API improvements

Astro 4.7 значительно улучшает API для toolbar-приложений. Главная цель релиза — упростить создание и поддержку toolbar-приложений:

  • хелпер defineToolbarApp() для определения toolbar-приложений — по аналогии с defineConfig() и defineMiddleware();
  • новые хелперы app и server для обмена сообщениями между toolbar и сервером;
  • новый стартовый проект для toolbar-приложений: npm create astro@latest -- --template toolbar-app;
  • пошаговый рецепт создания toolbar-приложения, в том числе на JSX-фреймворках вроде React или Preact;
  • обновлённая документация Dev Toolbar App API с примерами новых методов.

Ждём, что вы построите с этими улучшениями!

Update checker

С этого релиза Astro проверяет обновления при запуске dev-сервера. Если доступна новая версия, в терминале и dev toolbar появится сообщение с инструкцией по обновлению.

A screenshot of the message that Astro shows in the terminal when an update is available: update > New version of Astro available: 4.6.3. Run npx @astrojs/upgrade to update.

Чтобы не спамить сообщениями, проверка выполняется раз в 10 дней и только если вы отстаёте на несколько версий. Отключить: astro preferences disable checkUpdates или переменная окружения ASTRO_DISABLE_UPDATE_CHECK со значением false.

allowJs: true for strictest TypeScript preset

Preset strictest ранее включал allowJs: false, полностью запрещая .js-файлы. Это оказалось слишком строго и вызывало путаницу. Теперь allowJs: true — можно использовать .js в проекте.

Это не breaking change, но при strictest и желании запретить .js установите allowJs: false в tsconfig.json вручную.

Bug Fixes

Как обычно, Astro 4.7 включает исправления и улучшения, не вошедшие в этот пост! Полные release notes.