Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Środowisko uruchomieniowe platformy .NET i zestaw .NET SDK dodają nowe funkcje o różnych częstotliwościach. Ogólnie rzecz biorąc, zestaw SDK jest aktualizowany częściej niż środowisko uruchomieniowe. W tym artykule opisano środowisko uruchomieniowe i numery wersji zestawu SDK.
Platforma .NET co listopada publikuje nową wersję główną. Wersje parzyste, takie jak .NET 6 lub .NET 8, są wersjami z długoterminowym wsparciem (LTS). Wersje LTS otrzymują bezpłatną pomoc techniczną i poprawki przez trzy lata. Wydania o nieparzystych numerach to wydania ze wsparciem o standardowym czasie trwania (STS). Wersje wsparcia standardowego otrzymują bezpłatną pomoc techniczną i poprawki przez dwa lata (zaczynając od .NET 9).
Szczegóły przechowywania wersji
Środowisko uruchomieniowe platformy .NET ma podejście major.minor.patch do przechowywania wersji, które jest zgodne z semantycznym przechowywaniem wersji.
Jednak zestaw SDK platformy .NET nie jest zgodny z wersjonowaniem semantycznym. Wydania .NET SDK są szybsze i jego numery wersji muszą odzwierciedlać zarówno dostosowane środowisko uruchomieniowe, jak i własne drobne oraz poprawkowe wersje zestawu SDK.
Pierwsze dwie cyfry numeru wersji zestawu .NET SDK są zgodne z wersją środowiska uruchomieniowego platformy .NET, z którą została wydana. Każda wersja zestawu SDK może tworzyć aplikacje dla tego środowiska uruchomieniowego lub dowolnej niższej wersji.
Trzecia pozycja numeru wersji zestawu SDK informuje zarówno o numerze pomniejszym, jak i numerze poprawki. Wersja drugorzędna jest mnożona przez 100. Ostatnie dwie cyfry reprezentują numer poprawki. Wersja drugorzędna 1, wersja poprawki 2 jest reprezentowana jako 102. Oto na przykład możliwa sekwencja numerów wersji środowiska uruchomieniowego i zestawu SDK:
| Zmiana | Środowisko uruchomieniowe platformy .NET | .NET SDK (*) | Notatki |
|---|---|---|---|
| Wydanie początkowe | 5.0.0 | 5.0.100 | Pierwsze wydanie. |
| Poprawka zestawu SDK | 5.0.0 | 5.0.101 | Środowisko uruchomieniowe nie zmieniło się za pomocą tej poprawki zestawu SDK. Aktualizacja zestawu SDK zwiększa ostatnią cyfrę w poprawce SDK. |
| Poprawka środowiska uruchomieniowego i zestawu SDK | 5.0.1 | 5.0.102 | Poprawka środowiska uruchomieniowego zwiększa jego numer wersji. Aktualizacja zestawu SDK zwiększa ostatnią cyfrę w poprawce SDK. |
| Zmiana funkcji zestawu SDK | 5.0.1 | 5.0.200 | Poprawka środowiska uruchomieniowego nie uległa zmianie. Nowa funkcja zestawu SDK zwiększa pierwszą cyfrę w poprawce zestawu SDK. |
| Poprawka środowiska uruchomieniowego | 5.0.2 | 5.0.200 | Poprawka środowiska uruchomieniowego zwiększa jego numer wersji. SDK pozostaje niezmienione. |
W poprzedniej tabeli można zobaczyć kilka zasad:
- Środowisko uruchomieniowe i zestaw SDK dzielą wersje główne i mniejsze. Pierwsze dwie liczby dla danego zestawu SDK i środowiska uruchomieniowego powinny być zgodne. Wszystkie przedstawione przykłady są częścią linii wydań platformy .NET 5.0.
- Wersja poprawki środowiska uruchomieniowego zmienia się tylko wtedy, gdy środowisko uruchomieniowe jest aktualizowane. Numer poprawki zestawu SDK nie jest aktualizowany dla poprawki środowiska uruchomieniowego.
- Wersja poprawki zestawu SDK jest aktualizowana tylko po zaktualizowaniu zestawu SDK. Istnieje możliwość, że poprawka środowiska uruchomieniowego nie wymaga poprawki zestawu SDK.
UWAGI:
- Jeśli zestaw SDK ma 10 aktualizacji funkcji przed aktualizacją funkcji środowiska uruchomieniowego, numery wersji są wprowadzane do serii 1000. Wersja 5.0.1000 będzie zgodna z wersją 5.0.900. Ta sytuacja nie jest oczekiwana.
- Wersje poprawek 99 bez wydania funkcji nie zostaną wykonane. Jeśli wydanie zbliża się do tej liczby, wymusza wydanie nowej funkcji.
Więcej szczegółów można znaleźć w początkowej propozycji w repozytorium dotnet/designs .
Semantyczne wersjonowanie
Środowisko uruchomieniowe platformy .NET w przybliżeniu jest zgodne z semantycznym wersjonowaniem (SemVer), przy użyciu różnych części numeru wersji MAJOR.MINOR.PATCH, aby opisać stopień i typ zmiany.
MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER]
Opcjonalne PRERELEASE i BUILDNUMBER części nigdy nie są częścią obsługiwanych wersji i istnieją tylko w nocnych kompilacjach, kompilacjach lokalnych z docelowych źródeł i nieobsługiwanych wersjach zapoznawczych.
Zmiany numeru wersji środowiska uruchomieniowego
MAJORjest zwiększany co roku i może zawierać:- Istotne zmiany w produkcie lub nowy kierunek produktu.
- Interfejs API wprowadził zmiany łamiące zgodność. Istnieje wysoki pasek akceptowania zmian powodujących niezgodność.
- Przyjmuje się nowszą
MAJORwersję istniejącej zależności.
Główne wersje mają miejsce raz w roku, wersje o parzystych numerach są wydaniami z długoterminowym wsparciem (LTS). Pierwsza wersja LTS korzystająca z tego schematu przechowywania wersji to .NET 6. Najnowszą wersją inną niż LTS jest .NET 9.
MINORwartość jest zwiększana, gdy:- Dodano obszar powierzchni publicznego interfejsu API.
- Dodano nowe zachowanie.
- Przyjmuje się nowszą
MINORwersję istniejącej zależności. - Wprowadzono nową zależność.
PATCHwartość jest zwiększana, gdy:- Wprowadzono poprawki błędów.
- Dodano obsługę nowszej platformy.
- Przyjmuje się nowszą
PATCHwersję istniejącej zależności. - Każda inna zmiana nie pasuje do jednego z poprzednich przypadków.
W przypadku wielu zmian największy element, na który mają wpływ poszczególne zmiany, jest zwiększany, a następujące są resetowane do zera. Na przykład, gdy MAJOR jest zwiększany, MINOR.PATCH jest resetowany do zera. Gdy MINOR jest zwiększane, PATCH jest resetowane do zera, podczas gdy MAJOR pozostaje taka sama.
Numery wersji w nazwach plików
Pliki pobrane dla platformy .NET zawierają wersję, na przykład dotnet-sdk-5.0.301-win-x64.exe.
Wersje zapoznawcze
Wersje zapoznawcze mają -preview.[number].[build] dołączony do numeru wersji. Na przykład 6.0.0-preview.5.21302.13.
Obsługa wersji
Po wydaniu, gałęzie związane z wydaniem zwykle przestają tworzyć codzienne kompilacje i zamiast tego zaczynają tworzyć kompilacje serwisowe. Wersje obsługi są -servicing-[number] dołączane do wersji. Na przykład 5.0.1-servicing-006924.
Zgodność środowiska uruchomieniowego platformy .NET
Środowisko uruchomieniowe platformy .NET utrzymuje wysoki poziom zgodności między wersjami. Aplikacje platformy .NET powinny nadal działać po uaktualnieniu do nowej głównej wersji środowiska uruchomieniowego platformy .NET.
Każda główna wersja środowiska uruchomieniowego platformy .NET zawiera zamierzone, starannie sprawdzone i udokumentowane przełomowe zmiany. Udokumentowane zmiany powodujące niekompatybilność nie są jedyną przyczyną problemów, które mogą wpłynąć na aplikację po uaktualnieniu. Na przykład poprawa wydajności środowiska uruchomieniowego platformy .NET (która nie jest uznawana za zmianę naruszającą zgodność) może ujawniać ukryte usterki wątkowe aplikacji, które powodują, że aplikacja nie działa w tej wersji. Oczekuje się, że duże aplikacje będą wymagać kilku poprawek po uaktualnieniu do nowej wersji głównej środowiska uruchomieniowego platformy .NET.
Domyślnie aplikacje platformy .NET są skonfigurowane do uruchamiania w danej wersji głównej środowiska uruchomieniowego platformy .NET, dlatego zdecydowanie zaleca się uaktualnienie aplikacji do uruchamiania w nowej wersji głównej środowiska uruchomieniowego platformy .NET. Następnie ponownie przetestuj aplikację po uaktualnieniu, aby zidentyfikować wszelkie problemy.
Załóżmy, że uaktualnienie za pośrednictwem ponownej kompilacji aplikacji nie jest możliwe. W takim przypadku środowisko uruchomieniowe platformy .NET udostępnia dodatkowe ustawienia umożliwiające uruchamianie aplikacji w wyższej głównej wersji środowiska uruchomieniowego platformy .NET niż wersja, dla którego została skompilowana. Te ustawienia nie zmieniają ryzyka związanego z uaktualnianiem aplikacji do wyższej głównej wersji środowiska uruchomieniowego platformy .NET i nadal są wymagane do ponownego testowania aplikacji po uaktualnieniu.
Środowisko uruchomieniowe platformy .NET obsługuje ładowanie bibliotek przeznaczonych dla starszych wersji środowiska uruchomieniowego platformy .NET. Aplikacja uaktualniona do nowszej głównej wersji środowiska uruchomieniowego platformy .NET może odwoływać się do bibliotek i pakietów NuGet przeznaczonych dla starszych wersji środowiska uruchomieniowego platformy .NET. Nie trzeba jednocześnie uaktualniać docelowej wersji środowiska uruchomieniowego wszystkich bibliotek i pakietów NuGet, do których odwołuje się aplikacja.