Visual Studio IconNotas de versão do Visual Studio 2017 versão 15.0


Comunidade de Desenvolvedores | Requisitos do sistema | Compatibilidade | Código distribuível | Termos de licença | Blogs | Problemas conhecidos



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.



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 Feedback Icon está localizado no canto superior direito. Você pode acompanhar os problemas na Comunidade de Desenvolvedores do Visual Studio, em que você pode fazer perguntas e encontrar respostas. Você pode obter ajuda gratuita com a instalação por meio de nosso suporte via chat ao vivo.

Período de suporte

Os usuários Enterprise e Professional do Visual Studio 2017 versão 15.0 terão suporte e receberão correções de vulnerabilidades de segurança até janeiro de 2020. Esse período foi determinado pelo fato de que, em outubro de 2018, o Visual Studio 2017 versão 15.9 foi designado como a linha de base de serviço final do produto Visual Studio 2017. Você pode adquirir a versão mais recente e segura do Visual Studio 2017 na seção de downloads de my.visualstudio.com.  Para obter mais informações sobre as linhas de base com suporte do Visual Studio, confira a política de suporte do Visual Studio 2017

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 2017.


Histórico de versões


Release Notes IconVisual Studio 2017 versão 15.0 (26228.102)

lançado em 11 de dezembro de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-1349 Vulnerabilidade de execução remota do Git para Visual Studio devido a restrições incertas em nomes de submódulo

Existe uma vulnerabilidade de execução de código remota quando o Git é executado em colisões de nomes de submódulo para diretórios de submódulo irmãos. Um invasor que explorou com êxito essa vulnerabilidade poderia executar o código remotamente no computador de destino. A atualização de segurança aborda a vulnerabilidade usando uma nova versão do Git para Windows que exige que o diretório do clone dos submódulos esteja vazio.

CVE-2019-1350 Vulnerabilidade de execução remota do Git para Visual Studio devido à citação incorreta de argumentos de linha de comando

Existe uma vulnerabilidade de execução de código remota quando o Git interpreta argumentos de linha de comando com determinada citação durante um clone recursivo em conjunto com URLs SSH. Um invasor que explorou com êxito essa vulnerabilidade poderia executar o código remotamente no computador de destino. A atualização de segurança aborda a vulnerabilidade usando uma nova versão do Git para Windows que repara o problema.

CVE-2019-1351 Vulnerabilidade de substituição de arquivo arbitrário do Git para Visual Studio devido ao uso de nomes de unidade não alfabéticos durante a clonagem

Existe uma vulnerabilidade de substituição de arquivo arbitrário no Git quando nomes de unidade não alfabéticos ignoram verificações de segurança no git clone. Um invasor que explorou com êxito essa vulnerabilidade poderia gravar em arquivos arbitrários no computador de destino. A atualização de segurança aborda a vulnerabilidade usando uma nova versão do Git para Windows que repara o problema.

CVE-2019-1352 Vulnerabilidade de execução remota do Git para Visual Studio devido ao não reconhecimento de fluxos de dados alternativos NTFS

Existe uma vulnerabilidade de execução de código remota no Git ao clonar e gravar no diretório .git/ por meio de fluxos de dados NTFS alternativos. Um invasor que explorou com êxito essa vulnerabilidade poderia executar o código remotamente no computador de destino. A atualização de segurança aborda a vulnerabilidade usando uma nova versão do Git para Windows que deve ser informada de fluxos de dados alternativos NTFS.

CVE-2019-1354 Vulnerabilidade de substituição de arquivo arbitrário do Git para Visual Studio devido à não recusa de gravar arquivos rastreados que contêm barras invertidas

Existe uma vulnerabilidade de substituição de arquivo arbitrário no Git quando as entradas de árvore com barras invertidas e symlinks mal-intencionados podem ser interrompidos na árvore de trabalho. Um invasor que explorou com êxito essa vulnerabilidade poderia gravar em arquivos arbitrários no computador de destino. A atualização de segurança resolve a vulnerabilidade usando uma nova versão do Git para Windows que não permite esse uso de barras invertidas.

CVE-2019-1387 Vulnerabilidade de execução remota do Git para Visual Studio devido à validação incerta em nomes de submódulo em clones recursivos

Existe uma vulnerabilidade de execução de código remota no Git ao clonar recursivamente com submódulos. Um invasor que explorou com êxito essa vulnerabilidade poderia executar o código remotamente no computador de destino. A atualização de segurança aborda a vulnerabilidade usando uma nova versão do Git para Windows que reforça a validação de nomes de submódulo.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.98)

lançado em 10 de setembro de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-1232 Vulnerabilidade de Elevação de Privilégio do Serviço Coletor Padrão do Hub de Diagnóstico

Há uma vulnerabilidade de elevação de privilégio quando o Serviço Coletor Padrão do Hub de Diagnóstico representa incorretamente determinadas operações de arquivo. Um invasor que explore com êxito essa vulnerabilidade pode obter privilégios elevados. Um invasor com acesso sem privilégios a um sistema vulnerável poderia explorar essa vulnerabilidade. A atualização de segurança corrige a vulnerabilidade garantindo que o Serviço Coletor Padrão do Hub de Diagnóstico represente corretamente as operações de arquivo.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.96)

lançado em 13 de agosto de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-1211 Vulnerabilidade de Elevação de Privilégio do Git para Visual Studio

Existe uma vulnerabilidade de elevação de privilégio no Git para Visual Studio quando ele analisa incorretamente os arquivos de configuração. Um invasor que explorasse com êxito a vulnerabilidade poderia executar código no contexto de outro usuário local. Para explorar a vulnerabilidade, um invasor autenticado precisaria modificar os arquivos de configuração do Git em um sistema antes de uma instalação completa do aplicativo. O invasor então precisaria convencer outro usuário no sistema a executar comandos específicos do Git. A atualização resolve o problema alterando as permissões necessárias para editar os arquivos de configuração.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.92)

lançado em 9 de julho de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-1113 A desserialização de XOML do WorkflowDesigner permite a execução de código

Um arquivo XOML referenciando determinados tipos poderia fazer com que o código aleatório fosse executado quando o arquivo XOML fosse aberto no Visual Studio. Agora há uma restrição para quais tipos têm permissão para serem usados em arquivos XOML. Se um arquivo XOML contendo um dos tipos recentemente não autorizados for aberto, será exibida uma mensagem explicando que o tipo é não autorizado.

Para obter mais informações, confira o artigo de XOML.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.88)

lançado em 11 de junho de 2019

Problema corrigido nesta versão


Release Notes IconVisual Studio 2017 versão 15.0 (26228.84)

lançada em 14 de maio de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-0727 Vulnerabilidade de Elevação de Privilégio do Serviço Coletor Padrão do Hub de Diagnóstico

Há uma vulnerabilidade de elevação de privilégio quando o Serviço Coletor Padrão do Hub de Diagnóstico executa incorretamente determinadas operações de arquivo. Um invasor que explorar com êxito essa vulnerabilidade poderá excluir esses arquivos em localizações arbitrárias. Para explorar essa vulnerabilidade, um invasor precisaria de acesso sem privilégios a um sistema vulnerável. A atualização de segurança corrige a vulnerabilidade protegendo as localizações nas quais o Coletor Padrão do Hub de Diagnóstico executa as operações de arquivo.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.76)

lançado em 12 de março de 2019

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-9197 Vulnerabilidade de execução de código remoto do Editor do Unity

Uma vulnerabilidade de execução remota de código existe no Editor do Unity, um software de terceiros que o Visual Studio oferece para instalação como parte do Desenvolvimento de Jogos com carga de trabalho do Unity. Se você instalou o Unity no Visual Studio, não deixe de atualizar a versão do Unity que você está usando para uma versão que resolva a vulnerabilidade, conforme descrito no CVE. O Instalador do Visual Studio foi atualizado para oferecer para instalar uma versão de Editor do Unity que resolve a vulnerabilidade.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.73)

lançado em 12 de fevereiro de 2019

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2019-0613 A desserialização de XOML do WorkflowDesigner permite a execução de código

Um arquivo XOML referenciando determinados tipos poderia fazer com que o código aleatório fosse executado quando o arquivo XOML fosse aberto no Visual Studio. Agora há uma restrição para quais tipos têm permissão para serem usados em arquivos XOML. Se um arquivo XOML contendo um dos tipos recentemente não autorizados for aberto, será exibida uma mensagem explicando que o tipo é não autorizado.

Saiba mais em https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml.

CVE-2019-0657 Vulnerabilidade a spoofing do .NET Framework e do Visual Studio

Atualizações do .NET Core foram lançadas hoje e estão incluídas nesta atualização do Visual Studio. Esta versão corrige problemas de segurança e outros problemas importantes. Veja mais detalhes nas notas sobre a versão do .NET Core.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.64)

lançado em 11 de dezembro de 2018

Problemas corrigidos nesta versão

  • Os usuários do Azure DevOps com espaços no nome do projeto ou nos nomes de repositórios encontrarão erros ao clonar ou publicar no Team Explorer.

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8599 Vulnerabilidade de Elevação de Privilégio do Serviço Coletor Padrão do Hub de Diagnóstico

Há uma vulnerabilidade de elevação de privilégio quando o Serviço Coletor Padrão do Hub de Diagnóstico manipula incorretamente determinadas operações de arquivo. Um invasor que explore com êxito essa vulnerabilidade pode obter privilégios elevados. Para explorar essa vulnerabilidade, um invasor precisaria de acesso sem privilégios a um sistema vulnerável. A atualização de segurança corrige a vulnerabilidade garantindo que os Serviços Coletores Padrão do Hub de Diagnóstico representem corretamente as operações de arquivo.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.57)

lançado em 10 de outubro de 2018

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8292 Vulnerabilidade da divulgação de informações confidenciais do .NET Core

Existe uma vulnerabilidade de bypass de recurso de segurança no .NET Core quando as informações de autenticação HTTP são expostas acidentalmente em uma solicitação de saída que encontra um redirecionamento HTTP. Um invasor que explorasse com êxito essa vulnerabilidade poderia usar as informações para comprometer ainda mais o aplicativo Web. A atualização de segurança resolve a vulnerabilidade corrigindo como os aplicativos .NET Core manipulam os redirecionamentos de HTTP.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.52)

lançado em 28 de agosto de 2018

Problemas corrigidos nesta versão


Release Notes IconVisual Studio 2017 versão 15.0 (26228.49)

lançado em 14 de agosto de 2018

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0952 Vulnerabilidade de Elevação de Privilégio do Coletor Padrão do Hub de Diagnóstico

Há uma vulnerabilidade de elevação de privilégio em um serviço do Visual Studio que pode levar a privilégios do sistema por um usuário não administrador durante a gravação de arquivos. Um invasor que aproveitou essa vulnerabilidade pôde gravar arquivos como sistema tendo apenas o acesso no nível de usuário. Esta atualização de segurança resolve esse problema pela representação do usuário atual para validar o acesso ao local do arquivo.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.46)

lançado em 2 de agosto de 2018

Resumo das atualizações nesta versão

  • Agora, esta versão instala o Java™ Development Kit 8, Atualização 181 (JDK versão 8u181).

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8356 Vulnerabilidade de bypass da funcionalidade de segurança do .NET Core

A Microsoft está ciente de uma vulnerabilidade de bypass de recurso que ocorre quando o .NET Core não valida certificados da maneira correta. Se um invasor conseguir explorar essa vulnerabilidade, ele poderia apresentar um certificado expirado quando solicitado. A atualização resolve a vulnerabilidade corrigindo a maneira como o .NET Core manipula a validação de certificados.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.43)

lançado em 10 de julho de 2018

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8172 Vulnerabilidade de execução de código remoto do Visual Studio

Uma vulnerabilidade de execução de código remoto que pode levar à exploração do computador de um usuário, abrindo um arquivo de recurso ou projeto especialmente criado. A atualização de segurança resolve a vulnerabilidade corrigindo o modo como o Visual Studio verifica a marcação de origem de um arquivo.

CVE-2018-8260 Vulnerabilidade de execução de código remoto do .NET Framework

Existe uma vulnerabilidade de execução de código remoto no software .NET que pode levar à exploração do computador de um usuário, permitindo que os invasores executem código arbitrário no contexto do usuário atual. A atualização de segurança resolve a vulnerabilidade corrigindo o modo como o .NET verifica a marcação de origem de um arquivo.

CVE-2018-8232 Vulnerabilidade de falsificação do .NET Microsoft Macro Assembler

Vulnerabilidade para falsificação relacionada a validação de código incorreta pelo Microsoft Macro Assembler. A atualização de segurança resolve a vulnerabilidade, garantindo que o Microsoft Macro Assembler valide a lógica de código adequadamente.

CVE-2018-8171 Vulnerabilidade de bypass da funcionalidade de segurança do ASP.NET Core

Uma vulnerabilidade de bypass de recurso de segurança do ASP.NET Core existe quando o número de tentativas de logon incorretas não é validado. Isso pode levar a um invasor a tentar um número infinito de tentativas de autenticação. A atualização resolve a vulnerabilidade, validando o número de tentativas de logon incorretas.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.37)

lançado em 31 de maio de 2018

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-11235 Consultoria de Segurança da Microsoft para vulnerabilidade de segurança do Git

Corrigimos uma vulnerabilidade de segurança no Git que foi divulgada pela comunidade do Git. A vulnerabilidade pode levar à execução de código arbitrário quando um usuário clona um repositório mal-intencionado.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.31)

lançado em 26 de abril de 2018

Resumo das atualizações nesta versão

  • Atualizamos para o Java™ Development Kit 8, Atualização 172 (JDK versão 8u172).

Release Notes IconVisual Studio 2017 versão 15.0 (26228.30)

lançado em 10 de abril de 2018

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-1037 Avisos de Segurança da Microsoft para vulnerabilidade de divulgação de informações confidenciais do Microsoft Visual Studio

Uma vulnerabilidade de divulgação de informações confidenciais ocorre quando o Visual Studio divulga de forma inapropriada conteúdos limitados de memória não inicializada ao compilar arquivos PDB (banco de dados de programa). Um invasor que tenha tirado proveito dessa divulgação de informações confidenciais poderia visualizar uma memória não inicializada da instância do Visual Studio usada para compilar o arquivo PDB.

Para tirar proveito desta vulnerabilidade, um invasor precisaria ter acesso a um arquivo PDB infectado criado usando uma versão vulnerável do Visual Studio. Um invasor não teria como forçar um desenvolvedor a produzir essa divulgação de informações confidenciais.

