RCLogo Notas sobre a versão do Visual Studio 2019 versão 16.7


Developer Community | Requisitos do sistema | Compatibilidade | Código distribuível | Histórico de versões | Termos de licença | Blogs | Novidades da documentação do Visual Studio


Observação

Esta não é a versão mais recente do Visual Studio. Para baixar a última versão, acesse o site do Visual Studio.



Período de suporte

O Visual Studio 2019 versão 16.7 não tem mais suporte.

Os usuários Enterprise e Professional do Visual Studio 2019 versão 16.7 tinham suporte e receberam correções de vulnerabilidades de segurança até abril de 2022. Esse período foi determinado pelo fato de que, em março de 2021, o Visual Studio 2019 versão 16.9 foi designado como a próxima linha de base de serviço do produto Visual Studio 2019. Para obter mais informações sobre as linhas de base com suporte do Visual Studio, confira a política de suporte do Visual Studio 2019

Veja a última versão das notas sobre a versão ou acesse o site do Visual Studio para baixar a última versão com suporte do Visual Studio 2019.

Lançamentos do Visual Studio 2019 versão 16.7

Notas sobre a versão arquivadas do Visual Studio 2019

Blog do Visual Studio

O Blog do Visual Studio é a fonte oficial de insights do produto da equipe de engenharia do Visual Studio. É possível encontrar informações detalhadas sobre as versões do Visual Studio nas seguintes postagens:


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.28

lançado em 19 abril de 2022

Neste lançamento do Visual Studio 2019 versão 16.7.28

  • Correção da regressão vctip.exe de 16.7.27

Ícone das Notas de Versão Visual Studio 2019 versão 16.7.27

lançado em 12 de abril de 2022

Neste lançamento do Visual Studio 2019 versão 16.7.27

Aviso de Consultoria de Segurança

CVE-2022-24765 Vulnerabilidade de elevação de privilégio Existe uma vulnerabilidade potencial de elevação de privilégio no Git para Windows, na qual as operações do Git podem ser executadas fora de um repositório durante a busca de um diretório Git. O Git para Windows agora é atualizado para a versão 2.35.2.1.

CVE-2022-24767 Vulnerabilidade de sequestro da DLL Existe uma vulnerabilidade potencial de sequestro de DLL no instalador do Git para Windows, ao executar o desinstalador na conta de usuário SYSTEM. O Git para Windows agora é atualizado para a versão 2.35.2.1.

CVE-2022-24513 Vulnerabilidade de elevação de privilégio Existe uma potencial vulnerabilidade de elevação de privilégio quando o serviço atualizador do Microsoft Visual Studio analisa incorretamente os dados de configuração local.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.26

lançado em 8 de março de 2022

Neste lançamento do Visual Studio 2019 versão 16.7.26

Aviso de Consultoria de Segurança

CVE-2020-8927 Vulnerabilidade Uma vulnerabilidade de execução remota de código existe no .NET 5.0 e no .NET Core 3.1, onde existe um estouro de buffer nas versões da biblioteca Brotli antes da 1.0.8.

CVE-2022-24464 Vulnerabilidade Existe uma vulnerabilidade de negação de serviço no .NET 6.0, .NET 5.0 e .NET CORE 3.1 ao analisar determinados tipos de solicitações de formulário http.

CVE-2022-24512 Vulnerabilidade Uma vulnerabilidade de execução remota de código existe no .NET 6.0, .NET 5.0 e .NET Core 3.1, em que ocorre uma buffer de pilha na rotina de Análise Dupla do .NET.

CVE-2021-3711 Vulnerabilidade de estouro de buffer do OpenSSL Existe uma possível vulnerabilidade de estouro de buffer no OpenSSL, que é consumido pelo Git para Windows. O Git para Windows agora é atualizado para a versão 2.35.1.2, que resolve esse problema.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.25

lançado em 8 de fevereiro de 2022

Neste lançamento do Visual Studio 2019 versão 16.7.25

Aviso de Consultoria de Segurança

CVE-2022-21871 Vulnerabilidade de elevação de privilégio do Runtime do Coletor Padrão do Hub de Diagnóstico Existe uma vulnerabilidade de elevação de privilégio se o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.24

lançado em 11 janeiro de 2022

Neste lançamento do Visual Studio 2019 versão 16.7.24

  • Correção de um problema ao não conseguir depurar aplicativos várias vezes quando o Terminal do Windows é usado como o terminal padrão.
  • Correção de instalação para desbloquear clientes em configurações restritas
  • Correção de um problema que impedia que um cliente pudesse atualizar um bootstrapper mais atual. Depois que o cliente estiver usando o bootstrapper e o instalador que foram enviados em janeiro de 2022 ou posterior, todas as atualizações usando bootstrappers subsequentes deverão funcionar durante o ciclo de vida do produto.

Da Developer Community


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.23

lançado em 14 de dezembro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.23

  • O Python 3.9.7 foi adicionado à carga de trabalho do Python. O Python 3.7.8 foi removido devido a uma vulnerabilidade de segurança.

Aviso de Consultoria de Segurança

CVE-2021-43877 Vulnerabilidade Existe uma vulnerabilidade de elevação de privilégio no ANCM que pode permitir a elevação de privilégio quando aplicativos .NET core, .NET 5 e .NET 6 são hospedados no IIS.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.22

