翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アップストリームと外部接続からの Python パッケージのリクエスト
Pythonパッケージバージョンを pypi.org
既存のパッケージバージョン用の新しいアセットは pypi.org で頻繁に公開されています。例えば、Python の新しいバージョンがリリースされる際に、新しいアセットを公開するいくつかのプロジェクトがあります。pip install
を使用して、Python パッケージを CodeArtifact からインストールすると、CodeArtifact リポジトリに保持されているパッケージバージョンが、pypi.org からの最新のアセットセットを反映するように更新されます。
同様に、現在の CodeArtifact リポジトリに存在しない、アップストリームの CodeArtifact リポジトリにあるパッケージバージョン用の新しいアセットが使用できる場合、それらは pip install
の実行時に現在のリポジトリに保持されます。
削除されたパッケージバージョン
pypi.org の一部のパッケージバージョンは yanked とマークされています。これは、パッケージインストーラー (pip など) に、バージョン指定子と一致する唯一のバージョンでない限り (==
または ===
を使用して)、そのバージョンをインストールしてはならないことを示します。詳細については、「PEP_592
CodeArtifact のパッケージバージョンが最初に pypi.org
パッケージバージョンが削除されているかどうかを確認する方法
CodeArtifact でパッケージバージョンが削除されているかどうかを確認するには、pip install
を使用してインストールを試みます。パッケージバージョンが削除されている場合、次のような警告メッセージが表示されます。packageName
===packageVersion
WARNING: The candidate selected for download or install is a yanked version
pypi.orghttps://pypi.org/project/
でそのパッケージバージョンの pypi.org リストを確認してください。packageName
/packageVersion
/
プライベートパッケージに yanked ステータスを設定する
CodeArtifact は、CodeArtifact リポジトリに直接公開されたパッケージの削除されたメタデータの設定をサポートしていません。
CodeArtifact がパッケージバージョンの最新の削除済みメタデータまたはアセットを取得しないのはなぜですか?
通常、CodeArtifact は Python パッケージのバージョンが CodeArtifact リポジトリから取得されたときに、削除されたメタデータが pypi.org
アップストリーム設定: disassociate-external-connection を使用してレポジトリまたはそのアップストリームから pypi.org への外部接続を削除すると、削除されたメタデータは pypi.org から更新されなくなります。同様に、アップストリームのリポジトリを削除すると、削除されたリポジトリと削除されたリポジトリのアップストリームのアセットは、現在のリポジトリでは利用できなくなります。CodeArtifact のパッケージオリジンコントロールを使用して特定のパッケージの新しいバージョンがプルされないようにする場合も同様です。upstream=BLOCK
設定は削除されたメタデータの更新をブロックします。
パッケージバージョンのステータス: パッケージバージョンのステータスを Published
または Unlisted
以外に設定した場合、削除されたメタデータおよびパッケージバージョンのアセットは更新されません。同様に、特定のパッケージバージョン (torch 2.0.1
など) を取得しようとしていて、同じパッケージバージョンがアップストリームリポジトリに存在し、ステータスが Published
または Unlisted
でない場合も、削除されたメタデータとアセットは、アップストリームレポジトリから現在のレポジトリに伝播されません。これは、他のパッケージバージョンのステータスは、そのバージョンがどのリポジトリでも使用されないことを示しているためです。
直接公開: 特定のパッケージバージョンを CodeArtifact リポジトリに直接公開すると、削除されたメタデータおよアセットは、アップストリームレポジトリおよび pypi.org からパッケージに対して更新されません。例えば、Web ブラウザーを使用して torch 2.0.1
などのパッケージバージョン torch-2.0.1-cp311-none-macosx_11_0_arm64.whl
からアセットをダウンロードし、twine を torch 2.0.1
として使用して CodeArtifact リポジトリに公開する場合です。CodeArtifact は、pypi.org またはアップストリームレポジトリへの外部接続からではなく、リポジトリへの直接公開によってパッケージバージョンがドメインに入ったことを追跡します。この場合、CodeArtifact は削除されたメタデータをアップストリームのリポジトリまたは pypi.org と同期しません。これは、アップストリームリポジトリに torch 2.0.1
を公開する場合も同様です。パッケージバージョンがあると、削除されたメタデータとアセットがアップストリームグラフの下位にあるリポジトリに伝播されません。