Team Foundation Server 2017 Atualização 1

Last Update: 25/07/2017

Para ver as últimas atualizações, visite as Notas de versão em inglês.

Data de lançamento: 7 de março de 2017

Temos o prazer de anunciar o lançamento do Team Foundation Server 2017 Atualização 1. Esta nova versão inclui nossos mais recentes aprimoramentos e inovações de recursos. É possível encontrar informações sobre os requisitos na página Team Foundation Server Requirements and Compatibility (Requisitos e compatibilidade do Team Foundation Server).

Baixe: Team Foundation Server 2017 Atualização 2017

Para saber mais sobre outros downloads relacionados, consulte a página Downloads.

Novidades no TFS 2017 Atualização 1


Problemas conhecidos


O Que Há de Novo

Experiências mais pessoais

Home page da coleção personalizada

Com esta versão, é muito fácil acessar os artefatos mais importantes para você. A página da coleção reprojetada (Figura 1) oferece uma experiência personalizada que mostra os Projetos, os Favoritos, o Trabalho e as Solicitações Pull importantes para você. Dessa forma, o seu dia começará muito melhor. Você poderá acessar um único lugar e encontrar rapidamente tudo o que você precisa e que é importante pra você. Confira Account hub pages (Páginas de hub da conta) para obter mais informações.

(Figura 1) Página de coleção reprojetada

Seu projeto obtém identidade

Agora você pode ir a um lugar para obter uma visão geral do seu projeto. Com a nova página de projeto, é fácil exibir e editar a descrição do projeto, exibir ou adicionar membros, bem como verificar a última atividade. Começar um novo projeto e aproveitar todas as funcionalidades internas de DevOps do TFS está ainda mais fácil.

Melhorias no controle de versão

Alterações de permissões de administrador do repositório

Para repositórios do Git, dividimos a permissão Administrar em várias permissões granulares. Isso dá a você mais flexibilidade para decidir quem pode realizar quais ações. Por exemplo, você pode permitir que qualquer pessoa na sua conta crie novos repositórios, mas não permitir que excluam ou adicionem novos usuários em um repositório. As novas permissões são:

  • Gerenciar permissões: adicionar/remover usuários e permissões.
  • Criar: criar um novo repositório.
  • Excluir: excluir um repositório.
  • Renomear: renomear um repositório.
  • Editar políticas: configurar políticas de branch.
  • Remover bloqueios de outras pessoas: remover bloqueios de branch configurados por outro usuário.

Essas permissões podem ser aplicadas a todos os repositórios de um projeto ou a repositórios individuais.

Melhorias da política do branch

Na seção Políticas (Figura 2), as políticas obrigatórias e opcionais agora estão agrupadas em seções. Isso esclarece exatamente quais políticas são obrigatórias para concluir uma PR. Os revisores necessários também são resumidos na seção obrigatória e só serão marcados como aprovados quando todos os revisores obrigatórios tiverem sido aprovados.

(Figura 2) Seção Políticas

Se você precisar ignorar políticas (e têm as permissões necessárias), uma nova experiência será exibida na caixa de diálogo Concluir (Figura 3). Todas as políticas que não forem atendidas serão mostradas em uma mensagem de aviso e uma nova opção explícita para aceitar substituir as políticas será exibida. Selecionar a opção de substituição habilitará a ação Substituir e Concluir, que concluirá a solicitação de pull, substituindo quaisquer políticas que tiverem falhado.

(Figura 3) Caixa de diálogo Concluir

Dar suporte a exclusões de arquivos na política de revisor necessária

Ao especificar os revisores necessários para caminhos de arquivo específicos, você pode excluir os caminhos usando um “!” prefixo para o caminho que você deseja excluir. Por exemplo, você pode usá-lo para excluir uma pasta de documentos da aprovação normalmente necessária (Figura 4).

(Figura 4) Suporte à exclusão de arquivo

Repositório de importação

Agora você pode importar um repositório Git do GitHub, do BitBucket, do GitLab ou de outros locais. Importar para um repositório novo ou para algum vazio existente. Para obter mais informações, confira Import a Git repo (Importar um repositório Git).

Adicionar .gitignore durante a criação de repositório

Ao criar um novo repositório Git, agora você pode adicionar e associar um arquivo .gitignore ao repositório. Um arquivo .gitignore especifica o que os arquivos Git devem ignorar ao executar uma confirmação.

A caixa de diálogo permite aos usuários selecionar um dos muitos modelos de .gitignore disponíveis (Figura 5).

(Figura 5) Adicionar .gitignore durante a criação do repositório