lançado em 16 de novembro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.22

  • Os bootstrappers agora respeitam o parâmetro --useLatestInstaller, que faz com que o instalador mais recente seja integrado ao layout. Este instalador mais recente, que é fornecido com o Visual Studio 2022, permite o cenário em que as empresas desejam fazer a transição de seus clientes de um local de layout para outro. Para obter mais informações, consulte o [Guia de Administradores do Visual Studio](* Os bootstrappers agora respeitam o parâmetro --useLatestInstaller, que faz com que o instalador mais recente seja integrado ao layout. Este instalador mais recente, que é fornecido com o Visual Studio 2022, permite o cenário em que as empresas desejam fazer a transição de seus clientes de um local de layout para outro. Para obter mais informações, consulte o Guia de Administradores do Visual Studio.).

Ícone das Notas de Versão Visual Studio 2019 versão 16.7.21

lançado em 9 de novembro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.21

  • Correção de um bug que fazia com que um link de atalho do menu Iniciar desaparecesse. O bug só acontecia ao atualizar várias instâncias de SKUs de produtos diferentes no mesmo computador.

Aviso de Consultoria de Segurança

CVE-2021-42319 Vulnerabilidade de Elevação de Privilégio Existe uma vulnerabilidade de elevação de privilégio no provedor WMI que está incluído no instalador do Visual Studio.

CVE-2021-42277 Vulnerabilidade de elevação de privilégio do Serviço Coletor Padrão do Hub de DiagnósticoUma vulnerabilidade de elevação de privilégio existe quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de arquivo.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.20

lançado em 12 de outubro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.20

Aviso de Consultoria de Segurança

CVE-2021-41355 Disclosure Vulnerability in .NET 5.0 Existe uma vulnerabilidade de Divulgação de Informações confidenciais no .NET em que System.DirectoryServices.Protocols.LdapConnection envia credenciais em texto sem formatação no Linux.

CVE-2020-1971 Vulnerabilidade de Negação de Serviço do OpenSSL Existe uma possível negação de vulnerabilidade de serviço na biblioteca OpenSSL, que é consumida pelo Git.

CVE-2021-3449 Vulnerabilidade de Negação de Serviço do OpenSSL Existe uma possível negação de vulnerabilidade de serviço na biblioteca OpenSSL, que é consumida pelo Git.

CVE-2021-3450 Vulnerabilidade de Negação de Serviço do OpenSSL Existe um possível bypass do sinalizador na biblioteca do OpenSSL, que é consumida pelo Git.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.19

lançado em 14 de setembro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.19

Aviso de Consultoria de Segurança

CVE-2021-26434 Vulnerabilidade de escalonamento de privilégios de atribuição de permissão incorreta do Visual Studio Existe uma vulnerabilidade de atribuição de permissão no Visual Studio depois de instalar o desenvolvimento de jogos com C++ e selecionar a carga de trabalho do Unreal Engine Installer. O sistema é vulnerável ao LPE durante a instalação, ele cria um diretório com acesso de gravação a todos os usuários.

CVE-2021-36952Vulnerabilidade de Execução de Código Remoto do Visual Studio Existe uma vulnerabilidade de execução remota de código no Visual Studio quando ele manipula incorretamente objetos na memória. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código arbitrário no contexto do usuário atual.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.18

lançado em 10 de agosto de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.18

  • Correção de um problema que afetava a execução da linha de comando do comando de atualização. Se a atualização falhar na primeira vez, uma emissão subsequente do comando de atualização agora fará com que a atualização retome a operação anterior de onde parou.

Aviso de Consultoria de Segurança

CVE-2021-26423Vulnerabilidade de negação de serviço .NET CoreExiste uma vulnerabilidade de negação de serviço em que os aplicativos de servidor .NET (Core) que fornecem pontos de extremidade WebSocket podem ser levados a ficar em loop infinito quando tentam ler um único quadro WebSocket.

CVE-2021-34485 .NET Core Information Disclosure Vulnerability Existe uma vulnerabilidade de divulgação não autorizada de informação quando despejos criados pela ferramenta de coleta de despejos de memória e de despejos sob demanda são criados com permissões de leitura globais no Linux e no macOS.

CVE-2021-34532 Vulnerabilidade da divulgação não autorizada de informação do ASP.NET Core Existe uma vulnerabilidade de divulgação não autorizada de informações em que um token JWT é registrado quando não pode ser analisado.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.17

lançado em 13 de julho de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.17

  • Inserção do SDK do .NET 3.1.411 no Visual Studio 2019.

Ícone das Notas de Versão Visual Studio 2019 versão 16.7.16

lançado em 8 de junho de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.16

Aviso de Consultoria de Segurança

CVE-2021-31957 Vulnerabilidade da negação de serviço do ASP.NET Há uma vulnerabilidade de negação de serviço quando o ASP.NET Core manipula incorretamente a desconexão do cliente.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.15

lançado em 11 de maio de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.15

  • Correção de um problema que fazia com que as atualizações falhassem quando um administrador criasse um layout do Visual Studio para implantar atualizações. A atualização do computador cliente falhará, pois o layout moveu os locais.

Aviso de Consultoria de Segurança

