Novidades no PhpStorm 2019.2

Experimente a hiper-produtividade com a segunda grande atualização do PhpStorm de 2019.

Propriedades tipadas do PHP 7.4

O lançamento do PHP 7.4 está previsto para o final de novembro. O PhpStorm está começando a implementar o suporte para essa versão antecipadamente, para que você tenha tempo de testar e começar a planejar a migração. O recurso mais esperado é provavelmente as novas Propriedades tipadas, às quais o PhpStorm 2019.2 já oferece suporte total. Novas inspeções realçarão as violações do tipo, e você poderá atualizar sua base de código usando a correção rápida Add declared type for the field. O PhpStorm detectará o tipo automaticamente com base no PHPDoc, no valor padrão ou na declaração do tipo de argumento em um construtor.

Localizar duplicatas dinamicamente

Localizar duplicatas dinamicamente

Ter o mesmo bloco de código exibido várias vezes no seu projeto pode custar tempo para fazer alterações ou até mesmo causar erros de regressão se você se esquecer de atualizar todas as ocorrências. O PhpStorm ajuda a evitar a criação de duplicatas de códigos no seu código, realçando-os rapidamente para que você possa identificá-los com facilidade. Agora, se você se deparar com uma duplicata existente ou criar uma no seu código, saberá instantaneamente! A nova inspeção se chama Duplicated code fragment e está habilitada por padrão. Para configurá-la, acesse Preferences | Editor | Inspections | General. Você pode ajustar as configurações relevantes em Preferences | Editor | Duplicates. E, é claro, você pode executá-la em todo o projeto (ou escopo personalizado) a qualquer momento via Code → Run Inspection by Name.

Injeção de expressões regulares

Injeção de expressões regulares

RegExps são uma ferramenta extremamente útil para pesquisar e substituir em strings. Agora, no PhpStorm, você recebe injeções automáticas para RegExps em PHP. Isso significa que, sempre que o seu código usar funções preg_*, o padrão será realçado e verificado para correções. Além disso, agora você pode testar seus padrões diretamente no IDE! Mova o cursor sobre o padrão e pressione Alt+Enter para ver a ação rápida Check RegExp.

Composer via qualquer interpretador PHP remoto

Executar o Composer via qualquer interpretador PHP remoto

Anteriormente, era necessário ter um interpretador PHP remoto para executar o Composer. O problema com isso era que o ambiente local muitas vezes não refletia a configuração de produção real ou nem mesmo poderia haver um interpretador PHP local. No PhpStorm 2019.2, você pode escolher qualquer interpretador remoto para executar seu Composer com: Docker, Vagrant, via SSH o qualquer outra opção que você preferir!

Acesse Preferences | Languages & Frameworks | PHP | Composer, selecione Remote Interpreter e escolha um interpretador na lista suspensa ou adicione um novo.

Intenções e correções rápidas

Novas intenções no String Juggling Toolbox

Novas intenções no String Juggling Toolbox

O PhpStorm acompanha várias intenções Alt+Enter para manipular strings. Há uma nova para a versão 2019.2.

Se você precisar introduzir um novo parâmetro em uma expressão sprintf, basta selecioná-lo, executar a intenção Extract selected string part as format function argument, e o PhpStorm escolherá o local correto para um parâmetro para você. Isso funciona também para concatenação.

Converter uma lista de linhas únicas em várias linhas, e vice-versa

Converter uma lista de linhas únicas em várias linhas, e vice-versa

De acordo com o PSR-2, linhas com mais de 80 caracteres devem ser divididas em várias linhas subsequentes, com no máximo 80 caracteres cada. Portanto, se a sua lista ou matriz de parâmetros ficou muito longa, agora você pode dividi-la com um clique usando a nova intenção Alt+Enter Split comma-separated values into multiple lines. A intenção inversa também está disponível para os casos em que você deseja combinar itens em uma só linha.

Intenção e inspeções para instruções Switch

Intenção e inspeções para instruções Switch