Cherry-pick e reverter

Adicionamos dois novos recursos que facilitam portar ou reverter alterações do portal da Web: Cherry-pick e Reverter.

Use o comando cherry-pick para portar alterações em uma solicitação pull para vários branches. Um caso de uso típico é quando um bug precisa de hotfix, mas também precisa ser corrigido na linha principal. Depois de criar a solicitação pull que contém a correção para o branch do hotfix, você poderá facilmente executar o cherry-pick da mesma correção para o branch mestre. Confira Copy changes with cherry-pick (Copiar alterações com cherry-pick) para obter mais informações.

Você pode reverter as alterações em solicitações pull concluídas. Encontre a solicitação pull que introduziu a alteração incorreta, clique em Reverter e siga as etapas para criar uma solicitação pull que desfaz as alterações indesejadas. Para obter mais informações, confira desfazer alterações com o Git.

Branch de comparação configurável

Agora você pode definir seu branch de comparação como um branch diferente do padrão. Essa configuração será lembrada com base no usuário. As solicitações pull e os novos branches criados na página Branches serão baseadas nos branches de comparação que você definir. Confira Gerenciar branches para obter mais informações.

Localizar um arquivo ou pasta

Você pode pesquisar rapidamente um arquivo ou pasta em um repositório usando hub Código no seu projeto do Team Services. O resultado lista os itens da pasta atual seguidos por arquivos e pastas de todo o repositório.

Para qualquer repositório Git, acesse a caixa de controle de caminho (Figura 6) e comece a digitar para iniciar uma experiência de pesquisa de navegação para o arquivo ou pasta pela qual você está procurando.

(Figura 6) Localizar um arquivo ou pasta

Confirmação para excluir repositório

Para impedir exclusões acidentais de repositório, agora você precisa digitar o nome do repositório que deseja excluir para confirmar a ação.

Favoritos do repositório

Agora você pode adicionar aos favoritos os repositórios com os quais você trabalha com mais frequência. No seletor de repositório (Figura 7), você verá as guias Todos os repositórios e Favoritos. Clique na estrela para adicionar um repositório à sua lista de Favoritos.

(Figura 7) Favoritos do repositório

Pesquisar um arquivo ou pasta no histórico de confirmações

Semelhante à guia Arquivos, agora você pode pesquisar um arquivo ou pasta em um repositório e ver o histórico de confirmações desse arquivo ou pasta. Para qualquer repositório Git, acesse a caixa de controle de caminho na guia Histórico (Figura 8) e comece a digitar para iniciar uma experiência de pesquisa de histórico para o arquivo ou pasta pela qual você está procurando.

(Figura 8) Histórico de confirmações

Melhorias na página de confirmação

Tornamos sua experiência na página de detalhes da confirmação e de histórico de confirmações atualizada e altamente eficaz. Agora você pode localizar e tomar decisões baseadas em informações importantes relacionadas à confirmação em uma exibição com vista panorâmica.

Veja um exemplo de página de detalhes da confirmação (Figura 9):

(Figura 9) Detalhes da confirmação

Veja a página de histórico de confirmações (Figura 10):

(Figura 10) Histórico de confirmações

Pesquisar confirmações em branches

Agora você pode pesquisar uma confirmação em um branch ou marcação especificado clicando no botão Pesquisar em branches na página de detalhes da confirmação (Figura 11).

(Figura 11) Pesquisa de confirmação

Você pode selecionar marcas e branches na janela para exibir, mesmo se esses branches e marcações não contiverem a confirmação específica (Figura 12).

(Figura 12) Caixa de diálogo de pesquisa de confirmação

Barra de ferramentas de controle de discussão

O Markdown é uma ferramenta poderosa ao adicionar comentários a solicitações pull, mas pode ser difícil lembrar a sintaxe. Para facilitar essa tarefa, adicionamos uma barra de ferramentas para o controle de discussão (Figura 13). Isso inserirá a sintaxe de Markdown apropriada para adicionar a formatação comum. Títulos, negrito, itálico, links, código e listas podem todos ser adicionados usando os novos controles de barra de ferramentas, e recursos como menções @ e # podem ser inseridos usando a barra de ferramentas. Os atalhos de teclado estão disponíveis para negrito (CTRL + B), itálico (CTRL + I) e criação de links (CTRL + K).

(Figura 13) Barra de ferramentas de discussão

Melhorias de comentários de solicitações pull

Para ajudar você a melhor identificar os novos comentários em suas PRs, adicionamos decorações às novas respostas em threads de discussão existentes. Os comentários na exibição dos arquivos também destacarão os threads que tiverem novos comentários (Figura 14).

