Megosztás a következőn keresztül:


A .NET verziószámának beállítása

A .NET futtatókörnyezet és a .NET SDK új funkciókat ad hozzá különböző frekvenciákon. Az SDK általában gyakrabban frissül, mint a futtatókörnyezet. Ez a cikk a futtatókörnyezetet és az SDK-verziószámokat ismerteti.

A .NET minden novemberben kiad egy új főverziót. A páros számú kiadások, például a .NET 6 vagy a .NET 8 hosszú távon támogatottak (LTS). Az LTS-kiadások három évig ingyenes támogatást és javításokat kapnak. A páratlan számú kiadások standard szintű támogatásnak számítanak. A standard szintű támogatási kiadások 18 hónapig ingyenes támogatást és javításokat kapnak.

Verziókezelés részletei

A .NET-futtatókörnyezetben a szemantikai verziókövetést követő verziószámozás egy major.minor.patch megközelítéssel rendelkezik.

A .NET SDK azonban nem követi a szemantikai verziókövetést. A .NET SDK gyorsabb kiadást eredményez, és a verziószámainak kommunikálniuk kell az igazított futtatókörnyezetet, valamint az SDK saját alverzióját és javításait.

A .NET SDK-verziószám első két pozíciója megegyezik a .NET-futtatókörnyezet által kiadott verzióval. Az SDK minden verziója létrehozhat alkalmazásokat ehhez a futtatókörnyezethez vagy bármely alacsonyabb verzióhoz.

Az SDK-verziószám harmadik pozíciója az alverzió és a javítás számát is közli. Az alverzió megszorozva 100-tal. Az utolsó két számjegy a javítás számát jelöli. Az 1. alverzió, a 2. javítás 102-esként jelenik meg. Íme például a futtatókörnyezet és az SDK verziószámainak lehetséges sorozata:

Változás .NET-futtatókörnyezet .NET SDK (*) Jegyzetek
Első kiadás 5.0.0 5.0.100 Első kiadás.
SDK-javítás 5.0.0 5.0.101 A futtatókörnyezet nem változott ezzel az SDK-javítással. Az SDK-javítás növeli az SDK-verzió utolsó számjegyét.
Futtatókörnyezet és SDK-javítás 5.0.1 5.0.102 A futásidejű javítás frissíti a futásidejű javítás számát. Az SDK-javítás növeli az SDK-verzió utolsó számjegyét.
SDK-funkció módosítása 5.0.1 5.0.200 A futási idő alatti javítás nem változott. Az új SDK-funkció növeli az SDK-javítás verziójának első számjegyét.
Futtatókörnyezeti javítás 5.0.2 5.0.200 A futásidejű javítás frissíti a futásidejű javítás számát. Az SDK nem változik.

Az előző táblázatban több szabályzat is látható:

  • A futtatókörnyezet és az SDK fő- és alverziókat használ. Egy adott SDK és futtatókörnyezet első két számának egyeznie kell. Az összes fenti példa a .NET 5.0 kiadási stream része.
  • A futtatókörnyezet javító verziója csak a futtatókörnyezet frissítésekor változik. Az SDK-javítás száma nem frissül futásidejű javítás esetén.
  • Az SDK javításverziója csak az SDK frissítésekor frissül. Lehetséges, hogy egy futtatókörnyezeti javításhoz nincs szükség SDK-javításra.

MEGJEGYZÉSEK:

  • Ha az SDK-nak 10 funkciófrissítése van a futtatókörnyezeti funkciók frissítése előtt, a verziószámok az 1000-es sorozatba kerülnek. Az 5.0.1000-es verzió az 5.0.900-es verziót követi. Ez a helyzet nem várható.
  • A 99 javítás funkciókiadás nélkül nem jelenik meg. Ha egy kiadás megközelíti ezt a számot, az a funkciók kiadását kényszeríti.

További részleteket a kezdeti javaslatban talál a dotnet/designs adattárban.

Szemantikai verziószámozás

A .NET-futtatókörnyezet nagyjából megfelel a szemantikus verziószámozásnak (SemVer),MAJOR.MINOR.PATCH és a verziószám különböző részeivel ismerteti a változás mértékét és típusát.

MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER]

Az opcionális PRERELEASE és BUILDNUMBER részek soha nem részei a támogatott kiadásoknak, és csak éjszakai build-ekben, forrásból származó helyi build-ekben és nem támogatott előzetes kiadásokban léteznek.

