Anlamsal Sürüm Doğrulayıcı

SemVer 2.0.0 standardına göre doğrulamak için sürüm dizesini yapıştırın.

Nasıl hesaplanır?

Dizenin başındaki ve sonundaki boşluklar silindikten sonra metin resmî SemVer 2.0.0 kalıbıyla eşleştirilir: MAJOR.MINOR.PATCH[-ÖNSÜRÜM][+YAPI]. MAJOR, MINOR ve PATCH baştaki sıfır içermeyen, negatif olmayan tam sayılar olmalıdır (0 olur, 01 olmaz). İsteğe bağlı ön sürüm kısmı tireden sonra gelir; harf, rakam ve tireden oluşan, noktayla ayrılmış tanımlayıcılardan oluşur ve yalnızca rakamdan oluşan tanımlayıcılarda da baştaki sıfır yasaktır. İsteğe bağlı yapı kısmı artı işaretinden sonra gelir, aynı karakterleri kullanır, ancak orada baştaki sıfıra izin verilir.

Eşleşme başarılıysa her bölüm ayrı gösterilir, olmayan bölüm tire ile belirtilir. Başarısızsa dize geçersiz sayılır ve tüm alanlarda tire görünür. Araç yalnızca biçimi denetler; iki sürümü karşılaştırmaz, hangisinin daha yeni olduğunu söylemez.

Örnek hesaplama

Girdi: 2.4.1-beta.3+build.20240115. Tire veya artıdan önceki çekirdek 2.4.1'dir; yani major = 2, minor = 4, patch = 1. İlk tireden sonra, artıdan önceki kısım ön sürümdür: beta.3 (“beta” ve “3” tanımlayıcıları). Artıdan sonraki kısım yapı meta verisidir: build.20240115. Tüm kurallar sağlandığı için geçerlilik sonucu Evet çıkar ve beş bölümün hepsi dolar.

Bu örneği dene →

Sık yapılan hatalar

  • Başa “v” koymak (v1.2.3). Git etiketlerinde yaygındır ama SemVer dilbilgisi buna izin vermez; araç geçersiz der. Önce “v” harfini silin.
  • Yalnızca iki bölüm yazmak (1.2). SemVer her zaman major, minor ve patch ister; patch eksikse dize geçersizdir.
  • Sayıları sıfırla doldurmak (1.02.3 ya da 1.0.0-01). Çekirdek sayılarda ve sayısal ön sürüm tanımlayıcılarında baştaki sıfır reddedilir.
  • Sonda tire veya artı bırakmak (1.2.3- ya da 1.2.3+). Boş ön sürüm ya da yapı bölümüne izin verilmez.
  • Yapı meta verisinin sürüm sıralamasında önemli olduğunu sanmak. Burada kabul edilir ve gösterilir, ancak SemVer önceliği karşılaştırırken onu yok sayar; bu araç ise zaten karşılaştırma yapmaz.

Bu hesaplama hakkında

Semantic Versioning 2.0.0 (semver.org), npm, Cargo, Composer ve çoğu modern paket kayıt sistemi tarafından kullanılan, sürüm numaralarını MAJOR.MINOR.PATCH biçiminde yapılandıran yaygın kabul görmüş spesifikasyondur; major artışı geriye dönük uyumsuz değişiklikleri, minor artışı geriye dönük uyumlu yeni özellikleri, patch artışı ise geriye dönük uyumlu düzeltmeleri belirtir; isteğe bağlı olarak tire ile eklenen bir ön sürüm etiketi (-beta.1 gibi) ve artı işaretiyle eklenen bir yapı meta verisi etiketi (+20130313144700 gibi) ile genişletilebilir.

Bu araç yapıştırılan bir sürüm dizesinin SemVer 2.0.0 dilbilgisine göre geçerli olup olmadığını kontrol eder ve geçerliyse major, minor, patch, ön sürüm ve yapı bileşenlerine ayırır. Paket yayımlayan yazılım geliştiriciler, sürüm etiketlerini doğrulayan CI/CD hattı sorumluları ve paket kayıt sistemi araçlarını geliştirenler, bozuk bir sürüm dizesinin başarısız bir yayına veya bağımlılık çözümleme hatasına yol açmasını önlemek için bu aracı kullanır.

Bu faydalı oldu mu?

En fazla 3 tepki seçebilirsiniz.

Yorumlar

  • İlk yorumu siz yazın.

Popüler hesaplayıcılar

Tüm Hesaplayıcılar