Compartilhar via


O agente de terminal é o padrão

O registrador de terminal agora está habilitado por padrão para todas as sessões de terminal "interativas". O registrador de terminal formata a saída do console para compilações de forma diferente do registrador de console. Para obter mais informações sobre o registrador de terminal, consulte Opções de 'dotnet build', especificamente a opção --tl.

Comportamento anterior

dotnet build e outros comandos da CLI relacionados à compilação usavam o agente de console MSBuild de detalhamento 'mínimo' por padrão para compilações orientadas pelo usuário.

Novo comportamento

Se o terminal der suporte a vários recursos de layout e colorização, dotnet build e outros comandos da CLI relacionadas ao build usarão o agente de terminal por padrão para builds disparados pelo usuário. Se o comando fizer parte de um script de shell ou tiver tido entrada ou saída redirecionada de alguma forma ou se o terminal não oferecer suporte a alguns dos recursos de layout aprimorados que o agente do terminal tem, o agente do terminal não será usado.

Versão introduzida

Versão prévia 1 do .NET 9

Tipo de alteração interruptiva

Esta é uma alteração comportamental.

Motivo da alteração

A saída do agente de terminal sobre o progresso de um build é mais densa e acionável em informações do que a saída do agente do console. A equipe do MSBuild deseja incentivar o uso do agente de terminal no início do ciclo de lançamento do .NET 9 para que haja tempo para coletar comentários sobre a qualidade e a funcionalidade do recurso.

Se você precisar reverter para o agente do console, poderá desabilitar o agente de terminal pode ser desabilitado das seguintes maneiras:

  • Para desabilitar o agente de terminal para um comando específico, especifique --tl:off na linha de comando ou por meio de um arquivo de resposta do MSBuild.
  • Para desabilitar o agente de terminal para todos os comandos, defina a variável de ambiente MSBUILDTERMINALLOGGER como off.

APIs afetadas

N/D

Confira também