Partager via


Commandes dotnet CLI journalisent les données sans rapport avec les commandes sur stderr

À compter de .NET 10, certaines sorties de commande CLI qui ne sont pas essentielles pour la commande exécutée sont émises vers dotnet, plutôt que vers stderr.

Version introduite

.NET 10

Comportement précédent

Auparavant, les messages de première exécution de l’interface dotnet CLI émis vers stdout.

Nouveau comportement

À compter de .NET 10, les messages de première exécution pour l’interface dotnet CLI émettent vers stderr. (À l’avenir, d’autres messages seront soumis à un changement similaire.)

Type de changement cassant

Ce changement est un changement de comportement.

Raison de la modification

Les informations écrites à stdout qui ne sont pas directement liées à la commande invoquée empêchent l’utilisation des commandes dans des scripts ou des contextes non interactifs. Lorsque des sorties non primaires telles que les diagnostics, les messages détaillés et les notifications accessoires sont déplacées vers stderr, stdout reste net pour l'analyse syntaxique ou d'autres interprétations.

Pour la plupart des utilisateurs non-PowerShell, cette modification ne doit pas nécessiter d’action.

Pour les utilisateurs de PowerShell, nous vous recommandons d'utiliser au moins la version 7.2 de PowerShell, où la redirection vers stderr ne définit pas la variable $Error de PowerShell et ne provoque pas une interprétation erronée de l'exécution du précédent commandement par PowerShell.

API affectées

Aucun.