Я пытаюсь создать пакет Wheel из Bazel, используя py_wheel. py_wheel имеет возможность предоставить необходимые зависимости Python с помощью атрибута require. Этот атрибут принимает список строк согласно документации. Формат этого списка требует:
Код: Выделить всё
requires = [
"foo == x.x.x",
"bar == x.x.x",
...
]
Мы также поддерживаем файл require.txt, в котором уже указываем эти зависимости. Проблема для нас здесь в том, что нам приходится поддерживать эти зависимости в двух разных местах (в файле BUILD, где определена цель py_wheel, и в файле требований), что приводит к накладным расходам на обслуживание и подвержено ошибкам.
Есть ли способ прочитать мои зависимости из файла require.txt и предоставить их в виде списка в Bazel?
Код: Выделить всё
py_wheel(
name = "dummy",
distribution = "dummy",
python_tag = "py3",
version = "latest",
requires = [?],
deps = [":dummy-dependencies"],
)
Я уже пробовал предложенное здесь решение. Список зависимостей, созданный с помощью pip_parse в полученном файле require.bzl, не соответствует формату, указанному для правила py_wheel. Благодаря этому колесо создается успешно, но установка колеса завершается неудачно.
Подробнее здесь:
https://stackoverflow.com/questions/759 ... ements-txt