.NET'in sürümüne genel bakış

.NET Çalışma Zamanı ve .NET SDK'sı farklı sıklıklarda yeni özellikler ekler. Genel olarak, SDK Çalışma Zamanından daha sık güncelleştirilir. Bu makalede çalışma zamanı ve SDK sürüm numaraları açıklanmıştır.

.NET her Kasım ayında yeni bir ana sürüm yayımlar. .NET 6 veya .NET 8 gibi hatta numaralı sürümler uzun süreli destek (LTS) olarak da desteklemektedir. Tek numaralı sürümler bir sonraki ana sürüme kadar desteklene. .NET'in en son sürümü .NET 6'dır.

Sürüm ayrıntıları

.NET Çalışma Zamanı, semantik sürüme göre sürüme büyük.ikincil.patch yaklaşımına sahip.

Ancak .NET SDK, semantik sürüme uymaz. .NET SDK daha hızlı yayınlanır ve sürüm numaralarının hem uyumlu çalışma zamanı hem de SDK'nın kendi ikincil ve düzeltme eki yayınlarını iletişim kurması gerekir.

.NET SDK sürüm numarasının ilk iki konumu, yayımlayacağı .NET Çalışma Zamanı sürümüyle eştir. SDK'nın her sürümü bu çalışma zamanı veya daha düşük bir sürüm için uygulama oluşturabilir.

SDK sürüm numarasının üçüncü konumu hem ikincil hem de düzeltme eki numarasını iletir. İkincil sürüm 100 ile çarpılır. Son iki basamak düzeltme eki numarasını temsil eder. İkincil sürüm 1, düzeltme eki sürüm 2 102 olarak temsil edildi. Örneğin, olası bir çalışma zamanı ve SDK sürüm numaraları dizisi:

Değiştir .NET Çalışma Zamanı .NET SDK (*)
İlk yayın 5.0.0 5.0.100
SDK düzeltme eki 5.0.0 5.0.101
Çalışma zamanı ve SDK düzeltme eki 5.0.1 5.0.102
SDK özellik değişikliği 5.0.1 5.0.200

NOTLAR:

  • SDK'nın çalışma zamanı özellik güncelleştirmeden önce 10 özellik güncelleştirmesi varsa sürüm numaraları 1000 serisine yuvarlanmıştır. Sürüm 5.0.1000, 5.0.900 sürümünü takip eder. Bu durumun gerçekleşmesi beklenmiyor.
  • Özellik sürümü olmayan 99 düzeltme eki sürümü oluşmaz. Bir yayın bu sayıya yaklaştığında, bir özellik yayına güç sağlar.

Dotnet/designs deposundaki ilk teklifte daha fazla ayrıntıyı bulabilirsiniz.

Anlamsal sürüm oluşturma

.NET Çalışma Zamanı, değişiklik derecesini ve türünü açıklamak için sürüm numarasının çeşitli bölümlerini kullanarak sürüm yazma kullanımını benimseyen Semantic Versioning'e (SemVer) kabaca bağlıdır.

MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER]

İsteğe PRERELEASE bağlı BUILDNUMBER ve parçaları hiçbir zaman desteklenen sürümlere eklenmez ve yalnızca gecelik derlemelerde, kaynak hedeflerden yerel derlemelerde ve desteklenmeyen önizleme yayınlarında mevcuttur.

Çalışma zamanı sürüm numarası değişikliklerini anlama

  • MAJOR yılda bir kez artırılır ve şunları içerebilir:

    • Üründe veya yeni ürün yönünde önemli değişiklikler.
    • API, yeni değişikliklere neden oldu. Yeni değişiklikleri kabul etmek için yüksek bir çubuk vardır.
    • Mevcut bağımlılığın MAJOR daha yeni bir sürümü benimsenmiş olur.

    Ana sürümler yılda bir kez, hatta numaralı sürümler uzun süreli desteklenen (LTS) sürümlerdir. Bu sürüm oluşturma şemasını kullanan ilk LTS sürümü .NET 6'dır. LTS olmayan en son sürüm .NET 5'tir.

  • MINOR şu olduğunda artırılır:

    • Genel API yüzey alanı eklenir.
    • Yeni bir davranış eklenir.
    • Mevcut bağımlılığın MINOR daha yeni bir sürümü benimsenmiş olur.
    • Yeni bir bağımlılık tanıtıldı.
  • PATCH şu olduğunda artırılır:

    • Hata düzeltmeleri yapılır.
    • Daha yeni bir platform desteği eklendi.
    • Mevcut bağımlılığın PATCH daha yeni bir sürümü benimsenmiş olur.
    • Diğer hiçbir değişiklik önceki durumlardan birine uymaz.

Birden çok değişiklik olduğunda, tek tek değişikliklerden etkilenen en yüksek öğe artırılır ve aşağıdakiler sıfırlanır. Örneğin, artırılırsa MAJOR sıfırlanır MINOR.PATCH . artırılırsa MINOR sıfıra PATCH sıfırlanır ve MAJOR aynı kalır.

Dosya adlarında sürüm numaraları

.NET için indirilen dosyalar sürümü taşır, örneğin, dotnet-sdk-5.0.301-win10-x64.exe.

Önizleme sürümleri

Önizleme sürümleri sürüm -preview.[number].[build] numarasına eklenir. Örneğin, 6.0.0-preview.5.21302.13.

Bakım sürümleri

Bir yayın yayından sonra yayın dalları genellikle günlük derlemeleri üretmeyi durdurur ve bunun yerine bakım derlemeleri üretmeye başlar. Bakım sürümlerinin sürümüne -servicing-[number] bir eklenir. Örneğin, 5.0.1-servicing-006924.

Ayrıca bkz.