Почему я получаю ошибки с git, а не с hex deps в rebar3 - PullRequest
0 голосов
/ 06 октября 2018

Я сталкивался с этой проблемой несколько раз при использовании зависимостей в моих проектах Erlang, таких как

{rabbit_common, "3.7.8"}

против

{rabbit_common, ".*", {git, "https://github.com/rabbitmq/rabbitmq-common.git", {tag, "v3.7.8"}}

При использовании git мне приходилось заходить в каждое приложение зависимостей в папке lib и запускать на нем make, пока с hex все работало.

Кроме того, когда я подключил приложение к своему докеру, я обнаружил, что у меня ошибка

релиз не найден

при использовании любых git deps, но когдаЯ переключил все в шестнадцатеричное, все работало нормально.Git мертв для rebar3?

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

По умолчанию rabbit_common в своем репозитории github поддерживает только erlang.mk в качестве инструмента сборки и не содержит данных, для которых rebar3 потребуется (в rebar.config) для его успешного построения.

Rebar3может зайти и попытаться скомпилировать приложение, которое выглядит так, как будто оно уважает OTP, но в этом случае, особенно из-за отсутствия deps, rebar3 не сможет узнать, что некоторые компоненты отсутствуют.

Тем не менее, так же, как Mix и Rebar3, erlang.mk может публиковать в гекс.При этом в библиотеку добавляются некоторые дополнительные метаданные, включая зависимости.Другая информация до сих пор не добавлена ​​(например, параметры компилятора).В целом, хотя библиотека находится в шестнадцатеричном формате и, по-видимому, хорошо сформирована, rebar3 может построить ее вместе со своими зависимостями нормально, но только один раз в шестнадцатеричном формате.обозримое будущее.В текущем выпуске также добавлена ​​поддержка многих зависимостей микса (наряду с https://github.com/tsloughter/rebar_mix в качестве плагина), но в настоящее время у нас нет открытых планов по поддержке проектов erlang.mk.Гекс и немного удачи - ваши лучшие варианты для этого на данный момент.

0 голосов
/ 12 октября 2018

Git мертв для rebar3?

Нет.Это все еще работает, и я ожидаю, что поддержка продолжится.

...