(Figura 14) Aprimoramentos dos comentários de PR

Exibir solicitações pull para uma confirmação

Agora você pode exibir todas as solicitações pull associadas para uma confirmação na página Detalhes da confirmação. Na imagem abaixo (Figura 15), você pode ver que:

  • No menu suspenso de solicitações de pull, há duas solicitações de pull associadas a essa confirmação.
  • A solicitação de pull #2 trouxe essa confirmação para o mestre.
  • A mesma confirmação foi trazida para o ramificação 4 por meio da solicitação de pull nº 1.

(Figura 15) PR nas confirmações

Seguir uma solicitação pull

Agora você pode seguir uma solicitação pull para ser notificado das alterações por meio de alertas de email. A opção de Seguir está disponível no menu de contexto (Figura 16).

(Figura 16) Seguir uma solicitação pull

Reiniciar mesclagem de solicitação pull

Outra opção foi adicionada para a execução de novas tentativas de mesclagem para uma solicitação pull na qual o branch de destino foi atualizado. A opção Reiniciar mesclagem é útil quando você deseja verificar se alterações recentes no branch de destino ainda não criaram conflitos nem interromperam o build da sua solicitação pull.

Conclusão bloqueada em solicitações pull rejeitadas

Os branches com a política de revisão de código definida mostrarão que a PR não poderá ser concluída se ela for rejeitada por um ou mais revisores. Muitos de vocês esperam esse comportamento, por isso alteramos o comportamento padrão. Para equipes que desejam o comportamento original, há uma nova opção na página de configuração de política de branch (Figura 17).

(Figura 17) Política de revisão de código

Markdown na descrição da solicitação pull

Aprimore a descrição da solicitação pull com Markdown. O mesmo suporte de Markdown que você conhece e adora em comentários de solicitações pull agora está disponível na descrição da solicitação pull.

Anexos em discussões de solicitações pull

Agora você pode adicionar anexos aos seus comentários de solicitações pull (Figura 18). Os anexos podem ser adicionados usando ações do tipo "arrastar e soltar" ou por navegação. Para imagens, os anexos podem ser adicionados simplesmente ao colá-los da área de transferência. Adicionar um anexo atualiza automaticamente o comentário de modo a incluir uma referência de Markdown no novo anexo.

(Figura 18) Anexos em discussões PR

Realçar as solicitações pull que têm atualizações

Está mais fácil do que nunca ver as atualizações das suas solicitações pull. Na exibição de lista de PR (Figura 19), as PRs atualizadas após a última visualização são mostradas com uma nova coluna de atualizações que mostra o acúmulo das alterações.

(Figura 19) Arquivos atualizados de PR

Quando você exibir uma PR com as alterações, verá uma mensagem de resumo semelhante na visão geral. Novos threads de comentário e pushes são realçados em azul (Figura 20). Ao clicar no link Exibir atualizações de código, você navegará até a exibição Arquivos, na qual será exibida uma comparação das novas alterações em relação à última exibição da solicitação pull. Esse recurso facilita o acompanhamento de uma solicitação pull na qual o autor fez alterações em resposta aos comentários.

(Figura 20) Resumo da PR

Política de branch para a estratégia de mesclagem de solicitações pull

Adicionamos uma nova política de branch (Figura 21) que permite definir uma estratégia para mesclar as solicitações pull para cada branch. Anteriormente, você decidia mesclar ou comprimir no momento em que a PR era concluída. Se habilitada, essa política substituirá suas preferências impondo o requisito definido pela política.

(Figura 21) Política de branch

Expor informações sobre conflitos de mesclagem

Se houver arquivos com conflitos em uma solicitação pull, os detalhes sobre esses conflitos ficarão visíveis na visão geral (Figura 22). Cada arquivo conflitante será listado juntamente com um breve resumo do tipo de conflito entre os branches de origem e de destino.

(Figura 22) Mesclar conflitos

Botão de visualização de markdown

Ao exibir uma comparação de um arquivo markdown em uma solicitação pull, push ou confirmação, agora você pode alternar facilmente para ver a exibição renderizada resultante.

Melhorias no Acompanhamento de Item de Trabalho

Experiência de pesquisa aprimorada para campos de identidade com escopo

Com esta versão, atualizamos o comportamento de seletor de identidade para campos de identidade com escopo, ou seja, os campos de identidade que são configurados para permitir somente a atribuição a um grupo específico de usuários. Na experiência atualizada, resultados da pesquisa e de lista MRU do seletor retornarão apenas os membros do grupo configurado, em vez de mostrar resultados para todos os usuários válidos para a coleção.

