Condividi tramite


Il logger del terminale è predefinito

Il logger del terminale ora è abilitato per impostazione predefinita per tutte le sessioni "interattive" del terminale. Il logger del terminale formatta l'output della console per le compilazioni in modo diverso rispetto al logger della console. Per altre informazioni sul logger del terminale, vedi opzioni "dotnet build", in particolare l'opzione --tl.

Comportamento precedente

dotnet build e altri comandi dell'interfaccia della riga di comando correlati alla compilazione usano il logger della console MSBuild di dettaglio 'minimo' per impostazione predefinita per le compilazioni guidate dall'utente.

Nuovo comportamento

Se il terminale supporta varie funzionalità di layout e colorazione, dotnet build e altri comandi dell'interfaccia della riga di comando correlati alla compilazione usano il logger del terminale per impostazione predefinita per le compilazioni attivate dall'utente. Se il comando fa parte di uno script della shell o ha avuto input o output reindirizzato in qualsiasi modo, o se il terminale non supporta alcune delle funzionalità di layout avanzate del logger del terminale, allora il logger del terminale non viene usato.

Versione introdotta

.NET 9 Anteprima 1

Tipo di modifica che causa un'interruzione

Questa è una modifica funzionale.

Motivo della modifica

L'output del logger del terminale sullo stato di avanzamento di una compilazione è più dettagliato e interattivo rispetto all'output del logger della console. Il team MSBuild vuole incoraggiare l'uso del logger del terminale nelle prime fasi del ciclo di rilascio di .NET 9, in modo che sia possibile raccogliere feedback sulla qualità e sulle funzionalità della caratteristica.

Se devi ripristinare il logger della console, puoi disabilitare il logger del terminale nei modi seguenti:

  • Per disabilitare il logger del terminale per un comando specifico, specificare --tl:off nella riga di comando o tramite un file di risposta MSBuild.
  • Per disabilitare il logger del terminale per tutti i comandi, impostare la variabile di ambiente MSBUILDTERMINALLOGGER su off.

API interessate

N/D

Vedi anche