A atualização de segurança resolve a vulnerabilidade, corrigindo como os arquivos PDB são gerados quando um projeto é compilado.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.29)

lançado em 13 de março de 2018

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0875 Avisos de Segurança da Microsoft para .NET Core

A Microsoft está ciente de uma vulnerabilidade de segurança nas versões públicas do .NET Core, na qual um arquivo mal-intencionado ou uma solicitação da Web pode causar um ataque de DoS (negação de serviço).

  • É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.10, 1.1.7 e 2.0.6. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para as versões 1.1.8 ou 2.1.101.

Release Notes IconVisual Studio 2017 versão 15.0 (26228.26)

lançado em 21 de fevereiro de 2018

Resumo das atualizações nesta versão

Team Explorer compatível com TLSv1.2. Atualizamos o Git e os componentes do Gerenciador de Credenciais do Git fornecidos com o Visual Studio. Além disso, atualizamos o componente opcional Git para Windows. Esta atualização permite ao Git conectar-se aos serviços cujo suporte foi preterido para TLSv1 e TLSv1.1 em prol do TLSv1.2.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.23)

lançado em 2 de fevereiro de 2018

Resumo das atualizações nesta versão

  • O compilador MSVC foi atualizado com suporte para a opção /Qspectre, que inserirá automaticamente uma barreira de especulação quando o compilador detectar instâncias da variante 1 do Spectre. Para obter mais informações sobre /Qspectre, consulte o Blog da equipe do Visual C++.
  • O JDK foi aumentado para 8u161 para corrigir erros de download.

Release Notes IconVisual Studio 2017 versão 15.0 (26228.21)

lançado em 9 de janeiro de 2018

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0786 Bypass da funcionalidade de segurança na validação do certificado X509

A Microsoft está publicando este aviso de segurança para fornecer informações sobre uma vulnerabilidade nas versões públicas do .NET Core 1.0, 1.1 e 2.0. Esse comunicado também fornece orientação sobre o que os desenvolvedores podem fazer para atualizar seus aplicativos corretamente. Esse comunicado de segurança também é aplicável ao .NET nativo para UWP.

A Microsoft está ciente de uma vulnerabilidade de segurança nas versões públicas do .NET Core em que um invasor pode apresentar um certificado que é marcado como inválido para um uso específico, mas um componente o usa para essa finalidade. Essa ação ignora a marcação de uso avançado de chave.

A atualização de segurança resolve a vulnerabilidade, garantindo que os componentes do .NET Core validem completamente os certificados. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.9, 1.1.6 e 2.0.5. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.1.4 ou 1.1.7.

CVE-2018-0764 Ataque de Negação de Serviço durante a análise de documentos XML

A Microsoft está publicando este aviso de segurança para fornecer informações sobre uma vulnerabilidade nas versões públicas do .NET Core 1.0, 1.1 e 2.0. Esse comunicado também fornece orientação sobre o que os desenvolvedores podem fazer para atualizar seus aplicativos corretamente.

A Microsoft está ciente de uma vulnerabilidade de negação de serviço em todas as versões públicas do .NET Core devido ao processamento inadequado de documentos XML. Um invasor que explorasse com êxito essa vulnerabilidade poderia causar uma negação de serviço em relação a um aplicativo .NET. Um invasor não autenticado remoto pode explorar essa vulnerabilidade emitindo solicitações especialmente criadas para um aplicativo .NET Core.

A atualização resolve a vulnerabilidade corrigindo como o .NET Core manipula o processamento do documento XML. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.9, 1.1.6 e 2.0.5. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.1.4 ou 1.1.7.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.18)

lançado em 6 de dezembro de 2017

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

A Microsoft liberou os comunicados de segurança do ASP.NET Core. Mais detalhes estão disponíveis nos anúncios correspondentes no repositório do ASP.NET Core. Observe as seguintes informações:

CVE-2017-8700 O bypass do CORS pode habilitar a Divulgação de Informações Confidenciais

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0 e 1.1, em que o CORS (Compartilhamento de Recursos entre Origens) pode ser ignorado, levando à divulgação de informações confidenciais. Os novos projetos criados com ASP.NET Core 1.0 e ASP.NET Core 1.1 agora usarão versões de pacote que incluem a atualização de segurança mencionada acima. Quanto aos projetos existentes, os usuários podem atualizar os pacotes para as versões mais recentes usando o diálogo Gerenciar Pacotes do NuGet.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.17)

lançado em 14 de novembro de 2017

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

A Microsoft liberou os comunicados de segurança do .NET Core e do ASP.NET Core. Mais detalhes estão disponíveis nos anúncios correspondentes nos repositórios do .NET Core e do ASP.NET Core. Observe as seguintes informações:

CVE-2017-8585 Um Certificado Malformado pode causar Ataque de Negação de Serviço

Há uma vulnerabilidade de segurança no .NET Core 1.0, 1.1 e 2.0, em que um certificado malformado ou outros dados formatados em ASN.1 podem levar a um ataque de negação de serviço por meio de um loop infinito no Linux ou no macOS. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.8, 1.1.5 e 2.0.1. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.0.3 ou 1.1.5.

CVE-2017-8700 O bypass do CORS pode habilitar a Divulgação de Informações Confidenciais

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0 e 1.1, em que o CORS (Compartilhamento de Recursos entre Origens) pode ser ignorado, levando à divulgação de informações confidenciais.

CVE-2017-11879 O Redirecionamento Aberto pode causar Elevação de Privilégio

Há uma vulnerabilidade de segurança no ASP.NET Core 2.0, em que ocorre o Redirecionamento Aberto, levando a uma Elevação de Privilégio.

CVE-2017-11770 Vulnerabilidade de Ataque de Negação de Serviço

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0, 1.1 e 2.0, quando o aplicativo é hospedado por meio do Http.Sys do Windows, em que uma solicitação malformada pode levar a um Ataque de Negação de Serviço. Os novos projetos criados com ASP.NET Core 1.0 e ASP.NET Core 1.1 agora usarão versões de pacote que incluem as atualizações de segurança mencionadas acima. Quanto aos projetos existentes, os usuários podem atualizar os pacotes para as versões mais recentes usando o diálogo Gerenciar Pacotes do NuGet.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.16)

lançado em 18 de setembro de 2017

Problemas corrigidos nesta versão


Release Notes IconVisual Studio 2017 versão 15.0 (26228.13)

lançado em 23 de maio de 2017

Problemas corrigidos nesta versão

Os cenários de instalação offline não exigem mais acesso à Internet.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.12)

lançado em 31 de março de 2017

Resumo das atualizações nesta versão

Atualmente damos suporte às ferramentas e APIs Xcode 8.3, iOS 10.3, 3.2, watchOS e tvOS 10.2 na extensão Xamarin.VS para Visual Studio 2017.


Release Notes IconVisual Studio 2017 versão 15.0 (26228.10)

lançado em 28 de março de 2017

Problemas corrigidos nesta versão

Estes são os problemas relatados pelo cliente abordados no build 26228.10:


Release Notes IconVisual Studio 2017 versão 15.0 (26228.09)

lançado em 14 de março de 2017

Problemas corrigidos nesta versão

Esses são os problemas relatados pelo cliente abordados no build 26228.09:


Release Notes IconVisual Studio 2017 versão 15.0 (26228.04)

lançado em 7 de março de 2017

Resumo das atualizações nesta versão

Desenvolva: navegue, escreva e corrija seu código rapidamente

  • A nova experiência de instalação tem requisitos mínimos reduzidos para instalações mais rápidas e personalizáveis e suporte para instalações offline.
  • O IDE do Visual Studio fornece uma ampla gama de melhorias no Visual Studio 2017, incluindo redução nos tempos de inicialização e de carregamento da solução, melhorias na conexão e na identidade, navegação de código melhorada, exibição de pasta aberta e serviços conectados que habilitam conexões entre seu aplicativo e qualquer serviço local ou na nuvem.
  • Não há alterações significativas no Visual C++ entre 2015 e 2017. Melhor nível de conformidade com C++14, suporte CMake, taxa de transferência do build e produtividade no editor.
  • O C# e O Visual Basic estendem o suporte para novos recursos de linguagem C# 7.0 e Visual Basic 15 e apresentam novas refatorações que permitem organizar o código-fonte com uma única ação.
  • Suporte do F# para funcionalidades de linguagem F# 4.1, aprimoramentos no compilador do F# e FSharp.Core e um novo editor com base em workspaces Roslyn.
  • O JavaScript e o TypeScript têm o TypeScript 2.1 RC disponível para todos os projetos de TypeScript no Visual Studio. Um novo serviço de linguagem JavaScript está disponível e habilitado por padrão.

Depurar: depure, crie o perfil e diagnostique com facilidade

Revisão do Auxiliar de Exceção de depuração e diagnóstico e navegação de código mais rápida com Executar com um Clique. Além disso, um novo resumo de seus eventos de aplicativo na janela Ferramentas de Diagnóstico e vários aprimoramentos na Ferramenta de CPU.

Teste: escreva códigos de alta qualidade com ferramentas de teste abrangentes

  • O Live Unit Testing agora pode visualizar os resultados de testes de unidade e a cobertura de código em tempo real no editor.
  • As ferramentas de teste associam a automação com itens de trabalho de caso de teste usando o Gerenciador de Testes.

Colaborar: use o controle de versão, seja ágil e colabore com eficiência

  • Novos recursos do Git no Team Explorer e experiência de conexão atualizada para fazer mais com o Git no Visual Studio 2017 e localizar facilmente os projetos e repositórios aos quais você deseja se conectar.
  • O fluxo de trabalho de comentários do Visual Studio aprimorado tem um “Relatar um problema” mais colaborativo. Pesquise, siga e vote para receber as atualizações mais recentes sobre todos os comentários.

Estender: personalize do seu jeito criando suas próprias extensões

  • Extensões do Visual Studio: personalizar o Visual Studio do seu jeito, criando suas próprias extensões.
  • Descoberta de modelos de item e de projeto: há uma alteração significativa no modo como o Visual Studio consome modelos de projeto e de item para melhorar o desempenho da descoberta de modelo.

Equipar: utilize ferramentas para aumentar a produtividade e explore os novos recursos

  • .NET Core e ASP.NET Core: contêm a versão final 1.0 das novas Ferramentas do .NET Core baseadas em MSBuild. Usando o Visual Studio 2017, é possível criar bibliotecas .NET padrão, aplicativos/bibliotecas .NET Core e projetos Web ASP.NET que usam o novo formato csproj.
  • Ferramentas para Desenvolvimento de Aplicativo Universal do Windows: as atualizações incluem uma nova versão da cadeia de ferramentas .NET Native, estrutura do .NET Core NuGet, novas ferramentas de produtividade e suporte ao SDK de “Atualização para Criadores” do Windows 10.
  • Xamarin: o Xamarin 4.3 adiciona suporte para tvOS, ao mesmo tempo que melhora o suporte do Catálogo de Ativos do iOS e a experiência de edição XML.
  • Ferramentas do Visual Studio para Apache Cordova: um novo simulador baseado em navegador permite codificar rapidamente e ver os resultados imediatamente.
  • Ferramentas Node.js para Visual Studio: atualizações concentradas na estabilidade, no desempenho e na qualidade geral do produto.
  • Ferramentas do Visual Studio para Unity: as Ferramentas do Visual Studio para Unity 3 agora estão disponíveis com a carga de trabalho "Desenvolvimento de jogos com Unity" no novo instalador do Visual Studio.
  • Ferramentas de Dados de Redgate: a fim de estender os recursos DevOps para desenvolvimento de banco de dados SQL, o Visual Studio agora inclui as Ferramentas de Dados de Redgate, que abrangem o Redgate ReadyRoll Core, SQL Search e SQL Prompt Core.
  • NuGet: o NuGet agora dá suporte ao armazenamento de informações de dependência de pacote diretamente em arquivos de projeto como referências de pacote, enquanto mantém os avanços de referências de pacote transitivo.
  • Ferramentas para aplicativos XAML: a barra de ferramentas de runtime XAML agora permite que você rastreie o foco. A produtividade XAML foi aprimorada com Editar XAML e Continuar, aprimoramentos no Editor XAML e otimizações de desempenho.
  • Data Tools e SQL Server: a atualização mais recente do SQL Server Data Tools habilita o suporte para os recursos mais recentes no Banco de Dados SQL do Azure e no SQL Server 2016.
  • Ferramentas de Análise para Desenvolvedor: o Visual Studio 2017 inclui Ferramentas de Análise para Desenvolvedor v8.6 com muitas melhorias nas funcionalidades Application Insights e HockeyApp no Visual Studio.
  • Office Developer Tools para Visual Studio: inclui o Office Developer Tools com as funcionalidades e atualizações mais recentes.
  • Validação de dependência de arquitetura em tempo real: notificações em tempo real de diagramas de validação de dependência (também conhecidos como diagramas de camada).
  • Prompt de Comando do Desenvolvedor: scripts refatorados para dar suporte à nova experiência de instalação.
  • SDK do Azure para .NET: agora disponível no novo instalador do Visual Studio.

Detalhes das novidades da versão 15.0 (26228.04)

What's New in This Release IconDetalhes sobre o Visual Studio 2017 versão 15.0 (26228.04)

lançado em 7 de março de 2017

Experiência de instalação

Temos o prazer de apresentar nosso novo instalador, que foi projetado desde o início para:

  • Reduzir o volume mínimo de memória do Visual Studio.
  • Instale mais rapidamente, com menos impacto no sistema e desinstale de forma limpa.
  • Facilitar a seleção e instalação apenas dos recursos necessários.

Ao instalar o Visual Studio 2017 pela primeira vez, você verá a nova experiência (Figura 1):

The new installation experience in Visual Studio 2017
(Figura 1) A nova experiência de instalação no Visual Studio 2017

A menor instalação tem apenas algumas centenas de megabytes, mas ainda contém suporte para edição de código básico em mais de vinte linguagens, incluindo controle do código-fonte. A maioria dos usuários desejará instalar mais. Você pode adicionar uma ou mais "cargas de trabalho" que representam estruturas, linguagens e plataformas comuns – abrangendo desde o desenvolvimento de área de trabalho do .NET até o desenvolvimento de jogos com o Unity.

Como atualizar o Visual Studio

Para atualizar o Visual Studio, execute o Instalador do Visual Studio e clique no botão Atualizar.

Comentários sobre o novo instalador

