【问题标题】:What is the difference between deps and dev-deps in Poetry?Poetry 中的 deps 和 dev-deps 有什么区别?
【发布时间】:2019-08-25 12:19:14
【问题描述】:

在Poetry的pyproject.toml配置文件中可以同时指定dependenciesdev-dependencies,但是文档并没有明确说明有什么区别。

我猜从名称来看,发布版本不会安装 dev-dependencies,但我没有发现任何区别。您如何正确使用这些字段,例如在构建中排除 dev-dependencies

【问题讨论】:

    标签: python-poetry


    【解决方案1】:

    你的假设是正确的。开发依赖项的最佳用例是创建具有可选依赖项的库时。例如,您正在开发应该与 MySQL、PostgreSQL 等一起使用的 ORM。您必须测试您的代码是否可以与所有这些 RDBMS 一起使用。您将其放入开发依赖项中。但是对于安装你的库的人来说,这些依赖项是可选的,它们不会自动安装。

    通常,用于测试或构建应用程序的所有库都显示在开发依赖项中。

    您如何正确使用这些字段,例如排除构建中的开发依赖项?

    poetry install 有一个 no-dev 标志,用于该场景。

    【讨论】:

    • 我很惊讶no-dev 不是默认值。我猜 95% 的安装包的用户对 pyflakes、pytest、black 等开发库不感兴趣。但是因为诗歌默认安装开发包,我必须向用户说明使用 no-dev 标志安装时。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 1970-01-01
    • 2014-05-18
    • 2012-02-12
    • 2014-10-03
    • 2011-06-20
    • 2020-10-02
    相关资源
    最近更新 更多