pythonwheel反依赖

pythonwheel反依赖,python,pip,dependencies,dependency-management,python-wheel,Python,Pip,Dependencies,Dependency Management,Python Wheel,我正在管理一个python项目,它可以以两种不同的变体发布,“完整”和“轻量级”,例如myproject和myprojectlw。两者都使用相同的顶级名称,例如myproject。我有一个脚本,它切断了项目中“繁重”的部分,并构建了两个具有依赖项的可安装归档文件(轻量级的要少得多)。一切正常,我可以用轮子安装它们 现在我想确保用户不会同时安装这两个软件包。理想情况下,我希望pip在安装另一个时卸载其中一个,或者至少在另一个存在时失败(这样用户就必须手动卸载当前文件) 否则,当您安装我的项目包时,

我正在管理一个python项目,它可以以两种不同的变体发布,“完整”和“轻量级”,例如
myproject
myprojectlw
。两者都使用相同的顶级名称,例如
myproject
。我有一个脚本,它切断了项目中“繁重”的部分,并构建了两个具有依赖项的可安装归档文件(轻量级的要少得多)。一切正常,我可以用轮子安装它们

现在我想确保用户不会同时安装这两个软件包。理想情况下,我希望pip在安装另一个时卸载其中一个,或者至少在另一个存在时失败(这样用户就必须手动卸载当前文件)

否则,当您安装
我的项目
包时,它会安装到
/lib/python3.6/site packages/myproject
,然后当您安装
我的项目lw
包时,它会覆盖同一文件夹中的文件,因此当一些文件来自“full”而另一些文件来自“lightweigth”时,您会得到一个奇怪的混合文件,这不好


有没有办法指定反依赖项?以某种方式将它们标记为相互排斥?谢谢

Pip不支持它。另请参见相关的“过时”元数据

这可能会给你一些想法:这听起来正是我需要的东西(两个软件包相互“淘汰”),我会记住的!谢谢!