Выпуски
Начиная с Homebrew 1.0.0 большинству пользователей Homebrew (тем, кто не запускал dev-cmd и не задавал HOMEBREW_DEVELOPER=1, что, согласно данным аналитики, составляет ~99,9%) нужны теги в репозитории Homebrew/brew, чтобы получать новые версии Homebrew. Выпуск новой версии Homebrew включает несколько шагов:
- Проверьте, нет ли чего-то срочного, что нужно исправить или включить до следующего выпуска:
- запросы на включение изменений
Homebrew/brew - задачи
Homebrew/brew - задачи
Homebrew/homebrew-core - Homebrew/discussions (форум)
Если такие есть, внесите исправления и включите изменения.
- запросы на включение изменений
- Убедитесь, что:
- код не менялся хотя бы пару часов (в идеале — 4 часа),
- как минимум одна задача CI для запроса на включение изменений в Homebrew/homebrew-core завершилась успешно,
- состояние задачи CI Homebrew/brew
mainпонятно (то есть основные задачи выполнены успешно или стали успешными после повторного запуска) - вы уверены, что в текущей ветке
mainнет серьёзных регрессий.
-
Запустите
brew release, чтобы создать черновик нового выпуска. Для повышения версии до мажорной или минорной передайте соответственно--majorили--minor. - Опубликуйте черновик выпуска на GitHub.
Для мажорного или минорного выпуска (например, X.0.0 или X.Y.0) нужно выполнить ещё несколько шагов:
- Перед созданием тега необходимо:
- удалить весь код
odisabled, - пометить весь код
odeprecatedкакodisabled, - раскомментировать весь код
# odeprecated - добавить все необходимые новые
odeprecations.
Также удалите все определения аргументов команд, передающие
replacement: ....Подробную информацию о жизненном цикле устаревания см. в разделе Устаревание, отключение и удаление.
- удалить весь код
-
Подготовьте публикацию в блоге о выпуске для https://brew.sh (например, brew.sh#319). В качестве основы следует использовать вывод
brew release [--major|--minor], но текст нужно отредактировать так, чтобы он был понятнее читателям и объяснял не только, что изменилось, но и почему. -
После выхода выпуска и включения публикации в блог опубликуйте ссылку на неё в твите от имени аккаунта MacHomebrew в Twitter или опубликуйте твит самостоятельно, а затем ретвитните его через аккаунт @MacHomebrew в Twitter (данные для входа хранятся в 1Password).
- Решите, стоит ли отправить новость в другие источники, например Hacker News или Reddit.
- Плюсы: более широкая аудитория и отзывы пользователей
- Минусы: часто появляются негативные комментарии, и люди используют эту возможность, чтобы пожаловаться на Homebrew (независимо от того, пользуются ли они им)
Пожалуйста, не создавайте выпуск вручную на основе более ранних коммитов в ветке main. Очень сложно оценить, достаточно ли тщательно пользователи их протестировали и не приведут ли они к негативным побочным эффектам с учётом текущего состояния Homebrew/homebrew-core. Если новая ветка нужна как можно скорее, но в main есть изменения, которые пока нельзя выпускать (например, новые устаревшие элементы, если вы хотите выпустить исправление), отмените соответствующие запросы на включение изменений, выполните описанные выше действия, а затем отмените отмену этих запросов, чтобы повторно применить изменения в main.
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/Releases