You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Poetry发布Python包:生产安装会安装dev组依赖吗?

问题解答

不会,用户通过pip install my_library安装你的库时,group.dev里的pytest不会被一并安装,完全符合你的预期。

原因很简单:

  • Poetry的依赖组(比如dev)属于开发专属依赖,这类依赖只会在你本地开发、测试自己的包时用到,默认不会被包含在最终发布的包的依赖清单里。
  • 当你用Poetry构建发布包(比如poetry build)时,只会把主依赖(a、b、c)写入包的元数据(比如pyproject.toml的[project.dependencies]或生成的setup.py),dev组的依赖会被排除在外。
  • pip安装包时,只会读取包元数据里的主依赖列表进行安装,不会主动去拉取非主组的依赖。

如果有人确实需要安装你的包的开发依赖(比如要参与你的项目开发),他们需要显式指定安装dev组,比如执行pip install my_library[dev]——当然这需要你在pyproject.toml里把dev组配置为可选依赖(用[project.optional-dependencies]关联),但这是主动操作,不会在默认安装时触发。

内容的提问来源于stack exchange,提问作者zerohedge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 15:05:16