É possível relatar problemas ou fazer elogios usando os comandos Relatar um problema e Fornecer uma sugestão no novo cliente do instalador no canto superior direito da barra de título. Gostaríamos de saber se você enfrentou erros de instalação, desinstalação ou modificação de sua instalação, bem como tempos de instalação anormais (por exemplo, travamentos) ou mensagens de erro inesperadas.

Criando um layout para instalação offline e novo suporte para instalação com linha de comando

Agora os administradores de sistema e outros usuários podem criar um layout offline do Visual Studio que contenha todo o conteúdo necessário para a instalação do produto sem exigir acesso à Internet. Este layout pode ser o produto completo, um subconjunto das cargas de trabalho e/ou componentes e uma ou mais localidades do produto. Observe que criar o layout offline requer acesso à Internet. Para obter mais informações, consulte Criar uma instalação offline do Visual Studio 2017.

Apelido de instalação

O Visual Studio Enterprise e o Community (entre outros produtos) agora podem ser instalados lado a lado no mesmo computador. Para simplificar a identificação dessas instalações, você pode especificar um nome curto ou “apelido”. Por exemplo, se você fosse instalar o Visual Studio Enterprise e depois instalar o Community, os dois apareceriam iguais no menu Iniciar. Você pode atribuir ao segundo um apelido como “community” e os itens do menu Iniciar aparecerão com nomes como "Visual Studio 2017 (community)" e "Prompt de Comando do Desenvolvedor para Visual Studio 2017 (community)".

Visual Studio IDE

Melhorias do IDE

  • O Visual Studio foi otimizado para reduzir o tempo de inicialização e o tempo de carregamento da solução. A primeira inicialização do Visual Studio é pelo menos 50% mais rápida.
  • Agora, o Visual Studio monitorará o desempenho da extensão que afeta a inicialização, o carregamento da solução ou a edição. Você receberá alertas sobre extensões com desempenho ruim por meio da Barra de notificação no IDE. O novo Centro de Desempenho (também disponível em Ajuda > Gerenciar o Desempenho do Visual Studio) permite que você veja não apenas as extensões que estão afetando o desempenho, mas também descubra as janelas de ferramentas que estão afetando o desempenho da inicialização e que alteram o comportamento de carregamento na inicialização.
  • A extensão do GitHub para o Visual Studio pode ser selecionada no novo instalador do Visual Studio.
  • Recarregar todos os projetos foi substituído por Recarregar solução para dar suporte ao melhor desempenho ao alternar os branches externos ao Visual Studio. Ao usar a linha de comando Git para mudar os branches, escolha Recarregar Solução após o branch ter sido alternado para alcançar a máxima melhoria de desempenho.
  • Os recursos mascaramento de arquivos para projetos do .NET Core e do ASP.NET Core foram aprimorados. Consulte mascaramento de arquivo de projeto para obter mais detalhes.
  • Agora, você é levado automaticamente para o modo de exibição de pasta do seu repositório após a clonagem. É possível exibir arquivos ou abrir Soluções com a nova lista de seleção Solução no Gerenciador de Soluções.
  • Um novo host de serviço externo está sendo introduzido para substituir o VSHub. Esse novo host de serviço é um processo externo e será exibido no Gerenciador de Tarefas como ServiceHub.Host.CLR.*.exe ou ServiceHub.Host.Node.x86.exe. Esse host, em última instância, eliminará o tráfego http do localhost que foi introduzido com o VSHub, o que deve aliviar o ruído relatado pelos usuários do Fiddler.
  • Mensagens de expiração da licença de pré-lançamento comunicam mais claramente o estado da licença atual.
  • A caixa de diálogo Configurações de conta agora está mais acessível aos leitores de tela.
  • Agora a ajuda offline está disponível por meio da instalação do componente Visualizador da Ajuda no Instalador do Visual Studio.
  • Agora é possível adicionar e remover vários idiomas de interface do usuário a qualquer momento usando o instalador do Visual Studio na guia Pacotes de Idiomas. Selecione o idioma atual da interface do usuário entre aqueles instalados usando Ferramentas > Opções > Configurações Internacionais.
  • A barra de status de controle de versão torna mais fácil publicar repositórios locais em um host de SCC e rastrear o trabalho não confirmado (Figura 2) e não enviado por push (Figura 3).
Version Control - Unpublished commits example
(Figura 2) Controle de versão – exemplo de confirmações não publicadas
Version Control - No pending changes example
(Figura 3) Controle de versão – exemplo de ausência de alterações pendentes

Melhorias para se conectar e de identidade

Introduzimos um novo serviço de identidade que permite compartilhar contas de usuário entre ferramentas de desenvolvedor da Microsoft. No Visual Studio esse compartilhamento inclui recursos como o Team Explorer, ferramentas do Azure, publicação na Windows Store e muito mais. Esses recursos agora compartilham uma experiência de conexão comum e consistente.

Juntamente com as melhorias do Visual Studio, concluímos a implantação de algumas melhorias nos serviços que permitem aos usuários permanecerem conectados com segurança e acabar com a entrada obrigatória a cada 12 horas. Isso corrige os problemas de conexão mais comumente reportados. Saiba mais sobre a redução de prompts no Visual Studio.

Start Page

A página inicial reprojetada tem novos recursos Abrir e Criar:

  • Adquira o repositório remoto do VSTS ou use nosso MRU mais proeminente para abrir soluções e projetos locais com facilidade.
  • O MRU da Página Inicial mostra o repositório clonado em outros computadores para que você possa cloná-los facilmente no computador atual.
  • Crie um novo projeto diretamente da Página Inicial com modelos pesquisáveis e uma lista de modelos usados recentemente. Os modelos usados recentemente também se movimentarão entre instâncias do Visual Studio com uma conta de personalização.
  • Inicialização rápida da nova experiência Clonar do VSTS por meio da opção "Fazer check-out do VSTS" na Página Inicial.
  • Uma seção de “Introdução” que pode ser ignorada.
  • A seção Notícias agora é recolhível:
    • Notificação atualizada em itens adicionados recentemente no News Feed.
    • Notificação no expansor do News Feed se novos itens aparecerem quando o News Feed estiver recolhido.
  • Design visual refinado para atender aos comentários sobre elementos truncados em telas menores e utilização do espaço vazio.

A nova Página Inicial é mostrada abaixo (Figura 4):

Start Page with Get Started and News
(Figura 4) Página Inicial com Introdução e Notícias

Navegação de código aprimorada

Fizemos melhorias significativas nos recursos de navegação de código no Visual Studio 2017:

  • Ir para Tudo (Ctrl+ ou Ctrl+ T) permite que você rapidamente localize e vá até arquivos, digitações, métodos e outros elementos no seu código. Isso permite localizar itens de qualquer tipo, mesmo em grandes bases de código. Além disso, se você souber que tipo de item está procurando, será possível filtrar facilmente. No C#, Visual Basic e F# também adicionamos a correspondência "difusa", de modo que se você digitar incorretamente um nome de tipo, você ainda obterá resultados. Também modernizamos a experiência com Ir para Linha (Ctrl + G). Você pode encontrar família de comandos Ir Para na parte superior do Menu Editar (Figura 5) e (Figura 6).
