Azis Hapidin
Mengenal Semantic Versioning

Jadi apa itu Semantic Version? Simplenya Semantic Version ini adalah sistem penomoran versi sebuah produk/software. Berfungsi untuk membedakan satu versi dengan versi lainnya.

Bentuk Semantic Version ini terdiri atas 3 bagian yang dipisahkan dengan tanda titik: MAJOR. MINOR. PATCH.

  • Major: Jika terjadi perubahan angka pada Major, berarti ada perubahan yang sangat drastis, ditambahkannya fitur baru termasuk akan ada beberapa API/fitur yang tidak lagi cocok dengan versi sebelumnya.
  • Minor: Perubahan angka pada Minor berarti ada fitur baru tanpa menghilangkan fitur pada versi sebelumnya.
  • Patch: Penambahan angka pada bagian patch artinya ada perbaikan bug tanpa menghilangkan fitur pada versi sebelumnya.

Simulasi

Agar lebih terbayang, kita buat simulasi bahwa kita sedang develop sebuah software.

  1. Setelah semua sudah stabil dan siap untuk launcing. Kita langsung rilis versi 1.0.0 atau biasa disebut Stable Version.
  2. Setelah beberapa hari kemudian, ternyata kita menemukan sebuah bug. Kita pun langsung memperbaiki bug tersebut dan langsung rilis versi 1.0.1.
  3. Hari demi hari kita lewati, tiap hari ada bug ditemukan dan langsung kita perbaiki. Sampai 10 hari kemudian sudah mencapai versi 1.0.11.
  4. Besoknya kita publish fitur baru pada software, kemudian kita rilis versi 1.2.0.
  5. Seperti biasa, kita terus memperbaiki setiap bug yang ditemukan. Saking banyaknya patch yang kita buat, hingga sampailah pada versi 1.2.143.
  6. Sebulan kemudian, terjadi perubahan besar-besaran pada software. Mulai dari penambahan fitur baru sampai menghilangkan fitur pada versi sebelumnya. Kita pun rilis versi 2.0.0.

Semoga penjelasan simulasi diatas cukup dimengerti, maklum saya kurang ahli dalam merangkai kata-kata 😀

Semantic Version ini juga membantu untuk melihat apa yang berubah pada versi terbaru. Misal saya menggunakan sebuah Framework versi 5.6.1, maka ketika saya mau upgrade ke 5.6.3 tidak perlu khawatir akan ada program yang tidak jalan karena hanya ada patch baru.

Sekian artikel singkat kali ini, jika ingin lebih lengkap bisa baca-baca disini. Jika ada kesalahan dalam artikel ini silahkan curat coret di kolom komentar. Insya Allah nanti saya perbaiki artikelnya.