CVE-2021-27068 RCE possível ao plantar python.exe em pasta aninhada Existe uma vulnerabilidade de execução de código remoto ao abrir um workspace com código python e esse workspace contém um python.exe em uma subpasta de scripts.

CVE-2021-31204 Vulnerabilidade de elevação de privilégio do .NET Core Existe uma vulnerabilidade de elevação de privilégio no .NET 5.0 e no .NET Core 3.1 quando um usuário executa um aplicativo de arquivo único em Sistemas Operacionais de base Linux ou macOS.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.14

lançado em 13 de abril de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.14

  • Otimizador removendo incorretamente o código ativo
  • O NuGet relatará a origem do pacote e o hash do conteúdo do pacote ao restaurar pacotes com detalhamento de saída normal
  • O NuGet salvará o código-fonte do pacote no arquivo .nupkg.metadata do pacote na pasta de pacotes globais. Os pacotes existentes na pasta de pacotes globais não obterão essas informações adicionais. Sua pasta de pacotes globais pode ser limpa para coletar informações de origem de pacotes para todos os pacotes.

Aviso de Consultoria de Segurança

CVE-2021-27064 Vulnerabilidade da elevação de privilégio do instalador do Visual Studio Existe uma vulnerabilidade de execução de código remoto quando o Instalador do Visual Studio executa o cliente de comentários em um estado elevado.

CVE-2021-28313 / CVE-2021-28321/ CVE-2021-28322Vulnerabilidade da elevação de privilégio do serviço de coletor standard do Hub de Diagnósticos. Uma vulnerabilidade de elevação de privilégio existe quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.13

lançado em 09 de março de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.13

Aviso de Consultoria de Segurança

CVE-2021-21300Git para Vulnerabilidade de Execução de Código Remoto do Visual Studio Existe uma vulnerabilidade de execução remota de código quando Visual Studio clona um repositório mal-intencionado.

CVE-2021-26701 Vulnerabilidade de execução de código remoto do Core.NET Existe uma vulnerabilidade de execução de código remoto no .NET 5 e no .NET Core devido à forma como a codificação de texto é executada.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.12

lançado em 9 de fevereiro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.12


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.11

lançado em 9 de fevereiro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.11

Bug no compilador de otimização do Visual Studio 2019 versão 16.7.6

Aviso de Consultoria de Segurança

CVE-2021-1639 TypeScript Serviço de linguagem Remoto Código Execução Vulnerabilidade Existe uma vulnerabilidade de execução de código remoto quando o Visual Studio carrega um repositório mal-intencionado que contém arquivos de código JavaScript ou TypeScript.

CVE-2021-1721 Vulnerabilidade de negação de serviço do .NET Core Existe uma vulnerabilidade de negação de serviço na criação de uma solicitação Web HTTPS durante a criação da cadeia de certificados X509.

CVE-2021-24112 Vulnerabilidade de execução de código remoto do .NET 5 e .NET CoreExiste uma vulnerabilidade de execução remota de código ao descartar metarquivos quando uma interface gráfica ainda tem uma referência a ele. Essa vulnerabilidade só existe em sistemas em execução no MacOS ou no Linux.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.10

lançada em 12 de janeiro de 2021

Neste lançamento do Visual Studio 2019 versão 16.7.10

Aviso de Consultoria de Segurança

CVE-2021-1651 / CVE-2021-1680 Vulnerabilidade de elevação de privilégio do Serviço Coletor Standard do Hub de Diagnóstico. Existe uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados.

CVE-2020-26870 Vulnerabilidade de execução remota de código do Instalador do Visual StudioExiste uma vulnerabilidade de execução remota de código quando o Instalador do Visual Studio tenta mostrar um markdown mal-intencionado.

CVE-2021-1723 Vulnerabilidade de negação de serviço do .NET Core e do Visual Studio Existe uma vulnerabilidade de negação de serviço na implementação do Kestrel.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.9

lançado em 08 de dezembro de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.9

Aviso de Consultoria de Segurança

CVE-2020-17156Vulnerabilidade de Execução de Código Remoto do Visual Studio Existe uma vulnerabilidade de execução remota de código quando Visual Studio clona um repositório mal-intencionado.


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.8

lançada em 10 de novembro de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.8

Aviso de Consultoria de Segurança

CVE-2020-17100 Vulnerabilidade de adulteração do Visual Studio Há uma vulnerabilidade de adulteração quando as Ferramentas Python para Visual Studio criam a pasta python27. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.



Ícone das Notas de Versão Visual Studio 2019 versão 16.7.7

lançado em 27 de outubro de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.7


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.6

lançado em 13 de outubro de 2020

Nesta versão do Visual Studio 2019 versão 16.7.6


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.5

lançado em 29 de setembro de 2020

Nesta versão do Visual Studio 2019 versão 16.7.5


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.4

lançado em 21 de setembro de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.4

  • Será adicionado um suporte para Xcode 12.0 GM.
  • Será adicionado um suporte para configurar uma Cor definida como Cor de Destaque no editor Info.plist.

Ícone das Notas de Versão Visual Studio 2019 versão 16.7.3

lançada em 8 de setembro de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.3

Aviso de Consultoria de Segurança

CVE-2020-1130 Vulnerabilidade de elevação de privilégio do Coletor Standard do Hub de Diagnóstico Existe uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.