Agora, é possível adicionar branches com mais rapidez, copiando os existentes e modificando-os em seguida. Você pode usar Alt+Enter na instrução case sem corpo e escolher Copy ‘switch’ branch. Não se esqueça de modificar o arquivo copiado, pois o PhpStorm avisará se um bloco de chave tiver um branch duplicado, ou seja, o mesmo corpo, que pode ser redundante ou ter sido escrito por engano. Além disso, no PhpStorm 2019.2, se você tiver uma instrução switch sem um branch padrão no seu código, poderá corrigir isso rapidamente com Alt+Enter também.

Suporte para PHPT

Suporte para PHPT

Os arquivos .phpt podem ajudá-lo a escrever testes funcionais de uma maneira simples. Esse formato é usado para testar o núcleo do PHP. O PhpStorm 2019.2 acompanha suporte para arquivos .phpt, incluindo realce para seções e scripts, injeção automática de linguagens PHP e INI nas seções correspondentes, preenchimento de nomes de seções e salto para arquivos mencionados em seções EXTERNAS.

Docker

Janela de ferramentas Services

Janela de ferramentas Services

O Docker foi movido para a nova janela de ferramentas Services. O objetivo dessa janela de ferramentas é fornecer um único local para visualizar todas as conexões e processos em execução. Até agora, no PhpStorm, ela inclui conexões com o Docker e bancos de dados.

Navegar pelo sistema de arquivos de contêiner do Docker

Navegar pelo sistema de arquivos de contêiner do Docker

Agora, é possível visualizar o sistema de arquivos do contêiner do Docker em execução. O sistema de arquivos é exibido na guia Files recém-adicionada.

Cliente HTTP

Formato cURL no cliente HTTP

Formato cURL no cliente HTTP

Simples como é, copie a string de solicitação cURL das suas ferramentas de desenvolvimento de navegador, documentação, terminal ou em qualquer outro lugar e depois simplesmente cole-a no arquivo .http no PhpStorm e veja-a expandida para uma solicitação completa! Depois disso, vá em frente e teste sua solicitação com o poder do preenchimento inteligente.

Preservando cookies no cliente HTTP

Preservando cookies no cliente HTTP

Digamos que você tenha feito uma solicitação para se autenticar no serviço e, nas solicitações subsequentes, gostaria de chamar alguns endpoints que exigem permissões adicionais. Anteriormente, você perderia os cookies da primeira resposta. Essa exigência não existe mais: agora, o PhpStorm mantém todos os cookies para você e os transfere nas próximas solicitações.

Tecnologias Web

Como de costume, todos os recursos e melhorias do WebStorm estão disponíveis no PhpStorm, seja em formato pronto para uso ou com plug-ins gratuitos disponíveis no Plugin Marketplace.

Intenções inteligentes para JavaScript e TypeScript

Intenções inteligentes para JavaScript e TypeScript

Com a nova intenção Propagate to destructuring Alt+Enter, você pode substituir uma variável extra por outra desestruturação. Para remover completamente uma desestruturação, use a ação de intenção chamada Replace destructuring with property or index access.

Agora, o IDE avisa se uma expressão booliana em uma condição tem algumas partes desnecessárias e sugere uma simplificação.

Refatoração de renomeação aprimorada para JavaScript

Refatoração de renomeação aprimorada para JavaScript

Quando você renomeia um símbolo em um arquivo JavaScript ou TypeScript, o IDE agora agrupa usos dinâmicos e, por padrão, os exclui da refatoração. Isso torna a refatoração mais precisa e oferece mais controle sobre o que exatamente deve ser renomeado na janela de ferramentas "Refactoring Preview".

Melhor suporte para Vue.js

Melhor suporte para Vue.js

Você está usando o Vuetify ou o BootstrapVue no seu aplicativo Vue.js.? O preenchimento de código para componentes e seus props destas e de outras bibliotecas de componentes do Vue agora é mais preciso. Isso foi possível graças a uma nova abordagem que adotamos para trabalhar com essas bibliotecas no IDE.

Realce de sintaxe para mais de 20 linguagens

Realce de sintaxe para mais de 20 linguagens