Aprimoramentos de build

Reverter definições de build

Você pode reverter uma definição de build para uma versão anterior. Você pode fazer isso quando editar uma definição de build indo para a guia Histórico.

Desabilitar a sincronização e o check-out de fontes em um build

Como opção, você pode desabilitar a sincronização e o check-out automáticos de fontes para Git. Isso permitirá que você lide com as operações de origem em uma tarefa ou script em vez de depender do comportamento interno do agente. Todas as variáveis padrão relacionadas à fonte como Source.Version, Source.Branch e Build.SourcesDirectory estão definidas.

Clone superficial do Git e git-lfs

O agente de build agora dá suporte a clone superficial do Git e git-lfs. Para obter mais detalhes, consulte a Página de repositório de definição de build.

Controle de versão de tarefa das definições de Build e de Versão

Concedemos a você o controle da versão principal de uma tarefa executada em seu build ou versão. Essa alteração resultará em um número menor de erros imprevisíveis causados pelas atualizações automáticas para a versão do agente e da tarefa. Agora você pode especificar a versão principal da tarefa na guia Build da sua definição ou na guia Ambientes da sua definição de versão.

Quando uma versão secundária for lançada (por exemplo, 1.2 para 1.3), você obterá automaticamente essa alteração em seu build. No entanto, se uma nova versão principal for lançada (por exemplo, 2.0), seu build ficará bloqueado para a versão 1.3 até você editar a definição e alterar manualmente para a nova versão principal. Um sinalizador na definição de build o alertará das novas versões principais.

Pagamento obrigatório para Gerenciamento de Pacotes

Para continuar usando o Gerenciamento de Pacotes, você precisará de uma assinatura do Visual Studio Enterprise ou adquirir uma licença do Gerenciamento de Pacotes no Marketplace. Você pode ler mais sobre o Gerenciamento de Pacotes de licenciamento.

Melhorias no pacote

Exibições de versão no gerenciamento de pacotes

Adicionamos um novo recurso ao Gerenciamento de Pacotes chamado exibições de versão (Figura 23). As exibições de versão representam um subconjunto das versões dos pacotes em seu feed que você promove nessa exibição de versão. Ao criar uma exibição de versão e compartilhá-la com os consumidores do seu pacote, você poderá controlar em quais versões haverá dependências. Isso é particularmente útil em cenários de integração contínua em que frequentemente são publicadas versões de pacote atualizadas, mas talvez você não queira anunciar ou dar suporte a cada uma das versões publicadas.

Procure o início rápido no acesso via Web ou saiba mais sobre as exibições de versão para o pacote CI/CD para uma introdução.

(Figura 23) Exibições de versão

npm no gerenciamento de pacotes

Os feeds do gerenciamento de pacotes agora dão suporte a pacotes npm para desenvolvimento em Node.js e JavaScript. Além disso, os feeds do npm dão suporte a npmjs.com como uma "fonte upstream com cache". Ao habilitar essa opção, o seu feed usará proxy e armazenará em cache de maneira transparente os pacotes do npmjs.com (consulte Usar pacotes do npmjs.com), o que significa que você só precisará obter um determinado package@version do npmjs.com uma vez. As solicitações futuras desse pacote serão servidas diretamente do servidor do TFS. Se um pacote for removido do npmjs.com, você ainda poderá obter a versão em cache do TFS.

Para começar, procure a nova opção npm na caixa de diálogo Conectar ao feed (Figura 24).

(Figura 24) npm no Gerenciamento de Pacotes

Melhorias em plataforma cruzada

Formatação de xcpretty da tarefa do build do Xcode

Agora você pode formatar a saída do build de xcode com xcpretty (Figura 25). Você também pode publicar resultados de teste JUnit no Team Services com o xcodebuild. Antes, era preciso usar o xctool como a ferramenta de build para publicar resultados de teste. Agora, para habilitar o xcpretty, marque Usar xcpretty e desmarque Usar xctool na seção Avançado da tarefa do Xcode.

(Figura 25) Formatação de Xcpretty

Publicar resultados de cobertura de código e de teste do Jenkins

A tarefa de build e versão do Trabalho em Fila Jenkins agora pode recuperar resultados da cobertura de código e de teste de um trabalho ou pipeline do Jenkins. Isso requer a instalação do plug-in do TFS para Jenkins 5.2.0 ou posteriormente no servidor Jenkins e a configuração da ação pós-build Coletar Resultados para o TFS/Team Services. Depois que os resultados forem recuperados do Jenkins, eles poderão ser publicados com as tarefas de build Publicar Resultados de Teste ou Publicar Cobertura de Código.

