Ubuntu 22.04下Poetry配置与发布功能异常求助
Poetry配置与发布异常问题排查与解决
环境信息
- 系统:全新Ubuntu 22.04桌面版
- Poetry版本:v1.5.1 → 升级至v1.6.1后问题未解决
异常现象
- 执行
poetry config pypi-token.pypi "MYTOKEN"存储PyPI token时无任何反馈,也不自动生成配置文件 - 手动创建
~/.config/pypoetry/config.toml并添加token后,执行poetry config --list仅显示修改后的cache-dir,看不到pypi-token.pypi配置项 - 删除
config.toml后,进入曾发布过的项目执行poetry publish,无需任何凭证竟成功重复发布0.0.2版本
问题解决步骤
1. 修复配置文件不生成/不显示token的问题
- 确认配置路径:先执行
poetry config --show config-dir,确认Poetry的配置目录是否为~/.config/pypoetry(你之前写的~/config/pypoetry可能是路径笔误) - 规范手动配置格式:如果手动编辑
config.toml,必须将token放在对应小节下,格式如下:[pypi-token] pypi = "你的MYTOKEN内容" - 查看完整配置:
poetry config --list默认不显示敏感配置项,执行poetry config --list --all才能看到包括token在内的所有配置 - 重装Poetry(若路径异常):如果配置路径错误,大概率是安装方式导致的,用官方脚本重新安装:
安装完成后重启终端再测试配置命令curl -sSL https://install.python-poetry.org | python3 -
2. 解决无凭证仍能发布的问题
- 清理Poetry缓存:Poetry会缓存之前的发布凭证,即使删除配置文件也会保留,执行以下命令清理:
poetry cache clear pypi --all - 检查系统级PyPI配置:查看
~/.pypirc文件,若里面保存了PyPI的token或账号密码,Poetry会自动读取该文件的配置,若不需要可删除或注释相关内容 - 排查项目本地配置:检查项目目录下的
pyproject.toml是否有硬编码的发布凭证(概率较低,但可确认)
内容的提问来源于stack exchange,提问作者odigity
相关产品推荐
相关产品推荐