CVE-2020-1133 Vulnerabilidade de elevação de privilégio do Coletor Standard do Hub de Diagnóstico Existe uma vulnerabilidade de elevação de privilégio quando o Coletor Padrão do Hub de Diagnóstico manipula incorretamente as operações de dados. Um invasor que explorasse com êxito essa vulnerabilidade poderia executar processos em um contexto de privilégios elevados.

CVE-2020-16856Vulnerabilidade de Execução de Código Remoto do Visual Studio Existe uma vulnerabilidade de execução remota de código no Visual Studio quando ele manipula incorretamente objetos na memória. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código arbitrário no contexto do usuário atual.

CVE-2020-16874Vulnerabilidade de Execução de Código Remoto do Visual Studio Existe uma vulnerabilidade de execução remota de código no Visual Studio quando ele manipula incorretamente objetos na memória. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código arbitrário no contexto do usuário atual.

CVE-2020-1045 Vulnerabilidade de bypass de recurso de segurança do Microsoft ASP.NET Existe uma vulnerabilidade de bypass de recurso de segurança na maneira como o Microsoft ASP.NET Core analisa nomes de cookies codificados. O analisador de cookies do ASP.NET Core decodifica cadeias de caracteres inteiras de cookies que poderão permitir que um invasor mal-intencionado defina um segundo cookie usando o nome que está sendo codificado por porcentagem.

Problemas adicionais corrigidos nesta versão

  • Corrigida uma falha do compilador em instruções switch ou expressões switch que usam correspondência de padrões.
  • Restaurado o fluxo de trabalho "Parar depuração (Shift + F5)" no teste de unidade pelo encerramento da execução de teste.
  • Impedir que o VS falhe ao alternar a configuração do projeto quando o designer .NET Core WinForms tiver alterações não salvas.
  • As versões sem suporte do .NET Core não serão mais reinstaladas durante um reparo ou upgrade se tiverem sido removidas fora da instalação do VS.
  • Corrigido um problema em que as dependências externas não eram pesquisadas com precisão na opção Localizar nos Arquivos.
  • Reintroduzido o botão "Confirmar..." no submenu Git do menu de contexto de Gerenciador de Soluções.
  • Corrigido um bug que fazia com que o rótulo Observações de Check-In do TFVC ficasse invisível.
  • Corrigida a falha ao usar o designer WinForms no csproj de estilo SDK com várias estruturas de destino.
  • Corrigido o problema em que <d:Style.DataContext> relatava um erro de marcação inválido.

Principais problemas do Visual Studio 2019 versão 16.7.3 corrigidos pela Developer Community


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.2

lançado em 18 de agosto de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.2

Principais problemas do Visual Studio 2019 versão 16.7.2 corrigidos pela Developer Community


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.1

lançado em 11 de agosto de 2020

Neste lançamento do Visual Studio 2019 versão 16.7.1

Principais problemas do Visual Studio 2019 versão 16.7.1 corrigidos pela Developer Community


Ícone das Notas de Versão Visual Studio 2019 versão 16.7.0

lançado em 5 de agosto de 2020

Nesta versão do Visual Studio 2019 versão 16.7.0

C++

  • Nosso suporte remoto ao C++ agora é compatível com uma maior variedade de distribuições e shells do Linux, incluindo sh, csh, bash, tsch, ksh, zsh e dash. Você pode substituir a escolha de um shell para uma conexão remota modificando a nova propriedade "shell" por meio de ConnectionManager.exe. Esse suporte foi testado com projetos do Linux baseados no MSBuild e projetos CMake visando um sistema Linux remoto ou WSL.
  • Agora você pode usar o Ninja (um sistema de build que avalia builds incrementais muito rapidamente) para aprimorar tempos de build incrementais para projetos do Linux baseados em MSBuild. Você pode aceitar esse recurso definindo "Habilitar Build Incremental" como "Com o Ninja" na Página de Propriedades Gerais. O Ninja (ninja-build) precisa ser instalado em seu sistema Linux remoto ou WSL.
  • Novos recursos de biblioteca padrão do C++20 foram implementados. Veja o Log de mudanças de STL no GitHub para uma lista detalhada.
  • Agora você pode editar e definir conexões SSH remotas padrão no Gerenciador de Conexões. Isso significa que você pode editar uma conexão remota existente (por exemplo, se seu endereço IP foi alterado) e definir conexões padrão para serem consumidas em CMakeSettings.json e launch.vs.json. As conexões SSH remotas permitem que você compile e depure projetos C++ em um sistema Linux remoto diretamente do Visual Studio.
Editar conexões remotas no Gerenciador de Conexões
Editar conexões remotas no Gerenciador de Conexões
  • Suporte aprimorado do IntelliSense para Clang no Windows (clang-cl) no Visual Studio. O caminho de inclusão do Clang agora inclui as bibliotecas do Clang. Aprimoramos a exibição de rabiscos no editor ao usar a biblioteca padrão e adicionamos suporte para C++2a no modo de Clang.
  • agora você pode testar os erros de código subjacentes e ver as correções rápidas mais sugeridas em projetos C++. Habilite esse recurso em Ferramentas > Opções > Editor de Texto > C/C++ > Experimental > Definir "Desabilitar o Linter de Código Experimental" como falso. Saiba mais no Blog da Equipe do C++.
