36

バージョン番号を変更せずに PyPI パッケージを更新する方法はありますか?

ちょっと想像してみてください。最近 PyPI にアップロードしたパッケージに小さなバグが見つかったとしましょう。バージョン番号をインクリメントせずにコードを編集/再アップロードする方法はありますか?

更新 「バグ」とは、実際のソースコードのバージョン番号が間違っていることを意味することを明確にする必要があると思います-それは機能的なものではpackage.versionなく、現在のバージョンではなく以前のバージョンを取得することを意味しますこれが他の誰かのコードにバグを引き起こす可能性があることを知っていますが、私たちがアルファ版であることを考えると、バージョンの依存関係がまだ設定されていないことを願っています...)。記録のために、明らかにサイレントバグ修正は悪いです!

更新 2 2015 年 1 月現在、提供されているソリューションは無効になっています。詳細については、この投稿を参照してください。

4

1 に答える 1

64

バグに遭遇した場合は、常に新しいリリースをアップロードしてください。

バージョン番号を増やし、変更ログを含め、ブラウン バッグ リリースと呼びます (それは私ではなく、頭に茶色のバッグをかぶっていた人でした)。

誰がリリースのコピーを (ミラー上で、あなたの github ページから直接、何でも) ダウンロードした可能性があるかどうかは決してわかりません。さらに、あなたがリリースを置き換えたことを理解した人は、強制的に再インストールする方法を学ばなければなりません。

リリースされたパッケージをサイレント バグ修正で置き換えないでください。誘惑されないでください。新しいリリースを作成するだけです。

一方、どうにかしてディストリビューション ファイル自体を破損し、.zipファイル.tar.gzが b0rken になった場合は、PyPI Web インターフェイスを使用してファイルを手動で削除し、再アップロードする必要があります。

1 月 24 日以降、PyPI ではファイル名を再利用することさえできなくなります。つまり、同じバージョン番号の新しいファイルを再アップロードすることはできません。

間違っていたのがパッケージング エラーだけの場合は.postN、バージョン番号に接尾辞 ( so .post1.post2など) を追加して、リリース後の更新を示すことができます。

于 2012-12-17T18:32:31.907 に答える