Go To Results Filtered
(Figura 5) Ir para os Resultados Filtrados
Go To Line
(Figura 6) Ir Para Linha
  • Localizar Todas as Referências (SHIFT+F12) foi revisado (atualmente para C#, Visual Basic, F# e C++), fornecendo agrupamento, filtragem, classificação e pesquisa nos resultados de referência avançados, bem como a colorização dos resultados (para C# e VB), para você ter uma compreensão clara de suas referências e ir com confiança até a linha de código que precisa. Ao passar o mouse sobre um item de referência, é exibida uma dica de ferramenta com o contexto da referência no código-fonte (para C# e VB). Ativando o botão Manter Resultados na barra de ferramentas, a próxima invocação de Localizar Todas as Referências preencherá os resultados de referência em uma nova janela. Isso permite que você mantenha os resultados atuais na janela existente (Figura 7).
Find All Reference
(Figura 7) Localizar Todas as Referências
  • Agora, as Linhas Guia de Estrutura são desenhadas no editor para que você possa visualizar facilmente a estrutura do código no qual está trabalhando. Ao passar o mouse, é exibida uma dica de ferramenta (Figura 8), contendo o contexto do bloco de código atual em relação a seus blocos ancestrais. No momento, as Linhas de Guia de Estrutura dão suporte com arquivos C#, Visual Basic, F# e XAML e com arquivos com suporte por meio de gramáticas TextMate. Esse recurso poderá ser desabilitado na caixa de diálogo Ferramentas > Opções desmarcando a caixa de seleção Mostrar linhas guia da estrutura na categoria Editor de Texto>Geral.
Structure Guide Lines
(Figura 8) Linhas Guia de Estrutura

Suporte à convenção de codificação por meio do EditorConfig

Agora o editor do Visual Studio dá suporte ao EditorConfig, o que permite que os desenvolvedores definam e mantenham convenções de estilo de codificação consistentes entre diferentes editores e IDEs. Consulte documentação para obter mais detalhes e a documentação do .NET para obter informações sobre como usar arquivos .editorconfig para reger seu estilo de código do .NET.

Abrir Pasta

Abrir Pasta é uma maneira conveniente de trabalhar com bases de código sem projetos e soluções. É possível ver a funcionalidade Abrir pasta na barra de menus clicando em Arquivo>Abrir>Pasta e, em seguida, selecionando uma pasta para navegar. Você pode abrir e editar arquivos usando o Gerenciador de Soluções (Figura 9). Várias linguagens populares têm suporte para navegação de símbolo (GoTo) e realce de sintaxe.

The new Open Folder feature in Visual Studio IDE
(Figura 9) O novo recurso Abrir Pasta no IDE do Visual Studio

Além disso, algumas linguagens têm IntelliSense avançado e suporte para depuração direto da pasta:

  • C++ (CMake).
  • Node.js – JavaScript/TypeScript.
  • C# e VB.

É possível compilar ou depurar usando F5 e o menu de contexto do arquivo no Gerenciador de Soluções. Para obter a melhor experiência, instale a carga de trabalho para as linguagens com que você está trabalhando.

A exibição de pasta também dá suporte ao seguinte:

  • Pesquise pelo código em sua pasta com GoTo (Ctrl+).
  • Pesquisar a exibição de pasta do Gerenciador de Soluções até as subpastas.
  • Abrir pastas no Explorer ou o prompt de comando no Gerenciador de Soluções.
  • Alterne facilmente entre soluções na pasta aberta ou no repositório com o menu suspenso de seleção de soluções.
  • Definir configurações de depuração e inicialização com launch.vs.json. Clique com o botão direito do mouse em um arquivo depurável e selecione Configurações de Depuração e Inicialização.
  • Configure tarefas e personalize o build com tasks.vs.json. Clique com o botão direito do mouse em qualquer arquivo e selecione Definir Configurações de Tarefas.
  • Launch.vs.json e tasks.vs.json têm IntelliSense no editor de JSON.

O desempenho da abertura de pastas e da alternância entre a exibição de pasta e de solução foi drasticamente melhorado.

Carga de solução leve

A Carga de Solução Leve permite o carregamento mais rápido de Soluções grandes. Ele pode fornecer aprimoramentos substanciais no uso de memória e no tempo de carregamento para grandes soluções. Esse recurso não está habilitado por padrão e pode ser habilitado de forma solução por solução ou globalmente no IDE. Para habilitá-lo globalmente, navegue até Ferramentas > Opções, selecione Geral em Projetos e Soluções (Figura 10) ou pesquise “Carga de Solução Leve” com o Início Rápido. O recurso pode ser ativado e desativado em Soluções individuais no painel de propriedades da Solução.

The new Lightweight Solution load feature Visual Studio IDE
(Figura 10) O novo recurso Carga de Solução Leve no IDE do Visual Studio

A Carga de Solução Leve é ideal para soluções grandes que contêm C# ou uma combinação de projetos em C# e C++. Pode ser solicitado que você habilite o recurso se detectarmos que você está trabalhando com soluções de grande porte.

O desempenho dos builds de solução completos melhorou substancialmente, agora em paridade com a Carga de solução convencional.

Colorização de sintaxe, Preenchimento automático, Snippet e Suporte de pesquisa "Navegar até" para mais linguagens

Desenvolvendo no suporte que adicionamos em atualizações do Visual Studio 2015, no Visual Studio 2017, agora há suporte para colorização de sintaxe e preenchimento automático para uma gama maior de linguagens. Além disso, algumas dessas linguagens também dão suporte à navegação por meio de "Navegar até" (Ctrl+) e/ou Snippets de Código.

Os arquivos para as linguagens indicadas abaixo dão suporte a esses recursos no novo Editor do Visual Studio Core, mesmo quando nenhuma carga de trabalho tiver sido instalada a fim de dar suporte explícito à linguagem em questão. Se uma carga de trabalho que dá suporte à linguagem for instalada (por exemplo, a carga de trabalho do Desenvolvimento de Aplicativo para .NET Desktop, a carga de trabalho do Desenvolvimento de Aplicativo da Área de Trabalho do Windows com C++, etc.), poderá ser fornecido um suporte mais abrangente de linguagem, incluindo IntelliSense e outros recursos avançados de linguagem como Lâmpadas.

Tipos de arquivo de linguagem listados de acordo com o nível de suporte:

  • Oferece suporte somente à Colorização de Sintaxe e Preenchimento Automático:
    • Bat, Clojure, CoffeeScript, CSS, Docker, F#, Groovy, INI, Jade, JavaDoc, JSON, LESS, LUA, Make, Markdown ++, Objective-C, PERL, PowerShell, Python, Rust, ShaderLab, SQL, Visual Basic .NET, YAML.
  • Oferece suporte a Snippets de Código (além de Colorização de Sintaxe e Preenchimento Automático):
    • CMake, C++, C#, Go, Groovy, HTML, Java, Javadoc, JavaScript, Lua, PERL, PHP, R, Ruby, Shellscript, Swift, XML.
  • Oferece suporte a Navegar até (além de Colorização de Sintaxe e Preenchimento Automático):
    • C++, C#, Go, Java, JavaScript, PHP, TypeScript, Visual Basic.

Introdução à páginas de Visão Geral do Projeto

Introduzimos uma experiência de introdução completamente nova para projetos recém-criados. Substituímos páginas as páginas de introdução atuais por uma guia Visão Geral em nosso novo Designer de Configuração de Aplicativo e concentramos a página nas ações farão com que você entre em funcionamento rapidamente! Isso foi habilitado em projetos do ASP.NET 4.x, do ASP.NET Core e do Cordova (Figura 11).

(Figure 11) Project Overview
(Figura 11) Visão Geral do Projeto

Conexão aos serviços usando Serviços Conectados

Em uma versão anterior, esse recurso era chamado Capacidades do Serviço. Alteramos o nome para Serviços Conectados.

Os Serviços Conectados são a versão moderna do recurso "Adicionar Serviço Conectado" ou "Adicionar Referência de Serviço" do Visual Studio 2017. A funcionalidade Serviços Conectados facilita a conexão de seu aplicativo a serviços. Um novo nó chamado "Serviços Conectados" está disponível no Gerenciador de Soluções para tipos de projeto para Web e dispositivos móveis. Clicar duas vezes neste nó abrirá uma nova guia de página inteira no Visual Studio, na qual você poderá encontrar serviços populares da Microsoft aos quais você pode se conectar.

Selecionar um serviço na página Serviços Conectados (Figura 12) invocará o Assistente de Serviços Conectados, que configura seu projeto e baixa os pacotes NuGet necessários para você começar a codificar seu serviço rapidamente e sem complicações.

Connected Services
(Figura 12 )Serviços conectados

Aquisição dentro do produto de ferramentas e funcionalidades

O Visual Studio 2017 facilita a aquisição de quaisquer cargas de trabalho e componentes adicionais sem sair do IDE (Figura 13). Aproveite o Início Rápido para localizar e iniciar o Instalador do Visual Studio para qualquer carga de trabalho ou componente individual.

In-product acquisition through Quick Launch
(Figura 13) Aquisição no produto por meio do Início Rápido

Se você não conseguir localizar os modelos que está procurando, o instalador do Visual Studio também poderá ser aberto de dentro da caixa de diálogo Novo Projeto (Figura 14).

In-product Quick Launch dialogue
(Figura 14) Caixa de diálogo de Início Rápido no produto

Visual C++

O Visual Studio 2017 traz muitas atualizações e correções para o ambiente do Visual C++. Obrigado por relatar bugs! Corrigimos mais de 250 bugs e problemas relatados no compilador e nas ferramentas, muitas enviadas pelos clientes por meio do Microsoft Connect. Nessa versão, trabalhamos na melhoria do desempenho da STL. O novo mecanismo de banco de dados com base em SQLite agora está sendo usado por padrão. Isso acelerará operações de banco de dados como Ir para Definição e Localizar Todas as Referências e melhorará significativamente o tempo de análise inicial da solução. Agora, fornecemos uma experiência de instalação mais granular da carga de trabalho original do C++. Adicionamos componentes selecionáveis que permitem a instalação apenas das ferramentas das quais você precisa. O suporte a CMake no Visual Studio está pronto para o horário nobre. Carregue seus projetos CMake diretamente para o Visual Studio e comece a codificar agora mesmo. A experiência de C++ "Abrir Pasta" foi melhorada. Dessa forma, traga seu código-fonte para o Visual Studio sem a necessidade de criar nenhum projeto e solução do Visual Studio. Navegue Para agora é conhecido como Ir Para, um termo abrangente para um conjunto de novos filtros de navegação. Isso facilitará encontrar os resultados corretos, especialmente em bases de código maiores.

Análise de Código C++

Os verificadores principais do C++ para impor as principais diretrizes do C++ agora são distribuídas com o Visual Studio. Simplesmente habilite os verificadores na caixa de diálogo Extensões de Análise de Código nas páginas de propriedades (Figura 15) do projeto e as extensões serão incluídas quando você executar a análise de código.

CppCoreCheck properties page
(Figura 15) Página de propriedades de CppCoreCheck

Compilador C++

Atualizamos o compilador C++ e a biblioteca padrão com suporte melhorado para os recursos C++11 e C++14, bem como o suporte preliminar para determinados recursos devem estar no padrão C++ 17. Com suporte para constexpr generalizado e NSDMI para agregações, o compilador está completo com relação aos recursos adicionados no padrão C++14. Observe que o compilador ainda não tem alguns recursos dos padrões C++11 e C++98. O Visual Studio 2017 permite o uso de /sdl com /await. Também removemos a limitação /rtc com Co-rotinas.

Esta versão apresenta várias melhorias na otimização e geração de código. Alguns aprimoramentos importantes incluem:

  • Melhor geração de código de loops: suporte para vetorização automática da divisão de inteiros constantes, melhor identificação de padrões de memset.
  • Melhor segurança do código: melhor emissão de diagnóstico do compilador de estouro de buffer, e o /guard:cf agora protege instruções de troca que geram uma tabelas de saltos.
  • A opção /debug:fastlink foi aprimorada para fornecer tempos de vinculação 30% mais rápidos em grandes componentes que no Visual Studio 2015.
  • Ao usar corrotinas, a palavra-chave experimental “yield” (disponível na opção /await) foi removida. Em vez disso, seu código deve ser atualizado para usar "co_yield". Para obter mais informações, consulte Blog da equipe do Visual C++.

Bibliotecas C++

  • [STL] Melhoria de desempenho de basic_string.
  • [STL] Adicionado <any>, <string_view>, apply(), make_from_tuple().
  • [STL] std::vector foi revisado quanto à correção e ao desempenho.
  • [STL] Agora a STL evita desreferenciar ponteiros sofisticados nulos.
  • [STL] Adicionados <optional>, <variant>, shared_ptr::weak_type e <cstdalign>.
  • [STL] Habilitado o C++14 constexpr em min/max/minmax(initializer_list) e o min_element/max_element/minmax_element().
  • [STL] O desempenho dos construtores de movimentação do std::string/std::wstring foi melhorado em mais de três vezes.
  • [STL] Para obter uma lista completa de melhorias na STL, consulte: blog da equipe do Visual C++.
  • [ATL] No entanto, outro conjunto de conformidade de pesquisa de nome é corrigido.
  • [ATL] Agora construtores de movimentação e operadores de atribuição de movimentação existentes estão devidamente marcados como de não lançamento.
  • [ATL] Cancelar a supressão do aviso C4640 válido sobre inicialização thread-safe de estatísticas locais em atlstr.h.
  • [ATL] A inicialização segura de thread de estatísticas locais foi desabilitada automaticamente no conjunto de ferramentas XP ao [usar ATL E compilar uma DLL]. Esse não é mais o caso. Você poderá adicionar /Zc:threadSafeInit- nas configurações de projeto se desejar que a inicialização segura de thread seja desativada.
  • [AMP] Biblioteca auditada e erros de digitação corrigidos.
  • [VCRuntime] Novo cabeçalho 'cfguard.h' para símbolos de proteção de fluxo de controle.

C++ IDE

Agora, o desempenho de alteração de configuração é melhor para projetos nativos C++ e muito melhor para projetos C++/CLI. Quando uma configuração de solução for ativada pela primeira vez, depois ela será mais rápida, e todas as ativações subsequentes dessa configuração de solução serão quase instantâneas.

O novo mecanismo de banco de dados com base em SQLite agora está sendo usado por padrão. Isso acelerará operações de banco de dados como Ir para Definição e Localizar Todas as Referências e melhorará significativamente o tempo de análise inicial da solução. A configuração foi movida para Ferramentas > Opções > Editor de Texto > C/C++ > Avançado (que anteriormente se encontrava em …C/C++ > Experimental).

Melhoramos o desempenho do IntelliSense em projetos e arquivos que não estão usando cabeçalhos pré-compilados – um Cabeçalho pré-compilado automático será criado para os cabeçalhos no arquivo atual.

Outras atualizações incluem:

  • Adicionamos filtragem de erros e ajuda para erros do IntelliSense na lista de erros (Figura 16). Agora, ao clicar na coluna de erro é possível filtrar (Figura 17). Além disso, clicar em erros específicos ou pressionar F1 iniciará uma pesquisa online sobre a mensagem de erro.
Error List
(Figura 16) Lista de Erros
Error List Filtered
(Figura 17) Lista de Erros filtrada
  • Adicionada a capacidade de filtrar por tipo os itens da Lista de Membros (Figura 18).
Member List Filtered
(Figura 18) Lista de membros filtrada
  • Adicionado um novo recurso experimental Predictive IntelliSense, que fornece filtragem ciente de contexto daquilo que aparece na Lista de Membros.

  • A nova interface do usuário Localizar Todas as Referências inclui informações sobre se estamos lendo ou gravando em uma variável nos resultados para o código C++.

  • O recurso Dot-to-Arrow IntelliSense passou de experimental a avançado e agora está habilitado por padrão. As funcionalidades do editor Expandir Escopos e Expandir Precedência também passaram de experimentais para avançadas.

  • As funcionalidades de refatoração experimentais Alterar Assinatura e Extrair Função agora estão disponíveis por padrão.

  • Habilitamos o novo recurso experimental para “Carregamento de projeto mais rápido” em C++. Na próxima vez que você abrir um projeto C++, ele será carregado mais rapidamente e, depois disso, ele será carregado muito mais rapidamente!

  • Melhorias na experiência de Abrir Pasta. Edite, crie e depure seu projeto que não é do MSBuild C++ carregando suas fontes por meio de "Abrir Pasta". Personalize a experiência por meio desses arquivos json:

    • CppProperties.json para personalizar a experiência de navegação e do IntelliSense.
    • Tasks.vs.json para personalizar as etapas de build.
    • Launch.vs.json para personalizar a experiência de depuração.
  • O C++ IntelliSense funciona sem a necessidade de criar um arquivo CppProperties.json na pasta raiz. Além disso, adicionamos uma nova lista suspensa para permitir aos usuários mudar facilmente entre as configurações fornecidas pelos arquivos CppProperties.json e CMake. Suporte CMake em Abrir Pasta: abrir projetos CMake com “Abrir Pasta” configurará automaticamente o ambiente para edição, compilação e depuração em C++.

  • Há suporte para configurações adicionais por meio de um arquivo CMakeSettings.json que reside na mesma pasta que o arquivo CMakeLists.txt (Figura 19).

CMake Open Folder
(Figura 19) Abrir Pasta com CMake

Cargas de trabalho de instalação em C++

  • Desenvolvimento do Windows Desktop com C++:

    • Agora, fornecemos uma experiência de instalação mais granular da carga de trabalho original do C++. Adicionamos componentes selecionáveis que permitem a instalação apenas das ferramentas das quais você precisa. Observe que os tamanhos de instalação indicados para os componentes listados na interface de usuário do instalador não são precisos e subestimam o tamanho total.

    • Para criar projetos Win32 com êxito na carga de trabalho de área de trabalho C++, é necessário instalar um conjunto de ferramentas e um SDK do Windows. Instalar os componentes recomendados (selecionados) "Conjunto de ferramentas do VC++ 2017 v141 (x86, x64)" e "SDK do Windows 10 (10.0.14393)" garantirá que isso funcionará. Se as ferramentas necessárias não estiverem instaladas, os projetos não serão criados com êxito e o assistente parará de responder.

  • Desenvolvimento de Linux com C++:

    • A extensão popular Visual C++ para Desenvolvimento no Linux agora faz parte do Visual Studio. Essa instalação fornece tudo o que você precisa para desenvolver e depurar aplicativos em C++, em execução em um ambiente Linux.
  • Desenvolvimento de jogos com C++:

    • Use todo o poder do C++ para compilar jogos profissionais com DirectX ou Cocos2d.
  • Desenvolvimento Mobile com C++ (Android e iOS):

    • Agora, você pode criar e depurar aplicativos móveis usando o Visual Studio, que pode ser destinado ao Android e iOS.
  • Desenvolvimento na plataforma Windows Universal:

    • O C++ é fornecido como um componente opcional para a carga de trabalho de desenvolvimento da Plataforma Universal do Windows. Atualmente, a atualização de projetos em C++ deve ser feita manualmente. Se abrir um projeto da UWP voltado ao v140 no Visual Studio 2017, será necessário selecionar o conjunto de ferramentas de plataforma v141 nas páginas de propriedades do projeto se você não tiver instalado o Visual Studio 2015.

Conjunto de ferramentas de plataforma Clang/C2

O conjunto de ferramentas Clang/C2 que acompanha o Visual Studio 2017 agora dá suporte à opção /bigobj, essencial para a criação de projetos grandes. Ele também inclui várias correções de bugs importantes, tanto em front-end quanto em back-end do compilador.

C# e Visual Basic

Extensões de linguagem

Esta versão introduz o suporte para recursos de linguagem C# 7.0 e Visual Basic 15, incluindo:

Para o C#:

Para o Visual Basic:

  • Valor de tuplas introduz o suporte a linguagem para uso de tuplas a fim de agrupar temporariamente um conjunto de valores digitadosDim point As (x As Integer, y As Integer) = GetOffset().
  • Consumo de retornos de ByRef estende a linguagem para dar suporte ao consumo de funções e propriedades de bibliotecas que têm retornos de ByRef.
  • Literais binários e separadores de grupo de dígitos permitem a representação nativa dos números binários. Isso é muito conveniente para bitmasks e enumerações de sinalizadores: &B1001_0011.

Para obter mais informações, siga nosso design de linguagem no CSharpLang GitHub e VBLang GitHub para saber mais sobre essas e outras extensões de linguagem e propostas.

Ações e Refatorações Rápidas

O Visual Studio oferece diversas opções de refatoração para ajudá-lo a ser produtivo e tornar seu código mais legível. Abaixo há algumas delas:

  • Simplificar a inicialização de objeto com um inicializador (Figura 20).
Use object initializer
(Figura 20) Usar o inicializador de objeto
  • Mover declarações de variável out embutida, aproveitando um novo recurso do C#7 (Figura 21).
Move out variable inline
(Figura 21) Retirar variável embutida
  • Simplificar verificações null e expressões throw usando o operador de coalescência nula, aproveitando um novo recurso do C#7 (Figura 22).
Use throw expression with null-coalescing operator
(Figura 22) Usar expressão throw com o operador de coalescência nula
  • Mova um tipo para um arquivo correspondente: extraia um tipo de um arquivo e coloque-o em outro arquivo com um nome correspondente com um clique por meio do Ctrl+.
  • Sincronizar nome de arquivo e tipo: se o nome de arquivo e tipo estão fora de sincronização, você pode usar Ctrl+.
  • Converter String.Format para interpolação de cadeia de caracteres: aproveitar o recurso da linguagem C# 6 com essa Ação Rápida.
  • Adicione casos ausentes a uma opção C# ou uma seleção do Visual Basic.
  • Converta uma propriedade em um método e vice-versa.
  • Adicione referência de pacote: ofertas para recuperar automaticamente e instalar um pacote NuGet (e adicionar o usando/importação) para um tipo não reconhecido. Para habilitar esse recurso, acesse Ferramentas > Opções > Editor de Texto > [C#/Basic] > Avançado > Sugerir usings para tipos nos assemblies de referência/Sugerir usings para tipos nos pacotes NuGet.
  • Torne síncronos os métodos assíncronos quando aplicável.
  • Suporte para correspondência "difusa" para tipos incorretos.
Codificando a configuração e a imposição de convenção

Com base no suporte do Visual Studio para EditorConfig, trabalhamos com a comunidade para adicionar configurações de estilo de código do .NET ao formato de arquivo. Isso significa que você pode configurar as convenções de estilo de código da equipe, verificá-las no controle do código-fonte e exibir violações em tempo real no editor enquanto os desenvolvedores estão digitando. Você pode ver todas as opções de estilo de código no repositório do Roslyn .editorconfig ou na documentação. Continue definindo as configurações de estilo de código específicas do computador em Ferramentas > Opções > Editor de Texto > [C#/Basic] > Estilo de Código e essas regras serão substituídas quando um EditorConfig estiver presente e em conflito.

Também adicionamos/atualizamos analisadores de estilo para ajudá-lo a personalizar e aplicar as convenções de codificação em sua equipe, incluindo:

  • Regras de estilo de nomenclatura.
  • Uso de var ou tipos explícitos.
  • Uso de this. ou Me. no acesso de membros.
  • Use blocos ou corpos de expressão.
  • Use a correspondência de padrões para verificações cast e null.
  • Use nomes de tupla explícita.
  • Simplifique a verificação null com expressões throw, delegados condicionais, expressões de coalescência e propagação nula.
  • Exija chaves.

Observação: várias dessas regras de estilo de código são configuradas como Sugestões no editor por padrão (Figura 23).

Configure code style preferences and enforcement from EditorConfig
(Figura 23) Configurar as preferências e a imposição de estilo de código no EditorConfig

Melhorias do IntelliSense

Esta versão também apresenta aperfeiçoamentos ao IntelliSense que o tornarão mais produtivo ao trabalhar em uma solução grande ou uma base de código não familiar. Adicionamos uma bandeja de ícones ao IntelliSense que permite que você filtre a lista de membros por tipo (por exemplo, métodos, propriedades, classes, etc.). Cada alternância de filtro tem um atalho de teclado associado que você pode descobrir passando o mouse sobre o ícone. Para habilitar este recurso, vá para Ferramentas>Opções>Editor de Texto>[C# / Basic]>IntelliSense e marque as opções para filtrar e realçar (Figura 24).

IntelliSense Completion Filtering
(Figura 24) Filtragem de preenchimento do IntelliSense

Outras melhorias no editor

  • Agora é possível dividir uma cadeia de caracteres longa em várias cadeias de caracteres concatenadas posicionando a o curso no meio da cadeia de caracteres e pressionando Enter.
  • Trabalhamos consideravelmente para melhorar a capacidade de resposta do IDE na presença de operações em segundo plano que calculam informações de CodeLens e de diagnóstico.

F#

Suporte para recursos da linguagem F# 4.1

  • Tuplas de Struct que têm interoperabilidade com tuplas C# 7/VB 15.
  • Retornos ByRef que dão suporte ao consumo de retornos de ref C# 7.
  • Suporte a registro de Struct com o [<Struct>] atributo (por Will Smith).
  • Suporte a união discriminada de Struct com o [<Struct>] atributo.
  • Um novo tipo Result<'TSuccess, 'TFailure>, com funções de suporte em FSharp.Core (por Oskar Gewalli).
  • A fixed palavra-chave, que dá suporte a fixação de um tipo de ponteiro local na pilha.
  • Sublinhados em literais numéricos (por Avi Avni).
  • Argumentos de Atributo de Informações do Chamador (por Lincoln Atkinson e Avi Avni).
  • Tipos e módulos mutuamente referenciais dentro do mesmo arquivo por meio de namespace rec e module rec.
  • Sufixo "Módulo" implícito em módulos que compartilham o mesmo nome como um tipo.

Aprimoramentos no Compilador do F# e no FSharp.Core

(Muitos, feitos pela comunidade do F#)

Um novo editor com base em workspaces de Roslyn

(Muitos recursos novos de IDE através da contribuição da excelente comunidade do F#)

Contribuições adicionais da comunidade do F#

Gostaríamos de agradecer a toda a comunidade do F# por realizar a versão interna de builds de ferramentas do F# no Visual Studio 2017, registrar bugs, fomentar discussões e implementar recursos e correções de bugs. O sucesso do F# no Visual Studio 2017 realmente não seria possível sem a comunidade do F#. Consulte a lista completa de parceiros.

JavaScript e TypeScript

TypeScript 2.1

O TypeScript 2.1 está disponível para todos os projetos TypeScript no Visual Studio. O TypeScript 2.1 oferece async/await de nível inferior, melhor inferência de tipos, expansão de objeto local e muito mais! Para saber mais sobre a versão, confira a postagem no blog sobre a versão ou todo o log de alterações.

Serviço de linguagem JavaScript

Um novo serviço de linguagem JavaScript (Figura 25) está disponível e habilitado por padrão. O novo serviço fornece IntelliSense mais avançado e adiciona suporte IntelliSense para anotações de comentário JSDoc, formatos de módulo ES6 e Common JS. Ele também dá suporte à sintaxe JSX e recursos do ES2016, como geradores, módulos e decoradores. Para obter mais informações, consulte esta postagem do blog ou Documentação do JavaScript IntelliSense no GitHub.

Rich JavaScript IntelliSense for jQuery
(Figura 25) IntelliSense de JavaScript avançado para jQuery

Melhorias de desempenho

Melhorar o desempenho era um dos maiores focos desta versão. Juntamente com várias otimizações para melhorar as características de memória e de capacidade de resposta, todo o serviço de linguagem JavaScript/TypeScript foi movido para um processo de satélite fora do devenv.exe para fornecer um alívio de memória para os maiores projetos do Visual Studio. Você terá menor consumo de memória no processo do Visual Studio e menos falhas de memória insuficiente ao trabalhar com grandes projetos em JavaScript.

Depuração e Diagnósticos

Executar com um Clique

Basta clicar no ícone ao lado de uma linha de código durante a depuração para executar essa linha (Figura 26). Não é mais necessário definir pontos de interrupção temporários ou executar várias etapas para executar seu código e parar na linha que você deseja. Agora, enquanto estiver parado em um estado de interrupção no depurador, o ícone Executar com um Clique sutilmente aparece ao lado da linha de código quando você passar o mouse. Mova o mouse até o ícone e clique no botão, agora o seu código será executado e parará nessa linha da próxima vez que ela for alcançada no seu caminho de código. É possível desativá-lo no menu principal clicando em Depurar>Opções>Habilitar execução.

Run to Click Icon
(Figura 26) Ícone Executar com um Clique

Filtro em Anexar ao Processo

Pesquise facilmente na caixa de diálogo Anexar ao Processo (Figura 27) para localizar rapidamente o processo ao qual você deseja anexar o depurador. A lista de processos em execução será filtrada segundo os itens correspondentes à sua pesquisa. O filtro de pesquisa é fixo e se lembrará de sua pesquisa anterior quando você reabrir a caixa de diálogo.

Attach to Process Filter
(Figura 27) Filtro em Anexar ao Processo

Reanexar ao Processo

Agora é possível reanexar rapidamente a processos que estavam sendo depurados anteriormente. Disparar o novo comando Depurar/Reanexar ao Processo (Shift+Alt+P) tentará imediatamente anexar o depurador aos últimos processos da sessão de depuração anterior que foram invocados na caixa de diálogo Anexar ao Processo. O depurador será reanexado a processos primeiro tentando corresponder à ID do processo anterior e, depois, correspondendo ao nome do processo anterior. Se não for encontrado nenhum processo correspondente ou se vários processos com o mesmo nome forem encontrados, a caixa de diálogo "Anexar ao Processo" aparecerá para que você possa selecionar o processo que deseja.

O novo Auxiliar de exceção

Use o novo Auxiliar de Exceção (Figura 28) para exibir suas informações de exceção em um instante em uma caixa de diálogo não modal compacta com acesso instantâneo às exceções internas. Ao diagnosticar sua NullReferenceException, veja rapidamente o que foi nulo diretamente dentro do Auxiliar de Exceção. Agora, é possível excluir quebras em tipos de exceção acionados de módulos específicos, clicando na caixa de seleção para adicionar uma condição enquanto estiver parado na exceção acionada. Leia esta postagem de blog para obter informações mais detalhadas sobre os novos benefícios do Auxiliar de Exceção.

The New Exception Helper dialog
(Figura 28) A nova caixa de diálogo Auxiliar de Exceção

Adicione condições às configurações de exceção

Quando você configura o depurador para interromper nas exceções geradas, você pode adicionar condições, de modo que o depurador seja interrompido somente quando as exceções forem geradas em módulos especificados (Figura 29).

Edit Conditions dialog box
(Figura 29) Caixa de diálogo Editar Condições

Melhorias de acessibilidade do depurador

Agora você pode usar de forma mais eficaz várias janelas do Depurador (Pilha de Chamadas, Locais, Autos, Inspeção e QuickWatch) com leitores de tela e para outras necessidades de acessibilidade.

Eventos do IntelliTrace para .NET Core

Agora o IntelliTrace dá suporte a eventos de MVC, ADO.NET e HttpClient para aplicativos ASP.NET Core. Eles aparecerão na guia Eventos na janela Ferramentas de Diagnóstico.

Atualizações na janela Ferramentas de Diagnóstico

Ao iniciar uma sessão de depuração, você verá uma nova exibição de resumo (Figura 30) do seu aplicativo na janela Ferramentas de Diagnóstico. Nela, será possível:

Summary tab in Diagnostics Tools Window
(Figura 30) Guia Resumo na janela Ferramentas de Diagnóstico

Atualizações do Criador de Perfil de Desempenho

Agora, o Criador de Perfil de Desempenho pode ser anexado a um processo em execução. A ferramenta de Uso da CPU, a ferramenta de Uso de GPU e o Assistente de Desempenho dão suporte à anexação a um processo em execução.

Atualizações da Ferramenta de Uso da CPU

Várias melhorias foram feitas na Ferramenta de uso da CPU:

  • Melhor suporte para Código Externo – Agora, a Ferramenta de CPU oferece mais informações sobre os custos de funções de biblioteca e de estrutura quando são chamadas pelo código do usuário.
  • Exibição de Funções (Figura 31) – Uma exibição que classifica as funções de acordo com o respectivo custo de CPU.
Functions List
(Figura 31) Lista de funções
  • A exibição Chamador/Receptor da Chamada (Figura 32) permite a investigação dos custos de chamadas de função feitas de/para uma função selecionada.
Caller / Callee View
(Figura 32) Exibição de Chamador/Receptor da Chamada
  • A Exibição de Fonte mostra o código-fonte da função quando a função é selecionada na Ferramenta de CPU.

Suporte para depuração no Chrome

Quando você começar a depurar projetos do ASP.NET e escolher o Google Chrome como navegador, o Visual Studio depurará o JavaScript em execução no Chrome. Se preferir usar as ferramentas de desenvolvimento no navegador, desabilite esse recurso em Ferramentas > Opções > Depuração.

Teste de Unidade Dinâmica

O Live Unit Testing (Figura 33) é uma funcionalidade no Visual Studio 2017 Enterprise Edition que exibe os resultados de teste de unidade e a cobertura de código em tempo real no editor. Ele dá suporte a MSTest, xUnit e Nunit para C# e projetos VB que definem o .NET Framework como destino.

Live Unit Testing
(Figura 33) Live Unit Testing

Consulte o Blog do Live Unit Testing para obter mais detalhes.

Ferramentas de teste

Associe a automação a itens de trabalho de caso de teste usando o Gerenciador de Testes

Agora é possível associar a automação a itens de trabalho de caso de teste (Figura 34) selecionando um método de teste no Gerenciador de Testes. Essa nova experiência também permite que você exiba quaisquer associações existentes para o método de teste escolhido.

Basta clicar com o botão direito do mouse em um teste no Gerenciador de Testes...

Test Explorer Associate Automation
(Figura 34) Associar automação do Gerenciador de Testes

…e fornecer uma ID de caso de teste para criar uma associação (Figura 35).

Associate Automation
(Figura 35) Associar Automação

Nas versões anteriores do Visual Studio, isso podia ser feito usando o formulário de item de trabalho. A experiência baseada no formulário de item de trabalho pode ser habilitada ativando o modo de compatibilidade usando Ferramentas | Opções (Figura 36).

Work Item Form Compatibility mode
(Figura 36) Modo de compatibilidade do Formulário de Item de Trabalho

Team Explorer

Novos recursos do Git

Adicionamos novos recursos do Git ao Visual Studio 2017 que permitem que você aproveite mais seu fluxo de trabalho completo sem sair do IDE. É possível ver facilmente a comparação para confirmações de saída, realizar um envio por push forçado para concluir uma troca de base ou enviar uma confirmação corrigida por push, remover a definição do seu branch de upstream e continuar uma troca de base de patch no Visual Studio. Além disso, mudamos para git.exe. Isso nos permite fornecer os recursos mais atualizados. Damos suporte a SSH, respeitamos as opções de configuração e mostramos no Team Explorer exatamente o que você vê na linha de comando. Para saber mais sobre esses recursos, confira a postagem do blog.

Conectar-se ao VSTS/TFS

Na página inicial do Visual Studio e no Team Explorer, o processo para se conectar a projetos e clonar repositórios no VSTS/TFS foi personalizado e simplificado, facilitando e agilizando a localização de projetos e repositórios aos quais você deseja se conectar. Nossa mais nova página Conectar mostra apenas os projetos e repositórios mapeados e clonados por você em todos os seus servidores VSTS/TFS (em vez de cada repositório para cada projeto). Além disso, você não precisa mais se conectar a um projeto antes de clonar repositórios.

Ao iniciar a caixa de diálogo para se conectar ao VSTS e ao TFS, você verá a experiência do usuário redesenhada. Você verá os servidores TFS adicionados seguido por todos os servidores VSTS, projetos e repositórios para sua conta de usuário selecionada. Os resultados são listados em uma árvore para permitir a navegação aprimorada. Você pode se conectar a coleções ou projetos além de repositórios.

Formulários de item de trabalho

Quando você se conecta ao Visual Studio Team Services no Visual Studio 2017 e abre um item de trabalho, o formulário de item de trabalho é exibido no navegador da Web (Figura 37). No entanto, se você se conectar ao Team Foundation Server 2015 ou anterior, você verá os formulários de item de trabalho herdados.

Work Item Form in Team Explorer
(Figura 37) Formulário de Item de Trabalho no Team Explorer

Fluxo de trabalho de comentários aprimorado do Visual Studio

O Visual Studio 2017 inclui uma experiência de comentários aprimorada para melhorar o acompanhamento e a colaboração. Como parte dessa atualização, você observará uma experiência mais colaborativa de relatar um problema no Visual Studio complementada com uma abrangente portal Web para uma solução completa de comentários de ponta a ponta. Agora é possível pesquisar, seguir, votar e receber as atualizações mais recentes de todos os comentários fornecidos por você usando o recurso Relatar um Problema do Visual Studio IDE. Essas experiências melhoradas resolvem muitos dos comentários que recebemos de você e possibilitam a comunicação bidirecional entre nossas equipes e você.

Extensibilidade do Visual Studio

Novo formato de extensibilidade

A nova tecnologia do instalador do Visual Studio 2017 oferece maior controle sobre as ferramentas que são instaladas. Alguns usuários podem instalar apenas o editor principal do Visual Studio, enquanto outros podem instalar várias cargas de trabalho. Para garantir que as funcionalidades e extensões de pré-requisitos necessários sejam instaladas, os autores de extensão agora poderão especificar os componentes individuais exigidos por sua extensão no manifesto.

Os usuários serão avisados ao tentar instalar uma extensão que não foi compilada usando o novo formato VSIX. O antigo formato VSIX não especifica os pré-requisitos necessários e pode não funcionar se esses pré-requisitos estiverem indisponíveis no Visual Studio 2017. O novo formato VSIX é compatível com versões anteriores e pode ter como destino versões anteriores do Visual Studio, até o Visual Studio 2012.

O designer de manifesto do VSIX foi atualizado para refletir as alterações no manifesto. Na guia de pré-requisitos (Figura 38), os desenvolvedores de extensão podem encontrar uma lista dos componentes instalados para especificar como pré-requisitos para a extensão.

Prerequisite tab
(Figura 38) Guia de pré-requisitos

Durante a instalação da extensão, o instalador do VSIX (Figura 39) indicará quais componentes estão ausentes e os instalará com a extensão.

VSIXInstaller
(Figura 39) VSIXInstaller

Modificar extensões em massa

Na caixa de diálogo Extensões e Atualizações (Figura 40), é possível agendar várias extensões para instalação, atualização e desinstalação antes que seja necessário reiniciar o Visual Studio. No canto inferior direito, há um resumo de todas as tarefas agendadas. Para remover uma modificação agendada, clique no X ao lado de uma extensão que está programada para instalar.

Extensions and Updates Dialog
(Figura 40) Caixa de Diálogo Extensões e Atualizações

Após detectar que todas as janelas do Visual Studio estão fechadas, o Instalador do VSIX começará a realizar as modificações programadas (Figura 41).

Batched Modification Installer
(Figura 41) Instalador de modificação em lote

Suporte para Ngen

Agora, é possível optar por instalar assemblies usando o Ngen (Figura 42).

NGEN Properties
(Figura 42) Propriedades do NGEN
  • Ngen – Se deseja ou não usar o Ngen no assembly.
  • Aplicativo Ngen – O aplicativo a ser passado para o Ngen por meio da opção /ExeConfig.
  • Arquitetura NGEN – A arquitetura de destino para a imagem nativa. As opções são: x86, x64 e todos.
  • Prioridade do NGEN – Nível de prioridade do Ngen.

Instalar arquivos fora do diretório de extensões

Agora, você pode optar por instalar arquivos em uma lista selecionada de pastas que estão fora do diretório de extensões (Figura 43).

VSIX Properties
(Figura 43) Propriedades do VSIX
  • Incluir no VSIX – Incluir o arquivo no seu VSIX.
  • Raiz da Instalação – O diretório raiz no qual o arquivo será instalado. As opções são: Padrão (instalação dentro do diretório de extensões), PublicAssemblies, ReferenceAssemblies, MSBuild, Esqumas, Licenças, RemoteDebugger e VSTargets.
  • Caminho de Destino – O nome do arquivo a ser instalado no computador do usuário.
  • Subcaminho do VSIX – O subcaminho na Raiz da Instalação no qual o arquivo será instalado.

Gerenciador de Extensões de Roaming

O Gerenciador de Extensões de Roaming, novidade no Visual Studio 2017, ajuda a manter o controle das suas extensões favoritas em todos os seus ambientes de desenvolvimento. Fazer roaming de suas extensões ajuda a acompanha as instalações que já foram instaladas ao criar uma lista sincronizada na nuvem.

Ao entrar no Visual Studio, você poderá ver rapidamente uma lista das extensões em Ferramentas > Extensões e Atualizações e clicar em Gerenciador de Extensão de Roaming (Figura 44). Ele controla as extensões que você instalou e permite que você escolha quais são adicionadas à sua lista de Roaming. Com extensões novas na galeria diariamente, essa ferramenta torna rápido e fácil de configurar cada ambiente de desenvolvimento com suas extensões favoritas.

The new Roaming Extension Manager in the Visual Studio IDE
(Figura 44) O novo Gerenciador de Extensão de Roaming no IDE do Visual Studio

Ao usar esse recurso, você vai notar três tipos de ícones:

  • Roamed Icon Ícone de Roaming – Indica uma extensão que faz parte da Lista de Roaming, mas que não está instalada no computador. É possível instalá-los usando o botão "Baixar".
  • Roamed and Installed Icon Ícone de Roaming e Instalado – Indica todas as extensões que fazem parte da Lista de Roaming e que estão instaladas no ambiente. Se você decidir que não deseja usar perfil móvel, poderá removê-los por meio do botão "Parar Roaming".
  • Installed Icon Ícone de Instalado – Indica todas as extensões que estão instaladas no ambiente, mas que não fazem parte da Lista de Roaming. As extensões podem ser adicionadas à lista de roaming por meio do botão "Iniciar Roaming".

Esses ícones mostrarão o status atual da sua lista. Você pode ter qualquer extensão em qualquer estado, então personalize de acordo com sua vontade! Ou então, deixe que fazemos isso para você! Qualquer extensão baixada enquanto você está conectado será adicionada à sua lista como Em roaming e Instalada e, portanto, fará parte da sua lista de Roaming, fornecendo acesso a ela de qualquer computador!

Criando modelos de projeto e de item

A partir do Visual Studio 2017, há uma alteração significativa no modo como o Visual Studio consome modelos de projeto e de item para melhorar o desempenho da descoberta de modelo. O novo mecanismo de descoberta exige agora que todos os modelos de projeto e de item que sigam o esquema "vstemplate" sejam definidos nos arquivos de manifesto do modelo. Os modelos do Visual Studio que você não definir em um arquivo de manifesto de modelo não serão mais visíveis nas caixas de diálogo Novo Projeto ou Novo Item. Apesar de as novas ferramentas de extensibilidade gerarem o manifesto durante o tempo de build VSIX, se você tiver modelos do Visual Studio lançados como parte de um pacote MSI, será necessário gerar manualmente arquivos de manifesto de modelo para esses modelos. Para obter mais informações, visite a página no MSDN Upgrading Custom Project and Item Templates for Visual Studio 2017 (Atualizando modelos de itens e projetos personalizados do Visual Studio 2017).

.NET Core e ASP.NET Core

Contém a versão final 1.0 das novas Ferramentas do .NET Core baseadas em MSBuild. Usando o Visual Studio 2017, é possível criar bibliotecas .NET padrão, aplicativos/bibliotecas .NET Core e projetos Web ASP.NET que usam o novo formato csproj.

As ferramentas do .NET Core são incluídas automaticamente na carga de trabalho de "desenvolvimento do ASP.NET e para a Web" e um componente opcional na carga de trabalho de "desenvolvimento de área de trabalho do .NET" no instalador. Se você desejar apenas desenvolver aplicativos .NET Core para uso em plataforma cruzada, será possível instalar somente as ferramentas do .NET Core e do ASP.NET Core usando a carga de trabalho de "desenvolvimento multiplataforma do .NET Core" na seção "Outros conjuntos de ferramentas" do instalador.

Recursos de alto nível nesta versão incluem o seguinte:

  • Suporte MSBuild para projetos .NET Core, com um formato de projeto csproj simplificado que facilita editar manualmente sem a necessidade de descarregar o projeto.
  • Editar o arquivo .csproj do .NET Core é tão simples quanto clicar com o botão direito do mouse no projeto no Gerenciador de Soluções e escolher "Editar".
  • Suporte para curingas de arquivo no arquivo de projeto, em que não é necessário enumerar todos os nomes de arquivo do código-fonte, que mantém o arquivo csproj em tamanho compacto.
  • As referências do pacote NuGet agora fazem parte do arquivo csproj, consolidando todas as referências de projeto em um arquivo.
  • Interoperabilidade entre os projetos .NET Core, .NET Standard e .NET Framework. Por exemplo, um projeto .NET Core pode adicionar uma referência projeto a projeto a um projeto .NET Standard.
  • Destino cruzado entre várias estruturas de destino em um projeto.
  • Os projetos .NET Core project.json existentes serão automaticamente migrados para o csproj quando abertos no Visual Studio ou será possível manualmente migrá-los usando a CLI (interface de linha de comando) do .NET.
  • Configure facilmente a integração de build contínuo para seu aplicativo ASP.NET Core com suporte para Docker e fornecimento de build contínuo para seus Serviços de Contêiner do Azure no Visual Studio IDE.

Consulte o blog .NET para obter mais detalhes.

Ferramentas para desenvolvimento de aplicativos universais do Windows

Cadeia de ferramentas .NET Native atualizada

Esta cadeia de ferramentas nativa do .NET atualizada adiciona várias otimizações para melhorar o desempenho de runtime para aplicativos UWP gerenciados no Visual Studio. A versão inclui mais de 600 correções de bugs e recursos para tratar dos principais comentários dos clientes e melhorar a qualidade geral da cadeia de ferramentas.

Pacote 5.3.0 Microsoft.NETCore.UniversalWindowsPlatform

Esta atualização das bibliotecas de estrutura do .NET Core NuGet trata de alguns dos principais problemas relatados pelos clientes. Projetos existentes de UWP podem usar o Gerenciador de referências de NuGet para atualizar para esta nova versão. Além disso, o novo pacote .NET Core inclui a cadeia de ferramentas .NET Native.

SDK e emulador da Atualização de Aniversário do Windows 10

O SDK do Windows e o Emulador do Windows Phone para a Atualização de Aniversário do Windows 10 estão incluídos nesta versão.

  • Elementos de interface do usuário criados na Caixa de Ferramentas agora serão criados com menos marcas de XAML, resultando em uma XAML mais limpa e mais legível.
  • Uma nova ferramenta de opções no Designer de XAML permite que o desenvolvedor selecione o tema da interface do usuário e configurações de alto contraste para serem visualizadas na área de design.
  • Os editores de valor na janela Propriedades agora aceitam equações matemáticas simples, como "60 + 20". As equações serão avaliadas imediatamente (nesse caso, 80) e seu valor resultante é colocado no XAML.

Capacidade de Designer de Manifesto para Criar Ativos Visuais

O Designer de Manifesto (Figura 45) passou por uma atualização visual e agora foi adicionada a capacidade de gerar ativos visuais para seus aplicativos UWP. Agora você pode usar uma única imagem de origem para criar blocos, logotipos, ícones e telas iniciais em qualquer escala ou em todas as escalas para caber em todos os tipos de dispositivo de destino de seu aplicativo.

Manifest Visual Asset Generator
(Figura 45) Gerador de manifesto de ativos visuais

Análise de interface do usuário

As ferramentas da Plataforma Universal do Windows agora têm a capacidade de detectar problemas comuns relacionados à acessibilidade e ao desempenho. Habilitando a ferramenta "Análise de interface do usuário" no menu Selecionar Ferramentas, da janela de Ferramentas de Diagnóstico, esses problemas serão relatados junto com links para artigos úteis explicando como e por que esses problemas devem ser resolvidos. Desenvolver com análise de interface do usuário habilitada prioriza o desempenho e a acessibilidade da interface do usuário no desenvolvimento do seu aplicativo.

Xamarin

O Xamarin 4.4 está incluído no Visual Studio 2017. Para obter mais informações, consulte as Notas de Versão do Xamarin.

Essa versão 4.4 do Xamarin para Visual Studio atualiza as versões Xamarin.iOS 10.8 e Xamarin.Android 7.2.

Correções de bugs para Xamarin

Essa versão inclui as seguintes correções:

  • Os aplicativos de extensão do iOS falham ao compilar, com o erro "não é possível ler os dados de Direitos". (4.4.0.31)
  • Inclui símbolos para relatórios Watson. (4.4.0.6)
  • A implantação Android falha se a solução também contém um projeto do Wix. (4.3.1.39)
  • Deadlock ao abrir alguns projetos do iOS. (4.3.1.39)
  • Os pontos de interrupção não atingirão as referências PCL de segundo nível. (4.3.1.39)
  • Corrige o problema do iOS devido à ausência da tarefa CodeSignNativeLibraries. (4.3.1.39)
  • Erro ao abrir um storyboard depois de se conectar ao servidor Mac. (4.3.1.39)
  • O projeto da biblioteca de classes do Android deve incluir apenas "Compilar usando a Versão do Android" na página de propriedades. (4.3.1.39)
  • O Visual Studio para de responder ao acessar a guia “Ferramentas->Opções->Xamarin->Outros” (4.3.1.39)
  • O Visual Studio para de responder ao carregar uma solução de plataforma cruzada em alguns ambientes. (4.3.1.1)
  • Microsoft.Csharp não referenciado em modelos de projeto do Visual Studio. (4.3.1.1)
  • Não é possível conectar-se ao servidor Mac se o shell do usuário configurado não usa a sintaxe bash. (4.3.1.1)
  • Opção de Enviar para Test Cloud ausente (corrigido no Visual Studio 2013 e Visual Studio 2015).(4.3.1.1)
  • O depurador fica confuso quando o nome da variável ou propriedade é igual ao nome de classe de alguma outra coisa. (4.3.1.1)
  • O conjunto de imagem do catálogo de ativos não pode ser renomeado. (4.3.1.1)
  • A pasta 'Resources' está sendo forçosamente ocultada em projetos de extensão de inspeção. (4.3.1.1)
  • A pasta "assets.xcasset" em "Recursos" não está sendo ocultada em projetos tvOS. (4.3.1.1)

Ferramentas do Visual Studio para Apache Cordova

Esta versão do Visual Studio 2017 inclui as seguintes melhorias:

  • Cordova Simulate – Um novo simulador baseado em navegador que habilita a codificar rapidamente e ver os resultados imediatamente no navegador (Figura 46). Recarregamento dinâmico, simulação de plug-in e suporte para Framework Ionic proporcionam ao Visual Studio o fluxo de trabalho de desenvolvedor mais rápido do mercado.
Cordova simulate
(Figura 46) Cordova Simulate
  • Suporte para iOS 10 e XCode 8 – Uma atualização do agente de servidor remotebuild para desenvolvimento de iOS agora inclui suporte para XCode 8.

  • Colorização de erros – Começamos a colorizar erros no painel de saída do build para facilitar a leitura, porque diagnosticar falhas de build geralmente exige que os desenvolvedores leiam na saída do build (Figura 47). Além disso, adicionamos cabeçalhos para delinear as etapas no processo de build para ajudar os desenvolvedores a identificar onde, no processo de build, ocorreu uma falha.

Colorized Errors
(Figura 47) Erros colorizados
  • Aquisições no produto – Além da nova instalação leve para ajudá-lo a compilar aplicativos Cordova mais rapidamente, agora adicionamos caminhos no Visual Studio para adquirir partes de build adicionais enquanto você continua seu desenvolvimento (Figura 48). Se você não tiver instalado os componentes do Android ou Windows, você poderá obtê-los por meio da barra de implantar, que iniciará o programa de instalação do Visual Studio e orientá-lo pelo processo de instalação.
In-product acquisition
(Figura 48) Aquisição no produto
  • Builds mais rápidos e confiáveis – O novo Instalador do Visual Studio, combinado com a instalação offline de uma cadeia de ferramentas totalmente validada de componentes de terceiros, possibilita builds mais rápidos que também são mais fáceis para solucionar e corrigir problemas.

Importante

Ferramentas de compilação e emuladores para Android e Windows são opcionais. Você pode adquiri-los dinamicamente por meio da barra de menus criar/implantar. Esta versão do Visual Studio não oferece suporte a projetos da Windows Store 8.1. É recomendável que você atualize seus projetos Cordova para Windows 10 de destino. A versão mínima com suporte do Cordova foi elevada para 6.0.0. Projetos que definem uma versão do Cordova inferior à versão 6.0.0 como destino precisarão atualizar seu projeto em config.xml para criar e implantar no Visual Studio 2017.

Ferramentas Node.js para Visual Studio

As Ferramentas Node.js para Visual transformam o Visual Studio um ambiente de desenvolvimento de Node.js poderoso. Esta versão se concentra em estabilidade, desempenho e qualidade geral do produto, incluindo:

  • Melhor integração com o novo serviço de linguagem JavaScript Salsa.
  • Menos uso de memória e da CPU e tempos de carregamento de projeto reduzidos.
  • Suporte para arquivos de modelo Pug.
  • Modelos de projeto mais atualizados.
  • Suporte para a estrutura de teste MOCA 3.x.
  • Diversas correções de bugs.

Agradecemos a todos os parceiros incríveis que possibilitaram essa versão das Ferramentas Node.js para Visual Studio. Para obter mais informações, confira o Projeto de Ferramentas Node.js de software livre no GitHub.

Ferramentas do Visual Studio para Unity

Use o Visual Studio para escrever e depurar jogos do Unity para todas as plataformas. Agora as Ferramentas do Visual Studio para Unity 3 (Figura 49) estão disponíveis para serem instaladas com a carga de trabalho "Desenvolvimento de Jogos com Unity" no novo instalador do Visual Studio 2017. As Ferramentas do Visual Studio para Unity 3 têm como foco melhorar a edição de código e a experiência de depuração para desenvolvedores do Unity, bem como a qualidade geral do produto, incluindo:

  • Suporte de IntelliSense para mensagens do Unity.
  • Colorização de código em mensagens do Unity.
  • Avaliação de expressão aprimorada no depurador do Unity.
  • Assistentes de mensagem do Unity aprimorados para dar suporte a todos os tipos de Unity capazes de receber mensagens.
  • Várias correções de bugs e otimizações.
Code completion session for Unity messages
(Figura 49) Sessão de conclusão de código para mensagens do Unity

Redgate

Ferramentas de Dados de Redgate incluídas com o Visual Studio

Para ampliar os recursos de DevOps do Visual Studio 2017 para desenvolvimento de banco de dados do SQL Server, as Ferramentas de Dados de Redgate, compostas pelo Redgate SQL Prompt Core, Redgate SQL Search e o Redgate ReadyRoll Core agora estão disponíveis na carga de trabalho de Processamento e Armazenamento de Dados.

  • O Redgate ReadyRoll Core, incluído no Visual Studio Enterprise 2017, ajuda você a desenvolver scripts de migração, gerenciar alterações no banco de dados usando o controle do código-fonte e automatizar com segurança as implantações de alterações no banco de dados do SQL Server juntamente com alterações de aplicativos.
  • O Redgate SQL Prompt Core, incluído no Visual Studio Enterprise 2017, ajuda você a escrever o SQL com maior rapidez e precisão com a ajuda do preenchimento de código inteligente. O SQL Prompt preenche automaticamente palavras-chave e objetos do sistema e do banco de dados, e oferece uma coluna de sugestões conforme você digita. Isso resulta em um código mais simples e em menos erros porque você não precisa se lembrar de cada alias ou nome de coluna.
  • Redgate SQL Search, incluído em todas as edições do Visual Studio 2017, aumenta a produtividade, ajudando-o a localizar rapidamente fragmentos de SQL e objetos em vários bancos de dados.

NuGet

O Visual Studio 2017 inclui o NuGet 4.0. Esta versão tem como foco dar suporte à referência de pacote para a maioria dos tipos de projeto, aprimoramentos de qualidade e melhorias de desempenho:

  • Nos projetos WPF, WindowsForms e UWP, agora os pacotes podem ser gerenciados usando referências de pacote.
  • O suporte de restauração do NuGet foi aprimorado para a restauração de solução leve. As restaurações agora podem ser executadas sem a necessidade de carregar projetos.
  • Em projetos do .NET Core e do ASP.NET Core, os pacotes agora são gerenciados usando referências de pacote.
  • No Visual Studio 2017 e superior, o NuGet.config do computador está localizado em %PROGRAMFILES(X86)%\NuGet\Config\NuGet.config. A partir de agora, o nuget.exe v4.0.0 + também considerará o novo local para a configuração do computador. O NuGet.config em dados de programa não será mais referenciado implicitamente nem considerado para mesclagem hierárquica de nuget.config.

Ferramentas para aplicativos XAML

Editar XAML e Continuar

Agora o Visual Studio permite que você edite o XAML enquanto o WPF ou o aplicativo Universal do Windows está em execução. Ao depurar seu aplicativo no Visual Studio, é possível fazer uma alteração na marcação no editor de código XAML, e a alteração será refletida no aplicativo em execução sem precisar recompilar.

Aprimoramentos de produtividade do Editor XAML

  • Filtragem IntelliSense – Ao digitar o XAML, a lista de preenchimento só exibirá os tipos que corresponderem e será selecionada a correspondência mais próxima.
  • IntelliSense para x:Bind – Habilitamos o preenchimento do IntelliSense para x:Bind ao associar a Caminho e Eventos.
  • Preenchimento de Namespace – Se não houver referência ao namespace (Figura 50), você não terá suporte do IntelliSense ao digitar. Quando você terminar de digitar, receberá suporte de sugestões de lâmpada para gerar e inserir o prefixo para o tipo e adicionar a definição de namespace em seu documento XAML.
Code completion session for IntelliSense_without_namespace
(Figura 50) Namespace IntelliSense_without
  • Para tipos que exigem um prefixo, o IntelliSense oferecerá o preenchimento automático do prefixo se já existir uma referência ao namespace.

  • Refatoração de renomeação de prefixo de namespace – você poderá invocar a ação renomear (Figura 51) no menu de contexto ou por meio do atalho de teclado Ctrl+R+R quando o cursor estiver sobre o prefixo. Também é possível visualizar as alterações antes de aplicá-las.
Namespace prefix rename
(Figura 51) Renomear prefixo de namespace

  • Remover e classificar namespaces – agora é possível remover namespaces desnecessários (Figura 52) e classificá-los no menu de contexto ou por meio do atalho de teclado Ctrl+R+G. Se seu documento XAML tiver namespaces desnecessários, você também verá uma lâmpada que lhe dará a opção de removê-los.
lightbulb_remove unnecessary namespace
(Figura 52) Namespace desnecessário lightbulb_remove

  • Compatível com .editorconfig no editor XAML – é possível definir configurações de indent_style, indent_size e tab_width no arquivo .editorconfig, que será usado em vez das configurações definidas em Ferramentas >> Opções.

  • Visualizador de estrutura para o editor XAML – O visualizador de estrutura (ou seja, guias de recuo) (Figura 53) agora é interno ao Visual Studio e não é necessária uma extensão separada. Esse recurso fornece o contexto do bloco de código no qual você está trabalhando rapidamente, sem necessidade de rolagem.

Structure Visualizer for XAML editor
(Figura 53) Visualizador de Estrutura para o editor XAML

Melhorias de desempenho XAML

  • Melhor desempenho das mudanças de guia XAML – O desempenho das mudanças de guia XAML melhorou significativamente. Em amostras de projetos do cliente, temos visto o tempo de alternância reduzir em mais de 90%.
  • Resolução de atrasos de digitação do editor XAML – A digitação XAML agora é mais rápida do que nunca. Fizemos vários investimentos para reduzir os atrasos de digitação do editor XAML, e a maioria dos desenvolvedores deve achar o editor XAML e o XAML IntelliSense mais ágeis na resposta. Isso será mais aparente ao editar um arquivo XAML em projetos que consomem controles de terceiros ou grandes bibliotecas de controle.

Data Tools e SQL Server

SQL Server Data Tools

A atualização mais recente do SQL Server Data Tools foi incluída no Visual Studio 2017, que habilita o suporte aos recursos mais recentes no Banco de Dados SQL do Azure e SQL Server 2016.

Esta versão reúne a facilidade de desenvolvimento, teste e implantação de um banco de dados em todas as versões com suporte de plataformas do SQL Server e banco de dados - locais e nuvem - usando o Visual Studio. A versão também inclui aprimoramentos de área de superfície de programação do banco de dados e melhora a experiência de conexão SQL no SQL Server Data Tools, que agora detecta automaticamente o SQL Server e os bancos de dados SQL do Azure ao quais você pode se conectar com um simples clique.

Além disso, o Visual Studio 2017 aborda novos tipos de autenticação de Banco de Dados SQL do Azure, bem como a autenticação integrada e de senha do Azure Active Directory.

Ferramentas de Análise do Desenvolvedor

O Visual Studio 2017 inclui as Ferramentas de Análise para Desenvolvedor v8.6, com as seguintes melhorias:

  • Agora o CodeLens apresenta dados de depuração e de telemetria dinâmica em projetos que enviam dados para um recurso do Application Insights.
  • O CodeLens para exceções vincula-se à análises de aplicativo para mostrar o impacto de uma exceção sobre os usuários.
  • O CodeLens mostra solicitações das sessões de depuração local em projetos com o SDK do Application Insights.
  • O CodeLens para solicitações e exceções agora está disponível em projetos do Visual Basic.
  • Agora as Live Metrics serão exibidas em uma notificação do sistema depois que você publicar seu aplicativo no Visual Studio.
  • Agora as informações sobre preços do Application Insights são mostradas na janela Configuração.
  • Agora os eventos de disponibilidade são mostrados nas ferramentas Pesquisa e Tendências.
  • Agora os eventos nas ferramentas de pesquisa e diagnóstico mostram contagens da frequência de ocorrência com base na amostragem adaptável no SDK.
  • O CodeLens mostra as exceções ocorridas durante as sessões de depuração local para projetos com o SDK do Application Insights.
  • Novo design para a janela Configuração do Application Insights.
  • Agora o CodeLens para exceções tem um link para Análises de Aplicativo para ver o impacto que uma exceção teve sobre os usuários.
  • Agora o SDK JavaScript do Application Insights para coletar a telemetria da exibição de página é adicionado quando o Application Insights é adicionado a um projeto.
  • Agora as anotações de publicação são enviadas ao seu recurso do Application Insights quando você publica seu aplicativo no Visual Studio.
  • Agora os marcadores de barra de rolagem são agora exibidos para indicadores CodeLens amarelos e vermelhos do Application Insights.

Saiba mais sobre o Application Insights na documentação do Microsoft Azure.

Office Developer Tools para Visual Studio

Esta versão inclui Office Developer Tools com os últimos recursos e atualizações, da seguinte maneira:

  • Novos modelos de suplemento do Office específicos para o Excel, Word, PowerPoint e Outlook.
  • Suporte para novos recursos de suplemento do Office, como comandos de suplemento, malha da interface do usuário e uma nova versão do Office.js.
  • Novo código de inicialização nos modelos que mostrarão como começar com os novos recursos do suplemento do Office.
  • Suporte para SharePoint 2016 em soluções e modelos de suplemento do SharePoint.

Validação dinâmica de dependência de arquitetura

Se você tiver configurado diagramas de Validação de Dependência (também conhecidos como Diagramas de camada) no Visual Studio Enterprise, você obterá notificações em tempo real (Figura 54) de violações das regras de dependência de arquitetura enquanto digita seu código no Editor de Códigos. Os erros são exibidos na Lista de Erros e os rabiscos serão exibidos no editor de texto que mostra o local exato da violação. Agora há menor probabilidade de introduzir dependências indesejáveis.

Live Architecture Dependency validation
(Figura 54) Validação dinâmica de dependência de arquitetura

Prompt de Comando do Desenvolvedor

Os scripts do Prompt de Comando do Desenvolvedor para o Visual Studio 2017 foram refeitos para dar suporte à nova experiência de instalação:

  • As variáveis de ambiente refletirão somente as cargas de trabalho instaladas.
  • O atalho do Prompt de Comando do Desenvolvedor para Visual Studio deve ser compatível com versões anteriores.
  • Agora é possível configurar os scripts do Prompt de Comando do Desenvolvedor por meio de argumentos de linha de comando:
    • No prompt de comando, chame common7\tools\vsdevcmd.bat -help (do diretório de instalação do Visual Studio) para obter detalhes.

SDK do Azure para .NET

O Azure SDK para Visual Studio .NET agora está disponível para ser instalado com o novo instalador do Visual Studio. Se você já tiver instalado o Azure SDK para .NET usando o Web Platform Installer, agora você poderá obter os mesmos componentes instalando a carga de trabalho do Azure usando o novo instalador do Visual Studio. Os pacotes que são instalados estão no mesmo nível de recurso da versão 2.9.5 do SDK. Para esta versão do Visual Studio e todas as versões futuras, o Azure SDK para .NET só estará disponível pelo instalador do Visual Studio.


Release Notes IconVisual Studio 2017 versão 15.0.1

lançado em 14 de março de 2017

Principais problemas corrigidos na versão 15.0.1

Estes são os problemas relatados por clientes e solucionados na versão 15.0.1:


Release Notes IconVisual Studio 2017 versão 15.0.2

lançado em 28 de março de 2017

Principais problemas corrigidos na versão 15.0.2

Estes são os problemas relatados por clientes e solucionados na versão 15.0.2:


Release Notes IconVisual Studio 2017 versão 15.0.3

lançado em 31 de março de 2017

Resumo de atualizações na versão 15.0.3

Atualmente damos suporte às ferramentas e APIs Xcode 8.3, iOS 10.3, 3.2, watchOS e tvOS 10.2 na extensão Xamarin.VS para Visual Studio 2017.


Release Notes IconVisual Studio 2017 versão 15.0.4

lançado em 23 de maio de 2017

Principais problemas corrigidos na versão 15.0.4

Os cenários de instalação offline não exigem mais acesso à Internet.


Release Notes IconVisual Studio 2017 versão 15.0.5

lançado em 18 de setembro de 2017

Principais problemas corrigidos na versão 15.0.5

Estes são os problemas relatados por clientes e solucionados na versão 15.0.5:


Release Notes IconVisual Studio 2017 versão 15.0.6

lançado em 14 de novembro de 2017

Resumo de atualizações na versão 15.0.6

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

A Microsoft liberou os comunicados de segurança do .NET Core e do ASP.NET Core. Mais detalhes estão disponíveis nos anúncios correspondentes nos repositórios do .NET Core e do ASP.NET Core. Observe as seguintes informações:

CVE-2017-8585 Um Certificado Malformado pode causar Ataque de Negação de Serviço

Há uma vulnerabilidade de segurança no .NET Core 1.0, 1.1 e 2.0, em que um certificado malformado ou outros dados formatados em ASN.1 podem levar a um ataque de negação de serviço por meio de um loop infinito no Linux ou no macOS. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.8, 1.1.5 e 2.0.1. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.0.3 ou 1.1.5.

CVE-2017-8700 O bypass do CORS pode habilitar a Divulgação de Informações Confidenciais

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0 e 1.1, em que o CORS (Compartilhamento de Recursos entre Origens) pode ser ignorado, levando à divulgação de informações confidenciais.

CVE-2017-11879 O Redirecionamento Aberto pode causar Elevação de Privilégio

Há uma vulnerabilidade de segurança no ASP.NET Core 2.0, em que ocorre o Redirecionamento Aberto, levando a uma Elevação de Privilégio.

CVE-2017-11770 Vulnerabilidade de Ataque de Negação de Serviço

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0, 1.1 e 2.0, quando o aplicativo é hospedado por meio do Http.Sys do Windows, em que uma solicitação malformada pode levar a um Ataque de Negação de Serviço. Os novos projetos criados com ASP.NET Core 1.0 e ASP.NET Core 1.1 agora usarão versões de pacote que incluem as atualizações de segurança mencionadas acima. Quanto aos projetos existentes, os usuários podem atualizar os pacotes para as versões mais recentes usando o diálogo Gerenciar Pacotes do NuGet.


Release Notes IconVisual Studio 2017 versão 15.0.7

lançado em 6 de dezembro de 2017

Resumo de atualizações na versão 15.0.7

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

A Microsoft liberou os comunicados de segurança do ASP.NET Core. Mais detalhes estão disponíveis nos anúncios correspondentes no repositório do ASP.NET Core. Observe as seguintes informações:

CVE-2017-8700 O bypass do CORS pode habilitar a Divulgação de Informações Confidenciais

Há uma vulnerabilidade de segurança no ASP.NET Core 1.0 e 1.1, em que o CORS (Compartilhamento de Recursos entre Origens) pode ser ignorado, levando à divulgação de informações confidenciais. Os novos projetos criados com ASP.NET Core 1.0 e ASP.NET Core 1.1 agora usarão versões de pacote que incluem a atualização de segurança mencionada acima. Quanto aos projetos existentes, os usuários podem atualizar os pacotes para as versões mais recentes usando o diálogo Gerenciar Pacotes do NuGet.


Release Notes IconVisual Studio 2017 versão 15.0.8

lançado em 9 de janeiro de 2018

Resumo de atualizações na versão 15.0.8

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0786 Bypass da funcionalidade de segurança na validação do certificado X509

A Microsoft está publicando este aviso de segurança para fornecer informações sobre uma vulnerabilidade nas versões públicas do .NET Core 1.0, 1.1 e 2.0. Esse comunicado também fornece orientação sobre o que os desenvolvedores podem fazer para atualizar seus aplicativos corretamente. Esse comunicado de segurança também é aplicável ao .NET nativo para UWP.

A Microsoft está ciente de uma vulnerabilidade de segurança nas versões públicas do .NET Core em que um invasor pode apresentar um certificado que é marcado como inválido para um uso específico, mas um componente o usa para essa finalidade. Essa ação ignora a marcação de uso avançado de chave.

A atualização de segurança resolve a vulnerabilidade, garantindo que os componentes do .NET Core validem completamente os certificados. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.9, 1.1.6 e 2.0.5. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.1.4 ou 1.1.7.

CVE-2018-0764 Ataque de Negação de Serviço durante a análise de documentos XML

A Microsoft está publicando este aviso de segurança para fornecer informações sobre uma vulnerabilidade nas versões públicas do .NET Core 1.0, 1.1 e 2.0. Esse comunicado também fornece orientação sobre o que os desenvolvedores podem fazer para atualizar seus aplicativos corretamente.

A Microsoft está ciente de uma vulnerabilidade de negação de serviço em todas as versões públicas do .NET Core devido ao processamento inadequado de documentos XML. Um invasor que explorasse com êxito essa vulnerabilidade poderia causar uma negação de serviço em relação a um aplicativo .NET. Um invasor não autenticado remoto pode explorar essa vulnerabilidade emitindo solicitações especialmente criadas para um aplicativo .NET Core.

A atualização resolve a vulnerabilidade corrigindo como o .NET Core manipula o processamento do documento XML. É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.9, 1.1.6 e 2.0.5. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para a versão 2.1.4 ou 1.1.7.


Release Notes IconVisual Studio 2017 versão 15.0.9

lançado em 2 de fevereiro de 2018

Resumo de atualizações na versão 15.0.9

  • O compilador MSVC foi atualizado com suporte para a opção /Qspectre, que inserirá automaticamente uma barreira de especulação quando o compilador detectar instâncias da variante 1 do Spectre. Para obter mais informações sobre /Qspectre, consulte o Blog da equipe do Visual C++.
  • Atualizamos para o Java™ Development Kit 8, Atualização 161 (JDK versão 8u161) para corrigir erros de download.

Release Notes IconVisual Studio 2017 versão 15.0.10

lançado em 21 de fevereiro de 2018

Resumo de atualizações na versão 15.0.10

Team Explorer compatível com TLSv1.2. Atualizamos o Git e os componentes do Gerenciador de Credenciais do Git fornecidos com o Visual Studio. Além disso, atualizamos o componente opcional Git para Windows. Esta atualização permite ao Git conectar-se aos serviços cujo suporte foi preterido para TLSv1 e TLSv1.1 em prol do TLSv1.2.


Release Notes IconVisual Studio 2017 versão 15.0.11

lançado em 13 de março de 2018

Resumo de atualizações na versão 15.0.11

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0875 Avisos de Segurança da Microsoft para .NET Core

A Microsoft está ciente de uma vulnerabilidade de segurança nas versões públicas do .NET Core, na qual um arquivo mal-intencionado ou uma solicitação da Web pode causar um ataque de DoS (negação de serviço).

  • É recomendável que os administradores do sistema atualizem os runtimes do .NET Core para as versões 1.0.10, 1.1.7 e 2.0.6. Os desenvolvedores são aconselhados a atualizar o SDK do .NET Core para as versões 1.1.8 ou 2.1.101.

Release Notes IconVisual Studio 2017 versão 15.0.12

lançado em 10 de abril de 2018

Resumo de atualizações na versão 15.0.12

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-1037 Avisos de Segurança da Microsoft para vulnerabilidade de divulgação de informações confidenciais do Microsoft Visual Studio

Uma vulnerabilidade de divulgação de informações confidenciais ocorre quando o Visual Studio divulga de forma inapropriada conteúdos limitados de memória não inicializada ao compilar arquivos PDB (banco de dados de programa). Um invasor que tenha tirado proveito dessa divulgação de informações confidenciais poderia visualizar uma memória não inicializada da instância do Visual Studio usada para compilar o arquivo PDB.

Para tirar proveito desta vulnerabilidade, um invasor precisaria ter acesso a um arquivo PDB infectado criado usando uma versão vulnerável do Visual Studio. Um invasor não teria como forçar um desenvolvedor a produzir essa divulgação de informações confidenciais.

A atualização de segurança resolve a vulnerabilidade, corrigindo como os arquivos PDB são gerados quando um projeto é compilado.


Release Notes IconVisual Studio 2017 versão 15.0.13

lançado em 26 de abril de 2018

Resumo de atualizações na versão 15.0.13

  • Atualizamos para o Java™ Development Kit 8, Atualização 172 (JDK versão 8u172).

Release Notes IconVisual Studio 2017 versão 15.0.14

lançado em 31 de maio de 2018

Resumo de atualizações na versão 15.0.14

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-11235 Consultoria de Segurança da Microsoft para vulnerabilidade de segurança do Git

Corrigimos uma vulnerabilidade de segurança no Git que foi divulgada pela comunidade do Git. A vulnerabilidade pode levar à execução de código arbitrário quando um usuário clona um repositório mal-intencionado.


Release Notes IconVisual Studio 2017 versão 15.0.15

lançado em 10 de julho de 2018

Resumo de atualizações na versão 15.0.15

Avisos da Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8172 Vulnerabilidade de execução de código remoto do Visual Studio

Uma vulnerabilidade de execução de código remoto que pode levar à exploração do computador de um usuário, abrindo um arquivo de recurso ou projeto especialmente criado. A atualização de segurança resolve a vulnerabilidade corrigindo o modo como o Visual Studio verifica a marcação de origem de um arquivo.

CVE-2018-8260 Vulnerabilidade de execução de código remoto do .NET Framework

Existe uma vulnerabilidade de execução de código remoto no software .NET que pode levar à exploração do computador de um usuário, permitindo que os invasores executem código arbitrário no contexto do usuário atual. A atualização de segurança resolve a vulnerabilidade corrigindo o modo como o .NET verifica a marcação de origem de um arquivo.

CVE-2018-8232 Vulnerabilidade de falsificação do .NET Microsoft Macro Assembler

Vulnerabilidade para falsificação relacionada a validação de código incorreta pelo Microsoft Macro Assembler. A atualização de segurança resolve a vulnerabilidade, garantindo que o Microsoft Macro Assembler valide a lógica de código adequadamente.

CVE-2018-8171 Vulnerabilidade de bypass da funcionalidade de segurança do ASP.NET Core

Uma vulnerabilidade de bypass de recurso de segurança do ASP.NET Core existe quando o número de tentativas de logon incorretas não é validado. Isso pode levar a um invasor a tentar um número infinito de tentativas de autenticação. A atualização resolve a vulnerabilidade, validando o número de tentativas de logon incorretas.


Release Notes IconVisual Studio 2017 versão 15.0.16

lançado em 2 de agosto de 2018

Resumo de atualizações na versão 15.0.16

  • Agora, esta versão instala o Java™ Development Kit 8, Atualização 181 (JDK versão 8u181).

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-8356 Vulnerabilidade de bypass da funcionalidade de segurança do .NET Core

A Microsoft está ciente de uma vulnerabilidade de bypass de recurso que ocorre quando o .NET Core não valida certificados da maneira correta. Se um invasor conseguir explorar essa vulnerabilidade, ele poderia apresentar um certificado expirado quando solicitado. A atualização resolve a vulnerabilidade corrigindo a maneira como o .NET Core manipula a validação de certificados.


Release Notes IconVisual Studio 2017 versão 15.0.17

lançado em 14 de agosto de 2018

Resumo de atualizações na versão 15.0.17

Aviso de Consultoria de Segurança do Visual Studio 2017 versão 15.0

CVE-2018-0952 Vulnerabilidade de Elevação de Privilégio do Coletor Padrão do Hub de Diagnóstico

Há uma vulnerabilidade de elevação de privilégio em um serviço do Visual Studio que pode levar a privilégios do sistema por um usuário não administrador durante a gravação de arquivos. Um invasor que aproveitou essa vulnerabilidade pôde gravar arquivos como sistema tendo apenas o acesso no nível de usuário. Esta atualização de segurança resolve esse problema pela representação do usuário atual para validar o acesso ao local do arquivo.


Release Notes IconVisual Studio 2017 versão 15.0.18

lançado em 28 de agosto de 2018

Principais problemas corrigidos na versão 15.0.18


Problemas Conhecidos

Estamos empenhados em ouvir seus comentários. Visite o site Comunidade de Desenvolvedores para encontrar os últimos problemas, registrar novos problemas e votar a favor dos problemas existentes.


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 Report a Problem Icon 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.

Developer Tools Blogs


Histórico de notas de versão do Visual Studio 2017

Para saber mais sobre as versões anteriores do Visual Studio 2017, confira a página Histórico de Notas de Versão do Visual Studio 2017.


Início da página