Есть ли способ программно текущей версии установленной зависимости в пользовательской задаче Mix?
У меня есть пакет, который включает некоторые пользовательские задачи Mix, которые запускают некоторые команды генератора. Я хочу определить версию Phoenix, которую использует пользователь моего шестнадцатеричного пакета, чтобы я мог условно выполнить некоторые логические операции c в задачах моего генератора.
Мой шестнадцатеричный пакет зависит от Phoenix, но также поддерживает Phoenix 1.3 , 1.4 и недавно выпущенная версия 1.5.
Я понимаю, что могу выпустить новую версию шестнадцатеричного пакета, в котором есть требование фиксированной зависимости Phoenix 1.5, но при этом все равно будет перенесено изменение в более старые основные версии моего пакета. ; но я бы предпочел сохранить одну ветвь магистрали, которая пока поддерживает как можно больше версий.
Есть ли "приличный" способ сделать это, или я должен сам разобрать файл mix.lock
внутри микс-задачи? Это кажется довольно хрупким, и я не думаю, что мой код пакета должен искать и анализировать файл блокировки более крупного проекта, в который он включен.