Assinatura e exportação de pacotes Xcode 8 na tarefa de build do Xcode

A tarefa do Xcode agora dá suporte à criação de seus projetos usando a assinatura automática do Xcode 8 (Figura 26). Você pode instalar os certificados e os perfis de provisionamento manualmente no servidor de build ou fazer com que a tarefa instale-os especificando as opções Conteúdo do Arquivo.

(Figura 26) Assinatura automática do Xcode

O Xcode 8 exige a especificação de um plist de opções de exportação (Figura 27) ao exportar o pacote do aplicativo (IPA) de um arquivo (.xcarchive). A tarefa Xcode agora identifica automaticamente o método de exportação caso você esteja usando o Xcode 8 ou Xcode 7. Você pode especificar o método de exportação ou especificar um arquivo plist personalizado na tarefa do Xcode. Se estiver usando uma versão do Xcode anterior ao Xcode 7, a tarefa voltará a usar a antiga ferramenta (xcrun) para criar o pacote do aplicativo.

(Figura 27) Opções de exportação de Xcode

Aprimoramentos de testes

Executar testes criados usando o Visual Studio 2017

Usando as tarefas Implantar Agente de Teste e Executar Testes Funcionais no pipeline CI/CD (Figura 28), você poderá instalar os Agentes de Teste para Visual Studio 2017 e executar testes que foram compilados usando o Visual Studio 2017.

(Figura 28) Executar testes

Verificar bugs de item de trabalho

Agora, é possível verificar um bug executando novamente os testes que o identificaram (Figura 29). Você pode invocar a opção Verificar no menu de contexto do formulário de item de trabalho do bug para iniciar o caso de teste relevante no executor Web. Execute a validação usando o Executor da Web e atualize o item de trabalho do bug diretamente de dentro do Executor da Web.

(Figura 29) Verificar bugs do item de trabalho

Auxiliares do cliente REST para operações de etapa de teste

Agora você poderá criar, modificar e excluir etapas de teste e anexos de etapa de teste em itens de trabalho de Caso de Teste usando as classes auxiliares que adicionamos ao cliente REST (confira a RestApi-Sample).

Atualizar bugs existentes do Web Runner

Além de criar novos bugs do Executor da Web, agora você também pode atualizar um bug existente (Figura 30). Todos os dados de diagnóstico coletados, etapas de reprodução e links para rastreamento da sessão atual são adicionados automaticamente ao bug existente.

(Figura 30) Atualizar bug existente

Descrição do caso de teste no executor Web

O campo de descrição do caso de teste normalmente era usado para capturar os pré-requisitos necessários antes de começar a execução do caso de teste. Com esta atualização, agora você poderá exibir as informações de descrição do caso de teste no executor da Web usando a opção Mostrar descrição (Figura 31).

(Figura 31) Descrição do caso de teste

Ponto de contribuição do hub de teste

Adicionamos um novo ponto de contribuição (“ms.vss-test-web.test-plan-pivot-tabs”) (Figura 32) ao hub Plano de teste para permitir que os desenvolvedores gravem extensões como uma guia dinâmica, que aparece ao lado da guia Testes e de Gráficos.

(Figura 32) Ponto de contribuição

Excluir artefatos de teste

Antes desta versão, a opção de exclusão era limitada a itens de trabalho. Com essa atualização, agora você pode excluir permanentemente os artefatos de teste — planos de teste, conjuntos de testes, casos de teste, parâmetros compartilhados e etapas compartilhadas — tanto do hub Teste quanto do hub Trabalho, usando a opção Excluir permanentemente (Figura 33) no menu de contexto do formulário de item de trabalho.

(Figura 33) Excluir artefatos de teste

Favoritos dos Planos de Teste

Agora você pode adicionar aos favoritos os Planos de Teste que você trabalha com mais frequência. No seletor Planos de Teste, você verá guias para Todos os seus planos de teste e Favoritos (Figura 34). Clique no ícone de estrela para adicionar um Plano de Teste à sua lista de favoritos. Os Planos de Teste na lista de favoritos podem ser acessados no seletor de planos de teste e na guia Favoritos na nova home page da conta. Você também pode filtrar os planos de teste pesquisando no campo de título (Figura 35).

(Figura 34) Planos de teste

(Figura 35) Favoritos de teste

Análise de Impacto de Teste para testes automatizados gerenciados