Linter de código do IntelliSense
Linter de código do IntelliSense
  • Adicionamos quatro novas regras de análise de código para incorporar recursos de segurança adicionais em C++ : C26817, C26818, C26819 e C26820.
  • Adicionamos suporte de primeira classe para depurar projetos CMake em sistemas remotos com gdbserver.
  • Encontre erros de corrupção de memória facilmente com uma implementação experimental do AddressSanitizer para C++ no Visual Studio, agora disponível para projetos nativos x64. Agora, também damos suporte ao uso de runtimes de depuração (/MTd,/MDd,/LDd).
  • O IntelliSense agora tem suporte básico para conceitos, inicializadores designados e vários outros recursos do C++20.
  • Os arquivos .ixx e .cppm agora são reconhecidos como C++ e serão tratados como tal pelo realce de sintaxe e pelo IntelliSense.

Definir playlists dinamicamente

Agora você pode definir playlists dinamicamente com base no projeto, na classe ou no namespace. Isso significa que você pode configurar uma playlist para incluir tudo em um determinado projeto/classe/namespace; qualquer teste novo adicionado a esse grupo será incluído automaticamente em sua playlist!

  • Crie uma playlist clicando com o botão direito do mouse em um projeto, namespace ou agrupamento de classes no Gerenciador de Testes.
Gerenciador de testes: criar uma lista de reprodução
Gerenciador de testes: criar uma lista de reprodução
  • Edite quais grupos estão incluídos na playlist clicando no botão editar na barra de ferramentas. As caixas de seleção serão exibidas. Edite os grupos conforme desejado.
Gerenciador de testes: editar uma lista de reprodução
Gerenciador de testes: editar uma lista de reprodução
  • Em vez de ser uma lista estática de testes, essas playlists são atualizadas dinamicamente com base em regras. Se deseja entender melhor quais regras estão gerando sua playlist dinâmica, salve o arquivo de playlist em disco com o botão salvar e exiba as regras geradas no xml.
Conjunto de regras dinâmicas do arquivo PlayList
Conjunto de regras dinâmicas do arquivo PlayList
  • Você pode continuar incluindo/excluindo testes individuais e a playlist poderá atualizar as regras dinâmicas dela ou voltar a acompanhar os testes como uma lista estática. Você pode usar características para definir um grupo dinâmico editando o arquivo xml de playlist diretamente.

Produtividade do Git

Alterne a versão prévia do recurso na 'Nova experiência do usuário do Git' em Ferramentas | Opções | Ambiente para usar essa experiência.

  • Criar um repositório Git começando de qualquer pasta ou de uma pasta totalmente nova
  • Salvar e fechar uma pasta ou solução aberta antes de iniciar uma nova operação de clonagem
  • Exibir erros de mensagem de confirmação ou de stash claramente na caixa de texto de confirmação
  • Ver e gerenciar Git branches no modo de exibição de árvore em uma nova janela do repositório Git
  • Alternar entre o grafo de histórico de cada branch na janela do Repositório Git e interagir com ele
  • Exibir confirmações de saída e de entrada na janela do Repositório Git
  • Blog da equipe de produtividade do Git com mais detalhes sobre os recursos recentes
Gerenciar branches e exibir o histórico em uma janela focalizada do Repositório Git
Gerenciar branches e exibir o histórico em uma janela focalizada do Repositório Git

Resolver conflitos de mesclagem com um editor de mesclagem focado no Git usando:

  • Uma barra de informações em arquivos que contêm conflitos de mesclagem que solicitam que você abra o editor de mesclagem
  • Quanto mais títulos informativos e legendas, menos desordem no editor de mesclagem
  • Comparações em conflitos que alinham linhas correspondentes, mostram diferenças no nível da palavra e exibem um espaço em branco visível quando é a única diferença.
  • Mesclagens bidirecionais para adição de nível de arquivo/conflitos de adição
  • A capacidade de resolver todos os conflitos de um lado ou outro com um único clique
  • Uma alternância para se concentrar apenas em conflitos, ignorando diferenças não conflitantes
Nova experiência do editor de mesclagem
Resolver conflitos de mesclagem com o editor de mesclagem

JavaScript/TypeScript

  • As implementações de Conclusão e Informações Rápidas foram atualizadas para melhorar o suporte a cenários LiveShare.

Local Process with Kubernetes

Processo Local com o Kubernetes
Processo Local com o Kubernetes

O Processo Local com o Kubernetes permite que você escreva, teste e depure seu código do .NET na estação de trabalho de desenvolvimento enquanto está conectado ao cluster do Kubernetes com o restante dos aplicativos ou serviços. Ao conectar sua estação de trabalho de desenvolvimento ao cluster, você elimina a necessidade de executar e configurar manualmente os serviços dependentes em seu computador de desenvolvimento. Variáveis de ambiente, cadeias de conexão e volumes do cluster estão disponíveis para o código de microsserviço em execução localmente. Não há necessidade de ativos extras, como Dockerfile ou manifestos do Kubernetes. Execute, depure e teste seu código do .NET como faria normalmente.

Para habilitar o Processo Local com o Kubernetes, acesse Ferramentas > Opções > Ambiente > Versão Prévia dos Recursos e selecione “Habilitar depuração local para serviços de Kubernetes”.

Habilitar Versão Prévia dos Recursos
Habilitar Versão Prévia dos Recursos

