Перейти к содержанию

Релизы

Проверяем последнюю версию...

Полный список изменений прошлых выпусков доступен на GitHub.

Цикл выпусков

Vue не имеет фиксированного цикла выпусков.

  • Обновления выпускаются по мере необходимости.

  • Минорные релизы всегда содержат новые функции, а промежуток между ними обычно составляет 3~6 месяцев. Минорные релизы всегда проходят стадию предварительной бета-версии.

  • Крупные релизы будут анонсироваться заранее и пройдут через фазу раннего обсуждения и альфа-/бета-версии.

Краевые случаи семантического версионирования

Релизы Vue следуют семантическому версионированию с некоторыми исключениями.

Определения TypeScript

Мы можем поставлять несовместимые изменения в определениях TypeScript между минимальными версиями. Это происходит потому, что:

  1. Иногда сам TypeScript вносит несовместимые изменения между небольшими версиями, и нам может потребоваться корректировка типов для поддержки новых версий TypeScript.

  2. Иногда нам может понадобиться внедрить функции, которые доступны только в более новой версии TypeScript, что повысит минимально необходимую версию TypeScript.

Если вы используете TypeScript, вы можете использовать диапазон semver, который фиксирует текущий минор, и вручную обновлять его, когда выходит новая минорная версия Vue.

Совместимость скомпилированного кода со старой средой выполнения

Более новая минорная версия компилятора Vue может генерировать код, несовместимый со средой выполнения Vue из более старой минорной версии. Например, код, сгенерированный компилятором Vue 3.2, может быть не полностью совместим с Vue 3.1, если будет использоваться средой выполнения.

Это касается только авторов библиотек, поскольку в приложениях версия компилятора и версия среды выполнения всегда совпадают. Несоответствие версий может произойти только в том случае, если вы поставляете предварительно скомпилированный код компонента Vue в виде пакета, а потребитель использует его в проекте, использующем более старую версию Vue. В результате в вашем пакете может потребоваться явное объявление минимально необходимой минорной версии Vue.

Предварительные релизы

Минорные релизы обычно проходят через нефиксированное количество бета-версий. Крупные релизы будут проходить через альфа-фазу и бета-фазу.

Кроме того, каждую неделю мы публикуем на GitHub канареечные релизы из веток main и minor. Они опубликованы как разные пакеты, чтобы не раздувать метаданные npm стабильного канала. Вы можете установить их с помощью npx install-vue@canary или npx install-vue@canary-minor, соответственно.

Предварительные выпуски предназначены для интеграции / тестирования стабильности, а также для ранних последователей, чтобы предоставить обратную связь для нестабильных функций. Не используйте предварительные версии в продакшене. Все предварительные версии считаются нестабильными и могут нести в себе изменения, поэтому при использовании предварительных версий всегда привязывайтесь к точным версиям.

Депрекации

Мы можем периодически отказываться от функций, которые получают новую, более совершенную замену в небольших выпусках. Устаревшие функции продолжат работать и будут удалены в следующем крупном выпуске после того, как они перейдут в статус устаревших.

RFC

Новые функции со значительной поверхностью API и серьёзные изменения во Vue будут проходить через процесс Запроса на комментарии (RFC). Процесс RFC призван обеспечить последовательный и контролируемый путь для введения новых функций во фреймворк, а также предоставить пользователям возможность участвовать в процессе разработки и предлагать свои отзывы.

Процесс RFC осуществляется в репозитории vuejs/rfcs на GitHub.

Экспериментальные особенности

Некоторые функции поставляются и документируются в стабильной версии Vue, но помечены как экспериментальные. Экспериментальные функции — это, как правило, функции, по которым есть соответствующее обсуждение в RFC, где большинство проблем дизайна решено на бумаге, но всё ещё не хватает отзывов от реального использования.

Цель экспериментальных функций — дать возможность пользователям оставить отзыв о них, протестировав их в продакшене, без необходимости использовать нестабильную версию Vue. Экспериментальные функции сами по себе считаются нестабильными и должны использоваться только контролируемым образом, с расчётом на то, что функция может измениться между любыми типами релизов.

Релизы