A Análise de Impacto de Teste para testes automatizados gerenciados está disponível agora por meio de uma caixa de seleção na versão prévia 2.* da tarefa VSTest (Figura 36).

(Figura 36) Análise do impacto de teste

Se habilitada, apenas o conjunto relevante de testes automatizados gerenciados necessários para validar uma determinada alteração de código será executado. A Análise de Impacto de Teste requer a versão mais recente do Visual Studio e tem suporte atualmente no CI para testes automatizados gerenciados.

Suporte do Firefox para a extensão Teste e Comentários

Estamos felizes em anunciar a disponibilidade geral da extensão Teste e Comentários para Firefox. Você pode baixar o complemento do Firefox em nosso site marketplace.

Observação: o suporte para o navegador Edge também está em andamento. Fique ligado para mais atualizações.

Melhorias no Release Management

Suporte a grupos de variáveis na versão

Os grupos de variáveis são usados para agrupar as variáveis e seus valores para disponibilizá-las em várias definições de versões. Você também pode gerenciar a segurança para grupos de variáveis e escolher quem pode exibir, editar e consumir as variáveis a partir de grupos de variáveis em suas definições de versão.

Abra a guia Biblioteca no hub Build e Versão e escolha + Grupo de variáveis na barra de ferramentas (Figura 37). Atualmente, os grupos de variáveis só podem ser consumidos em definições de versões. Obter mais informações sobre grupos de variáveis, definições de versão no Release Management da Microsoft.

Crie (Figura 37) e edite (Figura 38) um grupo de variáveis, conforme mostrado abaixo:

(Figura 37) Criar grupo de variáveis

(Figura 38) Editar grupo de variáveis

Vários agendamentos em versões

Deseja agendar para que suas versões sejam criadas mais de uma vez por dia? Agora você pode configurar vários gatilhos agendados em uma definição de versão (Figura 39).

(Figura 39) Cronograma de versão

Conexões de serviço embutidas no Build e na Versão

Com esse recurso, você pode criar conexões de serviço diretamente na definição do build/versão sem navegar até a guia Serviços. O recurso será habilitado automaticamente para todas as extensões definidas de maneira declarativa, como Docker, Jenkins, VMware e SCVMM.

Até o momento, as definições de versão só podiam vincular fontes de artefato do projeto atual. Agora, você também pode vincular os artefatos do build (Figura 40) de outro projeto. Ao vincular um artefato, a lista suspensa de projetos exibirá todos os projetos na conta.

(Figura 40) Vincular artefatos de build

Melhorias em grupo de recursos do Azure

Antes desta versão, a tarefa de grupo de recursos do Azure não podia validar a sintaxe do modelo ARM ou ela seria aceita sem implantar os recursos de fato. Essa melhoria possibilita um novo modo de implantação chamado Somente Validação, no qual você pode encontrar os problemas com a criação do modelo antes de criar os recursos reais do Azure.

Outra melhoria na tarefa do grupo de recursos do Azure é permitir implantações incrementais ou completas (Figura 41). Anteriormente, a tarefa implantava os modelos do ARM usando o modo incremental. No entanto, ela não modificava os recursos existentes no grupo de recursos não especificado no modelo. O modo completo exclui os recursos que não estão no modelo. O padrão é modo incremental.

(Figura 41) Grupos de recursos do Azure

Tarefa de CLI do Azure

A nova tarefa de CLI do Azure dá suporte (Figura 42) à execução de comandos da CLI do Azure em agentes multiplataforma, como Windows, Linux e Mac. A tarefa dá suporte às assinaturas clássica e ARM. Ela dá suporte a dois modos de fornecimento do script: um como um artefato vinculado e o outro como um script embutido.

(Figura 42) Tarefas da CLI do Azure

Atualização de pesquisa de código

No TFS 2017 Atualização 1, o serviço Pesquisa de Código inclui o Elasticsearch versão 2.4.1. Se o serviço Pesquisa de Código for configurado em um servidor que executa o TFS 2017, o serviço Pesquisa de Código será atualizado como parte da atualização do TFS. Se o serviço Pesquisa de Código estiver configurado em um servidor remoto, copie o conteúdo do Pacote de Serviço de Pesquisa fornecido com o instalador para o computador remoto e siga as instruções no arquivo Leiame para atualizar manualmente o serviço de pesquisa.

Melhorias em análises de código

Tarefas do SonarQube MSBuild

As tarefas do SonarQube MSBuild agora estão disponíveis de uma extensão fornecida pela SonarSource. Para obter mais detalhes, leia SonarSource have announced their own SonarQube Team Services / TFS integration (SonarSource anuncia integração SonarQube Team Services/TFS própria).