Para aplicativos de console do .NET, é necessária uma etapa adicional. Instale o pacote NuGet "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets".

Produtividade do .NET

Agora há um aviso e uma correção de código quando um operador de supressão está presente, mas não tem nenhum efeito. Uma segunda correção de código, que sugere a expressão de negação correta, também está disponível. Coloque o cursor no operador de supressão. Pressione (Ctrl + .) para acionar o menu Ações Rápidas e Refatorações. Em seguida, selecione de um dos seguintes:

  • Para remover completamente o operador, selecione Remover o operador (preservar semântica):
Correção de código para remover o operador de supressão
Correção de código para remover o operador de supressão
  • Para negar a expressão, selecione Negar expressão (alterar a semântica):
Correção de código para negar a expressão
Correção de código para negar a expressão
  • Você também poderá negar a expressão com o novo padrão not de C# 9 se ele estiver disponível em seu projeto:
Correção de código para negar a expressão usando not
Correção de código para negar a expressão usando not

Agora você pode gerar propriedades ao gerar um construtor em um tipo. Coloque o cursor na instância. Pressione (Ctrl + .) para acionar o menu Ações Rápidas e Refatorações. Selecione Gerar o construtor em <QualifiedName> (com propriedades).

Gerar propriedades ao gerar o construtor
Gerar propriedades ao gerar o construtor
  • As informações rápidas agora exibem a ID de diagnóstico junto com um link de ajuda com o qual você pode navegar facilmente para a nossa documentação para saber mais sobre avisos e erros em seu código.
ID de diagnóstico de informações rápidas e link de ajuda
ID de diagnóstico de informações rápidas e link de ajuda
  • Agora há uma ação rápida para adicionar um atributo de exibição do depurador a uma classe. Isso permite que você fixe propriedades dentro do depurador programaticamente em seu código. Coloque o cursor no nome de classe. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Selecione Adicionar atributo “DebuggerDisplay”. Isso adicionará o atributo de exibição do depurador à parte superior da sua classe e gerará um método auto que retorna ToString() que pode ser editado para retornar o valor da propriedade que você deseja fixar no depurador.
Adicionar Atributo de Exibição do Depurador
Adicionar Atributo de Exibição do Depurador
  • Agora há uma correção de código para atribuições acidentais ou comparações com a mesma variável. Coloque o cursor no aviso. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Para atribuições acidentais, selecione Atribuir a <QualifiedName>.value. Para comparações acidentais, selecione Comparar com <QualifiedName>.value.
Correção de código de atribuições acidentais
Correção de código de atribuições acidentais
Correção de código de comparações acidentais
Correção de código de comparações acidentais
  • Agora você pode gerar operadores de comparação para tipos que implementam IComparable. Coloque seu cursor dentro da classe ou em IComparable. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Selecione Gerar operadores de comparação. Uma placa de texto clichê será gerada para você com os operadores de comparação.
Gerar Operadores de Comparação
Gerar Operadores de Comparação
  • Agora você pode gerar operadores IEquatable ao gerar .Equals para structs. Já tínhamos uma refatoração para Gerar Equals e GetHashCode para tipos de valor. Agora, com structs, adicionaremos automaticamente o IEquatable, assim como os operadores equals e not equals para você. Coloque o cursor dentro do struct. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Selecione Gerar Equals(object).
Gerar Operadores IEquatable
Gerar Operadores IEquatable
  • Agora você pode criar e atribuir propriedades ou campos para todos os parâmetros de construtor não utilizados. Já tínhamos uma ação rápida que permitia fazer isso em um parâmetro individual, mas agora você pode fazer isso para todos os parâmetros não utilizados de uma só vez. Coloque o cursor em qualquer um dos parâmetros restantes. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Para criar e inicializar propriedades, selecione Criar e atribuir os restantes como propriedades. Para criar e inicializar campos, selecione Criar e atribuir os restantes como campos.
Criar e Atribuir os Campos Restantes
Criar e Atribuir os Campos Restantes
Criar e Atribuir as Propriedades Restantes
Criar e Atribuir as Propriedades Restantes
  • Agora há uma conclusão do IntelliSense em literais de cadeia de caracteres DateTime e TimeSpan. Coloque o cursor dentro do literal de cadeia de caracteres DateTime ou TimeSpan e pressione (Ctrl+Espaço). Em seguida, você verá as opções de conclusão e uma explicação sobre o que significa cada caractere. Serão fornecidos o formato de data e hora e um exemplo.
Conclusão do IntelliSense em DateTime e TimeSpan
Conclusão do IntelliSense em literais de cadeia de caracteres DateTime e TimeSpan
  • Agora você pode adicionar um parâmetro dentro da caixa de diálogo Alterar Assinatura. Coloque o cursor dentro da assinatura do método. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações. Selecione Alterar assinatura. A caixa de diálogo a seguir será aberta, em que você pode selecionar Adicionar para adicionar um parâmetro. Depois de selecionar Adicionar, a nova caixa de diálogo Adicionar Parâmetro será aberta. A caixa de diálogo Adicionar Parâmetro permite que você adicione um nome de tipo e um nome de parâmetro. Você pode optar por tornar o parâmetro necessário ou opcional com um valor padrão. Em seguida, você pode adicionar um valor no site de chamada e escolher um argumento nomeado para esse valor ou pode introduzir uma variável TODO. A variável TODO coloca um TODO em seu código para que você possa acessar cada erro e percorrer cada site de chamada de maneira independente e decidir o que passar. Para parâmetros opcionais, você tem a opção de omitir o site de chamada completamente.
