如何在"pip install -e "模式下编辑设置后重新检查设置.cfg



pip install -e .是一个很好的特性。它允许您在不需要不断卸载和重新安装的情况下处理软件包。然而,它似乎并没有跟踪您的构建文件(例如setup.cfg或setup.py(。例如,您可以更改这些文件(例如,添加、减去、更改依赖项的版本,或更改包中包含的模块(。那么,让pip重新检查这些要求的最佳方法是什么?

或者更一般地说,当使用pip install -e .时,您应该如何处理setup.cfgsetup.py中的更改?

我通常最终只在根目录中执行pip install -e .。这将再次遍历您的整个安装配置,安装任何新的或更改的依赖项,然后卸载您的程序包,然后再重新安装它。这肯定不是总是的必要性,而且确实会大大减慢速度。

虽然这确实有效,但它与"可编辑"包的想法背道而驰。

有合适的方法吗


仅供参考,我知道你可以通过pip install ...自己安装setup.cfg中没有列出的依赖项,我的问题旨在学习更好的做事方式。

这可能是最好的做事方式。pip install -e .重新安装所有内容的原因是它与环境无关。

假设您有两个依赖项numpy >= 1.7.2pandas==1.4.2。现在,pandas 1.4.2需要最低版本的numpy==1.18.2,所以当你做pip install(可编辑或不可编辑(时,它可能会选择最兼容的版本(1.22.3(

假设您现在想在1.20.2修复numpy。pip知道它与panda兼容的唯一方法是浏览您的整个需求列表。

如果你最终想要一个";"更好";工具比pip,看看pipenv或诗歌。

最新更新