Aprimoramentos de administração

Nova experiência de configurações de notificação

As notificações ajudam você e suas equipes a se manterem informados sobre a atividade nos projetos do Team Services. Com essa atualização, ficou mais fácil gerenciar quais notificações você e suas equipes devem receber.

Agora você tem sua própria experiência de nível de conta no menu de perfil para o gerenciamento da configuração de notificações (Figura 43).

(Figura 43) Configurações de notificação

Esta exibição permite que você gerencie as assinaturas pessoais criadas (Figura 44). Ela também mostra as assinaturas criadas por administradores de equipe de todos os projetos da conta.

(Figura 44) Gerenciar assinaturas pessoais

Saiba mais sobre como gerenciar as configurações de notificação pessoais.

addProjectReports agora está em TfsConfig

Agora você pode usar o comando addProjectReports para adicionar relatórios aos projetos da equipe. Esse foi um comando do Power Tool anterior e agora é parte do comando TfsConfig.exe. Para obter mais informações, consulte Carregar relatórios em um projeto de equipe.

Sala da Equipe preterida

Com tantas soluções boas disponíveis que se integram bem ao TFS e ao Team Services, como o Slack e o Microsoft Teams, tomamos a decisão de fazer com que o nosso recurso Sala da Equipe do TFS e do Team Services seja preterido. Se estiver trabalhando no Team Services, você verá uma nova faixa amarela aparecer que comunica o nosso plano. Este ano, planejamos desligar completamente o recurso Sala da Equipe.

Há várias alternativas que você pode usar. A Sala da Equipe é usada tanto para um hub de notificação, bem como para chat. O TFS e o Team Services já se integram a vários produtos de colaboração incluindo Microsoft Teams, Slack, HipChat, Campfire e Flowdock. Você também pode usar o Zapier para criar suas próprias integrações ou para obter controle granular das notificações exibidas.

Ver mais sobre a substituição das Salas de Equipes no Team Services.

Com a Atualização 1, as páginas iniciais, o widget de markdown nos painéis de equipe e a Definição de Concluído nos quadros Kanban não darão mais suporte a vínculos de arquivos nos respectivos Markdowns. Como alternativa, você pode incluir link do arquivo como texto no Markdown. Para obter mais informações, consulte Markdown guidance (Diretrizes de markdown).

Anunciando o Editor de Modelo de Processo

Lançamos a extensão o Editor de Modelo de Processo para o Visual Studio 2017. Essa extensão oferece um método cômodo para exibir e atualizar modelos de processos, bem como ferramentas para atualizar listas globais e tipos de itens de trabalho, e visualizar os atributos dos campos de itens de trabalho. Isso vai contra os servidores TFS 2017 e TFS 2017 Atualização 1.


Problemas conhecidos

O build não funciona ao atualizar do TFS 2013 ou anterior para o TFS 2017 Atualização 1 build 15.112.26301.0

  • Problema:

    Observe que esse problema ocorre somente se você atualizou para o TFS 2017 Atualização 1 build 15.112.26301.0, lançado em 7 de março de 2017. Se você atualizou para o build 15.112.26307.0, lançado em 9 de março, você não encontrará esse problema.

    Após atualizar do TFS 2013 (RTM ou qualquer atualização) ou anterior, o Build mostrará um erro de "o contador com nome TaskReferenceId não existe".

  • Solução alternativa:

    Execute o seguinte script em seus bancos de dados de coleção atualizados:

    INSERT  tbl_Counter (PartitionId, DataspaceId, CounterName, CounterValue)
    SELECT  DISTINCT
              dpm.PartitionId,
              ds.DataspaceId,
              N'TaskReferenceId',
              1
      FROM    tbl_DatabasePartitionMap dpm
      INNER LOOP JOIN Task.tbl_Hub h
      ON      h.PartitionId = dpm.PartitionId
      INNER LOOP JOIN tbl_Dataspace ds
      ON      ds.PartitionId = dpm.PartitionId
              AND ds.DataspaceCategory = h.DataspaceCategory
              AND ds.DataspaceIdentifier <> '00000000-0000-0000-0000-000000000000'
      WHERE   dpm.PartitionId > 0
              AND dpm.HostType = 4
              AND NOT EXISTS (
                  SELECT  *
                  FROM    tbl_Counter c
                  WHERE   c.PartitionId = dpm.PartitionId
                          AND c.DataspaceId = ds.DataspaceId
                          AND c.CounterName = N'TaskReferenceId'
              ) 
    

