Spec-Zone.ru › Homebrew

Выпуски

Начиная с Homebrew 1.0.0 большинству пользователей Homebrew (тем, кто не запускал dev-cmd и не задавал HOMEBREW_DEVELOPER=1, что, согласно данным аналитики, составляет ~99,9%) нужны теги в репозитории Homebrew/brew, чтобы получать новые версии Homebrew. Выпуск новой версии Homebrew включает несколько шагов:

  1. Проверьте, нет ли чего-то срочного, что нужно исправить или включить до следующего выпуска:
    • запросы на включение изменений Homebrew/brew
    • задачи Homebrew/brew
    • задачи Homebrew/homebrew-core
    • Homebrew/discussions (форум)

    Если такие есть, внесите исправления и включите изменения.

  2. Убедитесь, что:
    • код не менялся хотя бы пару часов (в идеале — 4 часа),
    • как минимум одна задача CI для запроса на включение изменений в Homebrew/homebrew-core завершилась успешно,
    • состояние задачи CI Homebrew/brew main понятно (то есть основные задачи выполнены успешно или стали успешными после повторного запуска)
    • вы уверены, что в текущей ветке main нет серьёзных регрессий.
  3. Запустите brew release, чтобы создать черновик нового выпуска. Для повышения версии до мажорной или минорной передайте соответственно --major или --minor.

  4. Опубликуйте черновик выпуска на GitHub.

Для мажорного или минорного выпуска (например, X.0.0 или X.Y.0) нужно выполнить ещё несколько шагов:

  1. Перед созданием тега необходимо:
    • удалить весь код odisabled,
    • пометить весь код odeprecated как odisabled,
    • раскомментировать весь код # odeprecated
    • добавить все необходимые новые odeprecations.

    Также удалите все определения аргументов команд, передающие replacement: ....

    Подробную информацию о жизненном цикле устаревания см. в разделе Устаревание, отключение и удаление.

  2. Подготовьте публикацию в блоге о выпуске для https://brew.sh (например, brew.sh#319). В качестве основы следует использовать вывод brew release [--major|--minor], но текст нужно отредактировать так, чтобы он был понятнее читателям и объяснял не только, что изменилось, но и почему.

  3. После выхода выпуска и включения публикации в блог опубликуйте ссылку на неё в твите от имени аккаунта MacHomebrew в Twitter или опубликуйте твит самостоятельно, а затем ретвитните его через аккаунт @MacHomebrew в Twitter (данные для входа хранятся в 1Password).

  4. Решите, стоит ли отправить новость в другие источники, например 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API