如何升级Pipenv软件包并忽略预发行版软件包?

时间:2018-07-10 21:05:57

标签: pipenv

这会失败(“警告:您的依赖项无法解决。您的子依赖项可能不匹配。”)

#!/usr/bin/env bash
pipenv install requests
pipenv install black --dev
pipenv update requests

由于black only has pre-release versions,更新失败。

# fails with warning
pipenv update requests --pre

# no such option for *update*
pipenv update requests --skip-lock

这意味着每次尝试更新时,我都必须卸载black,然后更新相关的软件包,然后重新安装black。

到目前为止,我发现的只是告诉pip让所有更新都采用最新的预发行包,在这种情况下,是针对黑色的请求。当只有黑色是永久性的预发行包时,这似乎不是一个好主意。

另外,请注意,在这种情况下,由于--dev依赖关系,pipenv保留了所有内容,而在最终版本中,它们与--dev无关。

1 个答案:

答案 0 :(得分:2)

尝试安装黑色的特定版本。

#!/usr/bin/env bash
pipenv install requests
pipenv install black==18.9b0
# the latest as of 2018-12-09
pipenv update requests
pipenv update requests --pre
# afik, the --pre flag here doesn't do anything
cat Pipfile | grep allow_preleases
# avoids allowing prereleases for all packages