Os clientes devem atualizar para o Git LFS versão 1.3.1 ou posterior

  • Problema:

    Não há mais suporte para versões do Git LFS anteriores à 1.3.1.

  • Solução alternativa:

    Se estiver usando o Git LFS, você deverá atualizar para o Git LFS versão 1.3.1 ou superior. As versões mais antigas do cliente LFS não são compatíveis com as alterações de autenticação nesta versão do TFS.

Os formulários de itens de trabalho não são renderizados corretamente

  • Problema:

    Se você usar um controle personalizado herdado em seus formulários de itens de trabalho, como o controle de vários valores herdado, os formulários de itens de trabalho poderão falhar ao renderizar.

  • Solução alternativa:

    Você precisará atualizar para a versão mais recente do seu controle. Você pode encontrar o controle de vários valores mais recente para o TFS 2017 Atualização 1 aqui.

Os formulários de itens de trabalho não são renderizados corretamente na Web

Formulários de item de trabalho não ocultam campos somente leitura

  • Problema:

    Se você usar um formulário de item de trabalho antigo com a propriedade HideReadonlyEmptyFields definida como true no layout, seu formulário falhará em ocultar campos vazios e somente leitura.

  • Solução alternativa:

    Não há nenhuma solução alternativa no momento. Isso será corrigido no TFS 2017 Atualização 2.

Formulários de item de trabalho ficam sujos ao serem exibidos

  • Problema:

    Esse problema é específico ao IE 11 no TFS 2017 Atualização 1 ao aceitar o novo formulário de item de trabalho. Se você tiver seu perfil definido com francês, coreano, russo, turco, japonês ou chinês e o item de trabalho for atribuído a uma identidade, você verá o formulário de item de trabalho sujo ao exibir o item de trabalho. Se você salvar o item de trabalho, o campo Atribuído a será definido como não atribuído.

  • Solução alternativa:

    Use outro navegador que não seja o IE11. Se estiver usando o IE11, clique em desfazer/atualizar na barra de ferramentas do item de trabalho para restaurar o valor Atribuído A correto.

Falha no cache de pacotes de NPM de upstream

  • Problema:

    Se seu servidor TFS estiver atrás de um proxy, o cache de pacotes de NPM de upstream falhará.

  • Solução alternativa:

    Se seu servidor TFS estiver atrás de um proxy corporativo, realize as seguintes mudanças no seu servidor TFS web.config (por ex., %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config).

    Substitua esse bloco de configuração:

      <!-- ASP.NET Proxy Usage for HttpWebRequests 
            "usesystemdefault" 
               false - stops the server using the default proxy configuration or proxy
                     auto-detection. 
            "bypassonlocal"
               true - this tells all requests to a local address to ignore configured proxies.
        -->
      <defaultProxy>
        <proxy usesystemdefault="False" bypassonlocal="True" />
      </defaultProxy>
    

    Com isso:

      <defaultProxy useDefaultCredentials="true" />
    

O menu suspenso de código mostra páginas de controle de versão incorretas

  • #### Problema: Se você navegar para a página de administração em um repositório git, conforme mostrado na imagem abaixo (Figura 45) e clicar no hub Código, verá os links Conjuntos de alterações e Check-ins particulares, em vez do link Histórico.

(Figura 45) Menu suspenso de Código

  • #### Solução alternativa: Navegue para fora da página de administração do repositório git e você verá os links corretos.

As extensões não são atualizadas automaticamente

  • Problema:

    Se você atualizar uma versão anterior do TFS para acessar o TFS 2017 e estiver executando o TFS 2017 no modo conectado, as extensões não serão atualizadas automaticamente como deveriam.

  • Solução alternativa:

    Não há nenhuma solução alternativa no momento. Corrigimos o problema e o comportamento da atualização automática estará disponível para você no TFS 2017 Atualização 2. Se, por algum motivo, você não puder esperar até a Atualização 2, fale conosco por meio do canal de Suporte e compartilharemos a correção com antecedência.

As extensões não poderão ser adquiridas ou não funcionarão corretamente se a URL pública não estiver corretamente definida

  • Problema:

    Ocorrerá falha na aquisição de extensão no Visual Studio Marketplace.

    As extensões já adquiridas poderão não funcionar conforme o esperado.

  • Solução alternativa:

    Isso será corrigido no TFS 2017 Atualização 2 e é recomendável realizar a atualização. Se você precisar que isso funcione na Atualização 1, defina a “URL Pública” no Console do Administrador do Servidor TFS de forma que a URL seja acessível em outro sistema no ambiente corporativo (Figura 46).

(Figura 46) Menu de Código