dotnet CLI-kommandon loggar data som inte är relevanta för kommandot till stderr

Från och med .NET 10 kommer viss dotnet CLI-kommandoutdata som inte är central för kommandots utförande att skickas till stderr i stället för stdout.

Version lanserad

.NET 10

Tidigare beteende

Tidigare meddelanden vid första körning för dotnet CLI som skickats till stdout.

Nytt beteende

Från och med .NET 10 skickas första körningsmeddelanden för dotnet CLI till stderr. (I framtiden kommer fler meddelanden att genomgå en liknande förändring.)

Typ av brytande ändring

Den här ändringen är en beteendeförändring.

Orsak till ändring

Information som skrivs till stdout som inte är direkt relaterad till kommandot som anropas hämmar användningen av kommandon i skript eller icke-interaktiva omständigheter. När icke-primära utdata som diagnostik, utförliga meddelanden och incidentaviseringar flyttas till stderrstdout förblir rena för parsning eller annan tolkning.

För de flesta icke-PowerShell-användare bör den här ändringen inte kräva någon åtgärd.

För PowerShell-användare rekommenderar vi att du använder minst PowerShell version 7.2, där omdirigering till stderr inte anger PowerShells $Error variabel och får PowerShell att tro att föregående kommando misslyckades.

Berörda API:er

Ingen.