16.6 Semantic Versioning¶
Semantic Versioning (SemVer) adalah sistem penomoran versi yang digunakan untuk memberi informasi tentang perubahan yang terjadi pada perangkat lunak, sehingga pengembang dan pengguna dapat memahami apa yang telah berubah hanya dengan melihat nomor versinya.
16.6.1 Format Semantic Versioning¶
Semantic Versioning menggunakan format MAJOR.MINOR.PATCH, yang memiliki arti sebagai berikut:
- MAJOR: Perubahan besar yang tidak kompatibel dengan versi sebelumnya.
- Contoh: Merombak API sehingga aplikasi menjadi tidak kompatibel dengan versi sebelumnya, maka versi menjadi
2.0.0
.
- Contoh: Merombak API sehingga aplikasi menjadi tidak kompatibel dengan versi sebelumnya, maka versi menjadi
- MINOR: Penambahan fitur baru yang kompatibel dengan versi sebelumnya.
- Contoh: Menambahkan fitur pencarian baru, maka versi menjadi
1.2.0
.
- Contoh: Menambahkan fitur pencarian baru, maka versi menjadi
- PATCH: Perbaikan bug atau perubahan kecil yang tidak mengubah kompatibilitas.
- Contoh: Memperbaiki bug kecil, maka versi menjadi
1.1.1
.
- Contoh: Memperbaiki bug kecil, maka versi menjadi
16.6.2 Contoh Versi:¶
16.6.3 Pre-release dan Build Metadata¶
Selain MAJOR.MINOR.PATCH, SemVer juga mendukung:
- Pre-release Versions: Ditambahkan dengan tanda minus (-), misalnya:
1.0.0-alpha
1.0.0-beta
1.0.0-rc.1
- Build Metadata: Ditambahkan dengan tanda plus (+), misalnya:
1.0.0+20130313144700