使用Poetry安装SQLAlchemy出现AttributeError报错的问题
报错原因
该报错是Poetry 1.1.x版本的已知内置bug,和SQLAlchemy包本身无关,因此你直接用pip安装可以正常执行。错误触发于Poetry核心的依赖版本标记校验模块:当解析部分包的版本标记时会生成空约束对象,但校验逻辑没有做空对象兼容处理,调用不存在的allows方法时就会抛出该属性异常。
解决方案
- 优先升级Poetry到1.2及以上正式版本,这是最彻底的修复方案。执行命令
poetry self update完成升级后,重新执行poetry add sqlalchemy即可正常安装。 - 若暂时无法升级Poetry版本,可手动指定SQLAlchemy具体版本绕过解析逻辑,执行
poetry add sqlalchemy==1.4.23即可,明确的版本号会跳过触发bug的版本范围匹配步骤。 - 部分场景下Poetry缓存的异常包元数据也会触发该问题,可先执行
poetry cache clear --all pypi清除所有缓存后,再重试安装命令。
内容的提问来源于stack exchange,提问作者Maksych
相关产品推荐
相关产品推荐

