Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Meminta paket Python dari upstream dan koneksi eksternal
Saat mengimpor versi paket Python dari
Adalah umum untuk aset baru untuk dipublikasikan ke pypi.org untuk versi paket yang ada. Misalnya, beberapa proyek menerbitkan aset baru ketika versi baru Python dirilis. Ketika paket Python diinstal dari CodeArtifact withpip install
, versi paket yang disimpan dalam CodeArtifact repositori diperbarui untuk mencerminkan kumpulan aset terbaru dari pypi.org.
Demikian pula, jika aset baru tersedia untuk versi paket di repositori upstream yang tidak ada di CodeArtifact repositori saat ini, mereka akan disimpan di CodeArtifact repositori saat ini ketika dijalankan. pip install
Versi paket yang ditarik
Beberapa versi paket di pypi.org ditandai sebagai ditarik, yang berkomunikasi dengan penginstal paket (seperti pip) bahwa versi tersebut tidak boleh diinstal kecuali itu adalah satu-satunya yang cocok dengan penentu versi (menggunakan salah satu atau). ==
===
Lihat PEP_592
Jika versi paket pada CodeArtifact awalnya diambil dari koneksi eksternal ke pypi.org
Bagaimana cara mengetahui apakah versi paket ditarik
Untuk memeriksa apakah versi paket ditarik CodeArtifact, Anda dapat mencoba menginstalnya. pip install
Jika versi paket ditarik, Anda akan menerima pesan peringatan yang mirip dengan berikut ini:packageName
===packageVersion
WARNING: The candidate selected for download or install is a yanked version
Untuk memeriksa apakah versi paket ditarik di pypi.orghttps://pypi.org/project/
packageName
/packageVersion
/
Menyetel status yang ditarik pada paket pribadi
CodeArtifact tidak mendukung pengaturan metadata yang ditarik untuk paket yang diterbitkan langsung ke repositori. CodeArtifact
Mengapa CodeArtifact tidak mengambil metadata atau aset terbaru yang ditarik untuk versi paket?
Biasanya, CodeArtifact memastikan bahwa ketika versi paket Python diambil dari CodeArtifact repositori, metadata yang ditarik adalah dengan nilai terbaru di pypi.org. up-to-date
Konfigurasi hulu: Jika koneksi eksternal ke pypi.org dihapus dari repositori atau upstream menggunakan disassociate-external-connection, metadata yang ditarik tidak akan lagi di-refresh dari pypi.org. Demikian pula, jika Anda menghapus repositori upstream, aset dari repositori yang dihapus dan upstream repositori yang dihapus tidak akan lagi tersedia untuk repositori saat ini. Hal yang sama berlaku jika Anda menggunakan kontrol asal CodeArtifact paket untuk mencegah versi baru dari paket tertentu ditarik— pengaturan upstream=BLOCK
akan memblokir metadata yang ditarik agar tidak disegarkan.
Status versi paket: Jika Anda menyetel status versi paket ke apa pun kecuali Published
atauUnlisted
, metadata dan aset yang ditarik dari versi paket tidak akan di-refresh. Demikian pula, jika Anda mengambil versi paket tertentu (katakanlahtorch 2.0.1
) dan versi paket yang sama ada di repositori upstream dengan status yang tidak Published
atauUnlisted
, ini juga akan memblokir metadata yang ditarik dan propagasi aset dari repositori upstream ke repositori saat ini. Ini karena status versi paket lainnya merupakan indikasi bahwa versi tersebut tidak dimaksudkan untuk dikonsumsi lagi di repositori apa pun.
Penerbitan langsung: Jika Anda mempublikasikan versi paket tertentu langsung ke CodeArtifact repositori, ini akan mencegah metadata yang ditarik dan penyegaran aset untuk versi paket dari repositori hulu dan pypi.org. Misalnya, Anda mengunduh aset dari versi pakettorch 2.0.1
, sepertitorch-2.0.1-cp311-none-macosx_11_0_arm64.whl
, menggunakan browser web dan kemudian mempublikasikannya ke CodeArtifact repositori Anda menggunakan benang sebagai. torch 2.0.1
CodeArtifact melacak bahwa versi paket memasuki domain dengan menerbitkan langsung ke repositori Anda, bukan dari koneksi eksternal ke pypi.org atau repositori upstream. Dalam hal ini, metadata yang ditarik CodeArtifact tidak disinkronkan dengan repositori upstream atau pypi.org. Hal yang sama berlaku jika Anda mempublikasikan torch 2.0.1
ke repositori upstream— keberadaan versi paket akan memblokir propagasi metadata dan aset yang ditarik ke repositori lebih jauh ke bawah grafik hulu.