Релизный процесс
Назначение
Этот гайд описывает, как версионируются и публикуются пакеты Nrgy.js. Большинству контрибьюторов и агентов запускать эти команды не нужно — релизы обычно выполняют мейнтейнеры.
Файлы, важные для релизов
- Корневой CHANGELOG.md фиксирует изменения уровня проекта.
- Пакетные
CHANGELOG.mdфиксируют изменения конкретных пакетов. - Названия пакетов и команды установки должны браться из актуальных
package.json. - Правила версионирования живут в lerna.json.
- Релизные команды описаны в корневом package.json.
Подготовка релиза
- Убедитесь, что в рабочем дереве находятся только нужные изменения.
- Запустите
npm run check. - Запустите
npm run test. - Запустите
npm run build. - Проверьте, что документация и записи в changelog обновлены.
Версионирование
Сначала используйте dry run:
bash
npm run preview:new-versionСоздавайте версии только после проверки dry run:
bash
npm run new-versionpreview:new-versionзапускаетlerna version --dry-run.new-versionзапускаетlerna versionс включёнными conventional commits.- Перед версионированием хук
preversionзапускаетnpm run check,npm run buildиnpm run test, а затем добавляет все изменения черезgit add --all.
Публикация
После того как пакеты получили версии и релизный коммит готов, публикуйте пакеты с новыми версиями:
bash
npm run new-publishnew-publishзапускаетlerna publish from-package.- Публикация пакетов опирается на версии, уже записанные в package manifest.
Релизные заметки и валидация
- После версионирования проверьте корневой
CHANGELOG.mdи пакетныеCHANGELOG.md. - Убедитесь, что сгенерированная документация и package README соответствуют публикуемому API.
- Если менялась документация сайта, перед публикацией соберите сайт через website/package.json.