Я управляю проектом Python, который может быть выпущен в двух разных вариантах: «полный» и «легкий», называемые, например, my-project
и my-project-lw
.Оба используют одно и то же имя верхнего уровня, например myproject
.У меня есть сценарий, который отсекает «тяжелые» части проекта и создает архивы, устанавливаемые на оба колеса, с зависимостями (у облегченного значительно меньше).Все работает, и я могу установить их с помощью колес.
Теперь я хотел бы убедиться, что у пользователя не будет установлено обоих пакетов одновременно.В идеале я бы хотел, чтобы pip удалял один при установке другого, или, по крайней мере, отказывал, когда другой присутствовал (так что пользователю пришлось бы удалять текущий вручную).
В противном случае, когда вы устанавливаете *Пакет 1008 * устанавливается в /lib/python3.6/site-packages/myproject
, а затем при установке пакета my-project-lw
он перезаписывает файлы в той же папке, так что вы получаете странный гибрид, когда некоторые файлы из «полного», а некоторые из «lightweigth», чтоне хорошо.
Есть ли способ указать анти-зависимость?Чтобы пометить их как-то взаимоисключающие?Спасибо!