Udostępnij za pośrednictwem


Rejestrator terminalu jest domyślny

Rejestrator terminalu jest teraz domyślnie włączony dla wszystkich sesji terminali "interaktywnych". Rejestrator terminalu formatuje dane wyjściowe konsoli dla kompilacji inaczej niż rejestrator konsoli. Aby uzyskać więcej informacji na temat rejestratora terminali, zobacz "dotnet build" options (Opcje kompilacji dotnet), w szczególności --tl opcję.

Poprzednie zachowanie

dotnet build i inne polecenia interfejsu wiersza polecenia związane z kompilacją domyślnie używały "minimalnego" rejestratora konsoli MSBuild dla kompilacji opartych na użytkownikach.

Nowe zachowanie

Jeśli terminal obsługuje różne funkcje układu i kolorowania, dotnet build a inne polecenia interfejsu wiersza polecenia związane z kompilacją domyślnie używają rejestratora terminalu dla kompilacji wyzwalanych przez użytkownika. Jeśli polecenie jest częścią skryptu powłoki lub ma dane wejściowe lub wyjściowe przekierowane w jakikolwiek sposób lub jeśli terminal nie obsługuje niektórych rozszerzonych funkcji układu, które ma rejestrator terminalu, nie jest używany rejestrator terminalu.

Wprowadzona wersja

.NET 9 (wersja zapoznawcza 1)

Typ zmiany powodującej niezgodność

Ta zmiana jest zmianą behawioralną.

Przyczyna wprowadzenia zmiany

Dane wyjściowe rejestratora terminalu dotyczące postępu kompilacji są bardziej gęste i możliwe do działania niż dane wyjściowe rejestratora konsoli. Zespół MSBuild chce zachęcić do korzystania z rejestratora terminalu na wczesnym etapie cyklu wydawania platformy .NET 9, dzięki czemu nadszedł czas na zebranie opinii na temat jakości i funkcjonalności funkcji.

Jeśli chcesz przywrócić rejestrator konsoli, możesz wyłączyć rejestrator terminalu w następujący sposób:

  • Aby wyłączyć rejestrator terminalu dla określonego polecenia, określ --tl:off w wierszu polecenia lub za pośrednictwem pliku odpowiedzi MSBuild.
  • Aby wyłączyć rejestrator terminalu dla wszystkich poleceń, ustaw zmienną MSBUILDTERMINALLOGGER środowiskową na off.

Dotyczy interfejsów API

Nie dotyczy

Zobacz też