A futtatókörnyezet verziószámának módosítása

  • MAJOR évente egyszer növekszik, és a következőket tartalmazhatja:

    • Jelentős változások a termékben, vagy egy új termékirány.
    • Az API kompatibilitástörő változásokat vezetett be. Magas mérce van arra, hogy elfogadjuk a kompatibilitást megszüntető változtatásokat.
    • A rendszer egy meglévő függőség újabb MAJOR verzióját fogadja el.

    A fő kiadások évente egyszer fordulnak elő, a páros számmal rendelkező verziók hosszú távú támogatott (LTS-) kiadások. A verziószámozási sémát használó első LTS-kiadás a .NET 6. A legújabb nem LTS-verzió a .NET 9.

  • MINOR meg van növelve, ha:

    • A nyilvános API-felület hozzáadva.
    • Új viselkedést adtak hozzá.
    • A rendszer egy meglévő függőség újabb MINOR verzióját fogadja el.
    • A rendszer új függőséget vezet be.
  • PATCH meg van növelve, ha:

    • Hibajavítások történtek.
    • Az újabb platform támogatása hozzáadásra került.
    • A rendszer egy meglévő függőség újabb PATCH verzióját fogadja el.
    • A többi módosítás nem felel meg az előző esetek egyikének.

Ha több módosítás van, az egyes módosítások által érintett legmagasabb elem növekszik, és a következő elemek nullára lesznek visszaállítva. Ha például MAJOR növekszik, MINOR.PATCH visszaállnak nullára. Amikor a MINOR növekszik, a PATCH nullára lesz visszaállítva, míg a MAJOR változatlan marad.

Verziószámok fájlnevekben

A .NET-hez letöltött fájlok például a verziót dotnet-sdk-5.0.301-win-x64.exehordozzák.

Előzetes verzió

Az előzetes verziók hozzá vannak -preview.[number].[build] fűzve a verziószámhoz. Például: 6.0.0-preview.5.21302.13.

Karbantartási verziók

A kiadás kiadása után a kiadási ágak általában leállnak a napi buildek előállításával, és ehelyett karbantartási buildek előállítását kezdik el. A karbantartási verziókhoz hozzácsatolják a -servicing-[number] jelet. Például: 5.0.1-servicing-006924.

.NET-futtatókörnyezet kompatibilitása

A .NET-futtatókörnyezet magas szintű kompatibilitást biztosít a verziók között. A .NET-alkalmazásoknak továbbra is működnie kell egy új fő .NET-futtatókörnyezeti verzióra való frissítés után.

Minden fő .NET futtatókörnyezeti verzió szándékos, gondosan átvilágított és dokumentált kompatibilitástörő módosításokat tartalmaz. A dokumentált kompatibilitástörő változások nem az egyetlen olyan problémaforrás, amely hatással lehet az alkalmazásokra a frissítés után. Például a .NET-futtatókörnyezet teljesítménybeli javulása (amely nem tekinthető kompatibilitástörő változásnak) olyan látens alkalmazásszál-hibákat tehet közzé, amelyek miatt az alkalmazás nem működik ezen a verzión. A nagyméretű alkalmazások várhatóan néhány javítást igényelnek az új .NET-futtatókörnyezet főverziójára való frissítés után.

Alapértelmezés szerint a .NET-alkalmazások úgy vannak konfigurálva, hogy egy adott .NET-futtatókörnyezeti főverzión fussanak, ezért az újrafordítás erősen ajánlott az alkalmazás frissítéséhez, hogy egy új .NET-futtatókörnyezet főverzióján fusson. Ezután a frissítés után tesztelje újra az alkalmazást, hogy azonosítsa a problémákat.

Tegyük fel, hogy az alkalmazás újrafordításán keresztül történő frissítés nem valósítható meg. Ebben az esetben a .NET-futtatókörnyezet további beállításokat biztosít ahhoz, hogy egy alkalmazás a lefordított verziónál magasabb fő .NET-futtatókörnyezeti verzión fusson. Ezek a beállítások nem módosítják az alkalmazás magasabb fő .NET-futtatókörnyezeti verzióra való frissítésével járó kockázatokat, és a frissítés után is újra kell tesztelni az alkalmazást.

A .NET-futtatókörnyezet támogatja a régebbi .NET-futtatókörnyezeti verziókat célzó kódtárak betöltését. Az újabb fő .NET-futtatókörnyezeti verzióra frissített alkalmazások hivatkozhatnak a régebbi .NET-futtatókörnyezeti verziókat célzó kódtárakra és NuGet-csomagokra. Szükségtelen egyidejűleg frissíteni az alkalmazás által hivatkozott összes kódtár és NuGet-csomag cél futtatókörnyezeti verzióját.

Lásd még