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

为何依赖解析器会选用avro-python3 1.9.2.1这类本应被禁止的版本?

依赖版本排除问题解答

为什么!=1.9.2没拦截1.9.2.1?

Python依赖版本规范里,!=是精确匹配排除,只会过滤版本号完全等于1.9.2的包。1.9.2.1是独立的子版本号,和1.9.2不属于同一个精确版本,所以不在排除范围内。

如何拦截所有1.9.2前缀的版本?

把原配置里的!=1.9.2替换成!=1.9.2.*即可。通配符*会匹配所有以1.9.2开头的子版本,这样就能排除1.9.2.1、1.9.2.2等所有同前缀版本,同时保留原有的>=1.8.1和<1.10.0限制,不需要额外添加其他规则。

修改后的配置示例:

  • requirements.txt:avro-python3>=1.8.1,!=1.9.2.*,<1.10.0; python_version >= "3.0"
  • pyproject.toml:avro-python3 = ">=1.8.1,!=1.9.2.*,<1.10.0"

这样PDM解析时就会跳过所有1.9.2.x版本,从符合范围的其他版本(比如1.9.1、1.9.3)中选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 18:33:33