[Newbie Tip] What to do when you 403 during pypi twine upload

Shawn Wang

【初心者向けTips】PyPIでtwine uploadしたら403になったときの対処法

原文は Shawn Wang により に公開されました。 このブログを購読する

PyPIのパッケージング周りはまだ初心者なので、最近Pythonパッケージをプッシュしようとしてハマった:

$ python3 -m twine upload --repository testpypi dist/*

Uploading distributions to https://test.pypi.org/legacy/
Enter your username: swyx
Enter your password: 
Uploading smol_dev-0.1-py3-none-any.whl
100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.4/7.4 kB • 00:00 • ?
WARNING  Error during upload. Retry with the --verbose option for more details.
ERROR    HTTPError: 403 Forbidden from https://test.pypi.org/legacy/
         Invalid or non-existent authentication information. See https://test.pypi.org/help/#invalid-auth for more information.

これで数時間ガッツリ詰まってしまった。できる友人がhatchを使って__token__とAPIトークンによる認証方式を試してみたらと勧めてくれたが、これもうまくいかなかった。結局のところ、デフォルトのPythonチュートリアルの手順を流し読みしていて、test.pypi.orgがpypi.orgとは別のパッケージサイトだということに気づいていなかったのが原因だった。だから単にそれを外せばいい:

$ python3 -m twine upload dist/*

あと、パッケージ名にハイフンを使わないようにする必要もある

- report-env
+ report_env

基本的なテンプレートリポジトリはhttps://github.com/swyxio/report-envで見られる

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。

コメント