Caixa de diálogo Alterar Assinatura
Caixa de diálogo Alterar Assinatura
Caixa de diálogo Adicionar Parâmetro
Caixa de diálogo Adicionar Parâmetro
  • Os autores do analisador agora podem usar CompletionProviders para conclusões do IntelliSense ao enviar seus analisadores com NuGet. Antes, os autores da biblioteca precisariam criar um VSIX separado porque CompletionProviders só estava disponível em VSIX. Agora, os autores da biblioteca podem implementar as conclusões do IntelliSense no pacote NuGet em que estão os analisadores; eles não precisam fazer isso separadamente. Os provedores de conclusão implementados em pacotes NuGet também fornecerão sugestões específicas para projetos individuais e trabalharão automaticamente em cada IDE que dá suporte ao recurso.

Razor

Experimente o novo editor do Razor com base em LSP (Language Server Protocol) com todos os arquivos do Razor (.cshtml/.razor) selecionando a versão prévia do recurso Habilitar o editor do Razor experimental.

Gerenciador de Testes

Executar/Depurar Todos os Testes na Exibição foram adicionados ao Gerenciador de Testes. Esses comandos substituem o local em que os comandos Executar Todos os Testes e Depurar Todos os Testes apareciam no Gerenciador de Testes. Essa alteração esclarece que esses comandos obedecem aos filtros do Gerenciador de Testes para que apenas os testes visíveis na janela sejam executados. Isso inclui tanto os filtros de coluna quanto os filtros de caixa de pesquisa.

Comandos Executar/Depurar Todos os Testes na Exibição do Gerenciador de Testes
Comandos Executar/Depurar Todos os Testes na Exibição do Gerenciador de Testes

Os comandos Executar/Depurar Todos Globalmente agora serão exibidos apenas no menu de teste de nível superior. Eles não estão mais incluídos na barra de ferramentas ou no menu de contexto do Gerenciador de Testes de nenhuma exibição da janela de teste. Quando disparado do Gerenciador de Testes, o comando Analisar a Cobertura de Código para Todos os Testes agora se aplica às exibições da janela de teste também.

Teclas de atalho:

  • CTRL R, A – Executar Todos os Testes – O comando global sempre executa todos os testes
  • CTRL R, V – Executar Todos os Testes na Exibição – Somente um comando válido quando uma janela de teste (Gerenciador de Testes, Playlist, Janela do Live Unit Testing) está ativa
  • CTRL R, CTRL A – Depurar Todos os Testes – O comando global sempre depura todos os testes
  • Ctrl R, Ctrl V – Depurar Todos os Testes na Exibição – Somente um comando válido quando uma janela de teste (Gerenciador de Testes, Playlist, Janela do Live Unit Testing) está ativa

Depurador

Exibir objetos COM gerenciados por meio de ponteiros nativos

Esse recurso decodifica automaticamente objetos COM gerenciados referenciados por ponteiros nativos, permitindo que você inspecione completamente os valores na janela Locais. Encontre mais detalhes no blog do Visual Studio aqui.

Criador de perfil

Nova Ferramenta de Contadores de Desempenho do .NET

Ferramenta de Contadores de Desempenho do .NET
Ferramenta de Contadores de Desempenho do .NET

Visualize contadores dotnet diretamente de dentro do Profiler do Visual Studio usando a Ferramenta de Contadores de Desempenho do .NET. Para experimentar a ferramenta, acesse Depurar -> Criador de Perfil de Desempenho -> Marca de Seleção da Ferramenta de Contadores de Desempenho do .NET.

Xamarin

  • Corretores de código foram introduzidos para os tipos mais comuns de problemas enfrentados por usuários com arquivos de layout do Android.
  • A experiência de seleção de modelos do Xamarin.Forms agora tem uma aparência nova e mais ilustrativa, e os modelos de submenu e com guias agora utilizam o Shell. Leia mais sobre o Shell aqui. Se, por alguma razão, você não quiser usar o Shell, use o modelo Em branco.
Nova experiência de seleção de modelo do Xamarin.Forms
Escolher um modelo do Xamarin.Forms

Ferramentas XAML (WPF, UWP e Xamarin.Forms)

Recarga Dinâmica de XAML:

  • Aprimoramentos da Barra de ferramentas no aplicativo: Aperfeiçoamos ainda mais a experiência da barra de ferramentas no aplicativo que faz parte do fluxo de trabalho de ferramentas de Recarga Dinâmica de XAML para WPF e UWP. As alterações incluem uma barra de ferramentas mais curta, para que ela não cubra mais o aplicativo em execução, bem como uma alteração no mecanismo de recolhimento que, quando clicado, agora recolhe primeiro o texto de Recarga Dinâmica de XAML e, depois, recolhe a barra totalmente no segundo clique.

