【问题标题】:dependency issue when using pipenv使用 pipenv 时的依赖问题
【发布时间】:2018-10-05 14:28:39
【问题描述】:

我是 Python 新手,在理解依赖关系方面有点困难,希望有人能提供帮助。

我正在使用 pipenv 来设置开发环境。这是我的 pipenv 文件

[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[packages]

[dev-packages]
pytest = "*"
apache-airflow = "*"

[requires]
python_version = "2.7"

当我发出pipenv install --dev 时,会发生这种情况:

$ pipenv install --dev
礼貌通知:Pipenv 发现自己正在运行 在虚拟环境中,所以它会自动使用 环境,而不是为任何项目创建自己的环境。
未找到 Pipfile.lock,正在创建……锁定 [dev-packages] 依赖项……

警告:无法解决您的依赖关系。你可能有一个 您的子依赖项不匹配。
您可以使用 $ pipenv install --skip-lock 绕过此机制,然后运行 ​​$ pipenv graph 检查情况。
找不到匹配的版本 烧瓶登录=0.3
尝试过:0.1.1、0.1.2、0.1.3、0.2.0、 0.2.1、0.2.2、0.2.3、0.2.4、0.2.5、0.2.6、0.2.7、0.2.8、0.2.9、0.2.10、0.2.11、0.3.0、0.3。 1、0.3.2、0.4.0、0.4.0、0.4.1

我按照它的建议做了:pipenv install --dev --skip-lock 成功完成:

$ pipenv install --dev --skip-lock
礼貌通知:Pipenv 发现 本身在虚拟环境中运行,所以它会自动 使用该环境,而不是为任何项目创建自己的环境。
从 Pipfile 安装依赖项... ??????
▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 2/2 — 00:00:02

然后pipenv graph | grep Flask-Login

$ pipenv 图 | grep Flask-登录
- Flask-Login [必需:=0.3,安装:0.2.11]

此时我有点困惑。我不知道为什么它可能安装了 Flask-Login 0.2.11,因为依赖关系图中(似乎)没有其他东西需要 Flask-Login。

我很困惑。救命!

【问题讨论】:

  • 只是为了确认一下,您的问题是关于为什么在 apache-airflow 需要 ">=0.3" 时安装了“0.2.11”版本?
  • 感谢我的澄清。是的,我的理解是 Flask-Login 只会被安装,因为它是一个依赖项,并且请求的版本是 =0.3,那么为什么要安装 0.2.11?

标签: python pipenv


【解决方案1】:

看起来我在 pipenv 中遇到了一个已知问题:https://github.com/pypa/pipenv/issues/2596,而且我不是唯一在安装气流时遇到它的人:https://github.com/pypa/pipenv/issues/2596#issuecomment-427389166

将等待该问题是否得到解决。

【讨论】:

    猜你喜欢
    • 2019-04-29
    • 1970-01-01
    • 2020-06-17
    • 2022-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    • 2012-05-23
    相关资源
    最近更新 更多