Penerapan Versi dan Metadata
Kelola metadata paket
Penerapan Versi dan Metadata adalah pelajaran Python Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Python Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Python Academy mencakup 4 pelajaran total.
Mengapa Metadata Penting
Metadata mencakup segala hal tentang paket Anda selain kode: versi, deskripsi, lisensi, penulis, dan tautannya. PyPI menggunakannya untuk menampilkan proyek Anda, sedangkan pip menggunakannya untuk menyelesaikan dependensi.
Metadata yang baik membuat paket Anda tepercaya dan dapat dipasang.
Penerapan Versi Semantis
Konvensinya adalah MAJOR.MINOR.PATCH:
- MAJOR perubahan yang merusak kompatibilitas
- MINOR fitur baru yang kompatibel dengan versi sebelumnya
- PATCH perbaikan kesalahan yang kompatibel dengan versi sebelumnya
Pengguna mengandalkan aturan ini untuk mengetahui apakah peningkatan versi aman.
version = '2.4.1'
major, minor, patch = version.split('.')
print('Major', major, 'Minor', minor, 'Patch', patch)
print('Bug fix -> bump patch to', major + '.' + minor + '.' + str(int(patch) + 1))Memilih Versi Berikutnya
Penentuan kenaikan versi didasarkan pada aturan: apakah Anda merusak API, menambahkan fitur, atau hanya memperbaiki kesalahan? Menetapkan aturan tersebut dalam kode membuat rilis tetap konsisten.
def bump(version, kind):
major, minor, patch = (int(x) for x in version.split('.'))
if kind == 'major':
return str(major + 1) + '.0.0'
if kind == 'minor':
return str(major) + '.' + str(minor + 1) + '.0'
return str(major) + '.' + str(minor) + '.' + str(patch + 1)
print(bump('1.2.3', 'minor'))
print(bump('1.2.3', 'major'))Versi Prarilis dan Pengembangan
Python mengizinkan sufiks: 1.0.0a1 (alfa), 1.0.0b2 (beta), 1.0.0rc1 (kandidat rilis), dan 1.0.0.dev3. pip menganggap versi-versi ini lebih awal daripada 1.0.0 final, sehingga penguji dapat memilihnya tanpa memengaruhi pengguna biasa.
Satu Sumber Kebenaran
Simpan versi tepat di satu tempat. Anda dapat mendeklarasikannya secara statis di pyproject.toml, atau menandainya sebagai dynamic dan membacanya dari kode (atau sebuah penanda) melalui alat seperti setuptools-scm. Dua salinan pada akhirnya pasti akan tidak sinkron.
Deskripsi dan README
description singkat muncul dalam hasil pencarian. Deskripsi panjang berasal dari readme Anda (biasanya README.md) dan ditampilkan sebagai halaman proyek di PyPI. Arahkan ke berkas tersebut dengan readme = 'README.md'.
README yang jelas adalah pemasaran terbaik Anda.
Lisensi
Deklarasikan lisensi agar pengguna mengetahui hak mereka. Proyek modern menggunakan ekspresi SPDX seperti license = 'MIT'. Tanpa lisensi, semua hak dilindungi, sehingga orang enggan mengadopsinya.
popular = ['MIT', 'Apache-2.0', 'BSD-3-Clause', 'GPL-3.0-only']
for lic in popular:
print('SPDX:', lic)Pengklasifikasi
classifiers adalah tag standar dari daftar PyPI, seperti 'Programming Language :: Python :: 3.11' atau 'Development Status :: 4 - Beta'. Tag ini menggerakkan penyaring PyPI dan menunjukkan tingkat kematangan serta versi yang didukung.
URL Proyek
Di bawah [project.urls], tambahkan tautan seperti Beranda, Dokumentasi, Sumber, dan Catatan Perubahan. Tautan ini muncul di bilah sisi PyPI dan membantu pengguna menemukan repositori serta dokumentasi Anda.
urls = {
'Homepage': 'https://example.com',
'Source': 'https://github.com/me/mytool',
'Issues': 'https://github.com/me/mytool/issues',
}
for label, link in urls.items():
print(label.ljust(10), link)Kata Kunci untuk Penemuan
Kolom keywords adalah daftar istilah pendek yang membantu pengguna menemukan paket Anda dalam pencarian. Pilih kata-kata yang benar-benar akan diketik orang, seperti ['cli', 'automation', 'excel'], bukan kata-kata umum yang tidak informatif.
Bersama pengklasifikasi, kata kunci meningkatkan kemudahan proyek Anda ditemukan.
Catatan Perubahan
Pelihara CHANGELOG yang mencatat perubahan dalam setiap versi. Pengguna membacanya sebelum meningkatkan versi untuk mengetahui fitur baru dan perubahan yang merusak kompatibilitas. Menautkannya di bawah [project.urls] membuatnya dapat diakses dengan satu klik dari halaman PyPI.
Catatan perubahan yang baik mengubah nomor versi menjadi kisah yang dapat diikuti pengguna.
Cek Singkat
Uji pemahaman Anda tentang pembuatan versi.
Ringkasan
Anda berhasil mengelola metadata paket:
- Penerapan versi semantik MAJOR.MINOR.PATCH, serta sufiks prarilis
- Simpan versi di dalam satu sumber kebenaran
- Sediakan
description, deskripsi panjang README, danlicense - Tambahkan
classifiersdan[project.urls]agar PyPI menampilkan proyek Anda dengan baik
Belajar Python dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 76
- Pelajaran
- 320
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Penerapan Versi dan Metadata” gratis?
Ya — teks lengkap “Penerapan Versi dan Metadata” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Python Academy, upgrade ke CoddyKit PRO. Kursus Python Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Penerapan Versi dan Metadata”?
Kelola metadata paket Kamu berlatih Python Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Python Academy?
Tidak diperlukan pengalaman sebelumnya. Python Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Penerapan Versi dan Metadata” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Python Academy ini?
Ya. Setiap pelajaran Python Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Struktur Proyek dan pyproject.toml
- Membangun dengan build
- Penerapan Versi dan Metadata
- Mempublikasikan dengan twine