Designer XAML:

  • Suporte expandido de dados de tempo de design para WPF e UWP: Nesta versão, estamos introduzindo um novo recurso de dados de tempo de design para desenvolvedores do WPF .NET Core e da UWP. A nova funcionalidade estenderá, por meio do uso do prefixo d:, a lista atual de propriedades de tempo de design acessíveis. Esse recurso é familiar aos desenvolvedores do Xamarin.Forms, pois ele disponibiliza a mesma abordagem de usar um prefixo "d:" para indicar uma propriedade que só deve ser renderizada no tempo de design e nunca é compilada no aplicativo em execução, tornando-a muito segura para usar a validação de interface do usuário de tempo de design. Nesta versão, damos suporte a todos os controles prontos para uso para WPF e UWP e planejamos dar suporte a controles personalizados e de terceiros em versões futuras.
  • Botão de atualização Designer XAML: Adicionamos um botão Atualizar ao designer XAML. Esse novo ícone pode ser encontrado na área de ícones inferior esquerda, próximo ao indicador de nível de zoom. Essa ação de atualização faz a redefinição equivalente de fechar a exibição do designer e abri-la novamente, para as raras situações em que isso é necessário para resolver um problema de renderização. Esse recurso está disponível para desenvolvedores do WPF .NET Core e da UWP.

Editor de Código XAML:

  • Visualizador de Cores: Aprimoramos ainda mais nosso novo visualizador de cores no editor de código XAML para projetos do WPF .NET Core, WPF .NET Framework e Xamarin.Forms. Nesta versão, adicionamos suporte para visualização de cores provenientes de recursos que, anteriormente, não eram compatíveis com a última versão prévia.
Visualizações de cores embutidas no editor de código XAML
Visualizações de cores embutidas no editor de código XAML

Mostrar itens da caixa de ferramentas de um pacote NuGet sem ter uma referência de pacote

Muitos autores da biblioteca de controle querem que os controles deles sejam vistos na caixa de ferramentas mesmo que o projeto atual ainda não tenha referenciado a biblioteca, pois isso ajuda na capacidade de descoberta. Os SDKs do .NET Framework do WPF conseguiram fazer isso historicamente usando entradas do Registro, mas isso não é compatível com o .NET Core. Para o .NET Core do WPF, a caixa de ferramentas agora pode ser preenchida com controles de arquivos VisualStudioToolsManifest.xml encontrados dentro de pacotes NuGet do .NET Core do WPF em pastas de fallback do NuGet. Para obter mais detalhes, confira a documentação no repositório GitHub de Extensibilidade do Designer XAML.

Windows Forms

Designer de Formulários do Windows para .NET Core

Agora o Designer de Formulários do Windows está disponível para projetos do .NET Core. Para habilitar o designer no Visual Studio, acesse Ferramentas > Opções > Ambiente > Versões Prévias de Recursos e selecione a opção Usar o Designer do Windows Forms para aplicativos .NET Core.

Nesta versão, agora há suporte para os seguintes controles juntamente com outros aprimoramentos:

  • UserControl e infraestrutura de controles personalizados
  • TableLayoutPanel
  • Conceitos básicos de suporte de controles de terceiros
  • Conceitos básicos de suporte à associação de dados
  • Aprimoramentos na interação do designer com o TableLayoutPanel

Correções de bug

Principais problemas corrigidos no Visual Studio 2019 versão 16.7.0

  • Corrigida a falha de instalação do componente do provedor de WMI.
  • Corrigido um problema em que os usuários não podiam ver o andamento da execução de teste clicando no botão esquerdo na parte inferior da barra.
  • Aprimorado o desempenho de descobrir os planos de cobrança disponíveis do Espaço de Código do Visual Studio.
  • Ao criar um Espaço de Código do Visual Studio, alteramos o tempo padrão para suspensão de 30 minutos para 3 horas.
  • Corrigido o bug em que a janela Alterações do Git informa aos usuários que eles têm confirmações de entrada/saída, quando, na verdade, não têm nenhuma.
  • Estabilidade aprimorada das Ferramentas de Diagnóstico e do Criador de Perfil de Desempenho.
  • Resolvido um problema em que a extensão Azure Sphere do Visual Studio não era atualizada automaticamente devido a uma incompatibilidade de versão secundária. Com a correção, o Azure Sphere poderá ser atualizado automaticamente quando o atualizador automático do VSIX for executado.

Da Developer Community


Problemas conhecidos

Veja todos os problemas em aberto e as soluções alternativas disponíveis no Visual Studio 2019, seguindo o link abaixo.

Comentários e sugestões

Adoraríamos ouvir o que você tem para nos dizer! Em caso de problemas, informe-nos por meio da opção Relatar um Problema no canto superior direito do Instalador ou do próprio IDE do Visual Studio. O ícone Ícone de Comentários está localizado no canto superior direito. Você pode fazer uma sugestão de produto ou acompanhar os problemas na Comunidade de Desenvolvedores do Visual Studio, em que você pode fazer perguntas, encontrar respostas e propor novos recursos. Você também pode obter ajuda gratuita com a instalação por meio de nosso suporte via chat ao vivo.


Blogs

Aproveite as informações e recomendações disponíveis no site Blogs de Ferramentas de Desenvolvedor para ficar em dia com as novas versões e conferir postagens detalhadas sobre uma grande variedade de recursos.


Histórico de notas sobre a versão do Visual Studio 2019

Para obter mais informações sobre versões anteriores do Visual Studio 2019, consulte a página Histórico de notas sobre a versão do Visual Studio 2019.


Início da página