Любой документ Bazel, чтобы помочь перейти от старой версии к новой версии? - PullRequest
3 голосов
/ 29 мая 2019

Я использую Bazel 19 и хочу перейти на последнюю версию 26. Похоже, многое изменилось, и трудно понять все изменения из заметок о выпуске. Существуют ли какие-либо документы / инструменты, которые могут помочь при переходе со старой версии на новую

Ответы [ 2 ]

2 голосов
/ 29 мая 2019

Самый простой подход, на мой взгляд, заключается в постепенном обновлении с 19 до 20, с 20 до 21 и так далее.

Если вы используете bazelisk , переключение версий выполняется просто:

  1. USE_BAZEL_VERSION=0.19.0 bazelisk test //...
  2. Исправление поломок
  3. Увеличение версиии проверьте: USE_BAZEL_VERSION=0.20.0 bazelisk test //...
  4. Вернитесь к 2.
1 голос
/ 29 мая 2019

Bazelisk предоставляет флажки --strict и --migrate, которые могут вам помочь:

USE_BAZEL_VERSION=0.26.1 bazelisk --strict build //...

--strict включает все несовместимые флаги и помогает выявлять проблемы обновления.

Если --strict не удалось, попробуйте --migrate. Он устанавливает пошаговые флаги несовместимых флагов и выдает отчет о несовместимых флагах, которые приводят к проблеме сборки:

USE_BAZEL_VERSION=0.26.1 bazelisk --migrate build //...

Ознакомьтесь также с документацией о обратной совместимости:

Когда мы вводим несовместимое изменение, мы стараемся облегчить его Пользователи Bazel обновляют свой код. Мы делаем это посредством миграции Windows и рецепты миграции.

Окно миграции - это одна или несколько версий Bazel, во время которых возможен переход от старого функционала к новому, согласно рецепту миграции.

Во время перехода, как старые функции, так и новые функциональность доступна в выпуске Bazel. Для каждого несовместимое изменение, мы предоставляем рецепт миграции, который позволяет обновление кода пользователя (файлов BUILD и .bzl, а также любого Bazel использование в скриптах, использование Bazel API и т. д.) таким образом, чтобы оно работает одновременно без каких-либо флагов со старым и новым функционалом.

...