- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的 python 虚拟环境中安装了 Django 1.10.5。
当我使用 pip install djblets
将 djblets 安装到我的 virtualenv 时,不幸的是,Django 在此过程中被隐式降级到版本 1.8.17。这破坏了我的环境。
我可以做些什么来防止这种情况发生?我当然没有被问到我是否接受降级。但我真的应该拥有。
djblets 版本 0.9.6 甚至没有安装,因为它依赖于拒绝构建的 Pillow。这一切都被破坏了,一路上破坏了我的环境,因为卸载是第一位的。
我所能想到的就是在一个单独但相同的虚拟环境中尝试安装,然后看看会发生什么。就像预演一样。
现在我必须从头开始安装我的环境。我是不是遗漏了什么,还是就是这样?
最佳答案
实际上有更新的(好吧,很久很久以前,pip 7.1)pip 版本,虽然它没有像那样完全记录:
因此以下命令(您需要在您的项目目录中运行它们并可能自定义它们):
pip freeze | grep == | sed 's/==/>=/' >constraints.txt
pip install -c constraints.txt whatever-you-want-to-install
将安装任何你想安装的东西而不降级任何东西。警告:whatever-you-want-to-to-install 实际上需要较低版本的“sometoy”,whatever-you-want-to-install 将被破坏,至少与它对“sometoy”的使用有关。
在某些情况下,损坏可能是可以接受的(例如,它发生在您不使用的包的某些可选区域),在某些情况下,可能不会发生实际损坏(例如,不再需要导致版本约束的降级),在某些情况下,确实会发生非常糟糕的事情,而且这些事情都在你身上。
关于python - 我可以防止 pip 隐式降级软件包吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43121005/
我是一名优秀的程序员,十分优秀!