O PhpStorm 2019.2 fornece realce de sintaxe pronto para uso em mais de 20 linguagens de programação diferentes, incluindo Ruby, Python, Go e muitas outras. O realce se baseia em pacotes TextMate integrados e, portanto, se você precisar de uma linguagem adicional, basta fazer download do pacote correspondente para essa linguagem e importá-lo para o IDE.

EditorConfig

EditorConfig

Agora, o PhpStorm oferece suporte imediato para arquivos .editorconfig ! Você pode ter quantos deles desejar. Crie-os em qualquer pasta, e as configurações de estilo de código especificadas serão aplicadas apenas aos arquivos dessa pasta.

Além de todas as propriedades comuns do padrão EditorConfig, agora você também pode especificar opções de estilo de código específicas do PhpStorm. Nunca foi tão fácil definir padrões comuns de estilo de código para toda a equipe.

Shell Scripts

Suporte para Shell Script

Esta versão oferece extenso suporte de edição para scripts shell, incluindo preenchimento de palavras e caminhos, documentação rápida e até mesmo a refatoração Rename. Você também pode criar configurações de execução para executar scripts shell.

Integramos o PhpStorm com várias ferramentas externas para suporte a scripts shell ainda mais avançado. Agora, você pode usar Shellcheck para detectar e corrigir erros no seu script, mvdan/sh para formatar adequadamente o seu script shell e Explainshell para obter uma descrição completa de um comando pressionando Alt+Enter.

Controle de versão

Ignorar tratamento de arquivos pronto para uso

Agora, você pode adicionar arquivos à lista de arquivos ignorados na árvore do projeto ou na guia Local Changes da janela de ferramentas VCS. Se você preferir editar .gitignore, poderá usar o preenchimento de caminhos no editor.

Novo fluxo de submissão sem caixa de diálogo

Novo fluxo de submissão sem caixa de diálogo

O PhpStorm 2019.2 traz uma grande mudança para projetos que usam o Git ou o Mercurial. Agora, você pode submeter arquivos da guia Local Changes da janela de ferramentas Version Control. Lá, você pode rever os arquivos modificados e fazer alterações, se necessário, pois a caixa de diálogo de submissão não bloqueia o restante do IDE. Para testar, marque a caixa de seleção “Commit from the Local Changes without showing a dialog” em Preferences | Version Control | Commit Dialog.

Lembrar-se de arquivos esquecidos

Lembrar-se de arquivos esquecidos

Se você estiver submetendo alguns arquivos, e o PhpStorm 2019.2 detectar que existem outros arquivos alterados que você costuma submeter junto com eles, o IDE o avisa sobre isso, para que você não perca nada.

Personalizar a guia Log do VCS

Personalizar a guia Log do VCS

Agora, você pode escolher quais colunas deseja ver na guia Log da janela de ferramentas Version Control. Clique no ícone de olho, selecione "Show Columns" e depois selecione as colunas que você deseja exibir: autor, data ou hash de submissão.

Ferramentas de banco de dados

A pesquisa de texto completo oferece resultados abrangentes

A pesquisa de texto completo oferece resultados abrangentes

Agora, você pode procurar os dados necessários, mesmo sem saber sua localização exata. Clique com o botão direito do mouse na fonte de dados ou em um grupo de fontes de dados que você deseja pesquisar e selecione Full-text Search ou pressione Cmd+Alt+Shift+F.

Os resultados são filtrados para mostrar apenas as strings nas quais os dados são encontrados. Se você não conseguir localizar os dados porque há muitas colunas, use a pesquisa de texto no editor de dados: Cmd+F.

Filtragem por uma fonte de dados disponível em pesquisa e navegação

Filtragem por uma fonte de dados disponível em pesquisa e navegação

Localizar um objeto no pop-up GoTo não é fácil às vezes, pois muitas vezes existem muitos itens semelhantes. No PhpStorm 2019.2, você pode escolher onde pesquisar: em uma fonte de dados específica ou em um grupo de fontes de dados. O mesmo funciona para "Find In Path". Isso é extremamente útil se você está procurando um código-fonte dentro de DDLs de outros objetos.