Novidades no PyCharm 2024.2

Use o AI Assistant para análises de dados diretamente na interface melhorada para notebooks do Jupyter e trabalhe de forma mais eficiente com modelos do Hugging Face

Baixar

AI Assistant

O JetBrains AI Assistant 2024.2 introduz aprimoramentos significativos na complementação de código na nuvem, oferecendo sugestões mais precisas e rápidas. A experiência do usuário foi reformulada para integrar melhor os recursos de complementação de código de IA aos fluxos de trabalho do IDE, com melhorias como realce de sintaxe no código sugerido e aceitação incremental de sugestões de código. O chat de IA também ficou mais inteligente e agora tem suporte ao modelo mais recente, o GPT-4o. Tem também referências no chat e pesquisa semântica.

Os novos recursos incluem integração de IA na janela de ferramentas Terminal, para a geração eficiente de comandos, e resolução de conflitos de VCS assistida por IA. Além disso, os usuários agora podem personalizar prompts para geração de documentação e criação de testes de unidade, otimizando esses prompts para linguagens e padrões de codificação específicos.

Saiba mais sobre essas e outras melhorias nesta postagem de blog.

Células de IA em notebooks do Jupyter

Agora o AI Assistant se integra ainda mais profundamente a notebooks do Jupyter no PyCharm. Agora você tem a opção de adicionar um prompt dentro do seu notebook e trabalhar com o AI Assistant diretamente de lá. Basta selecionar a opção AI, que aparece acima ou abaixo de cada célula, e aparecerá uma nova célula com um campo preparado para receber o seu prompt.

Se você não conseguir mais prosseguir ao fazer uma análise de dados e quiser uma dica sobre as etapas mais comuns que outros analistas de dados geralmente efetuam naquele estágio, clique no ícone da lâmpada à direita da célula de IA. O AI Assistant dará as sugestões mais relevantes, com base no contexto atual do notebook, para você poder limpar os seus dados de forma mais rápida e eficiente.

Se você quiser que o AI Assistant ajude você a fazer iterações no código de uma determinada célula, use a opção AI Edit Cell do menu de contexto.Isso abrirá um campo de prompt diretamente na célula selecionada. As alterações sugeridas pelo AI Assistant serão mostradas em uma visualização de diff, para que você possa visualizar as alterações no seu código.

Visualização de dataframes com um só clique

Visualize seus dataframes com a ajuda do AI Assistant, que agora pode sugerir os gráficos mais adequados ao seu contexto.

Clique no ícone "AI" no canto superior direito do dataframe e selecione Suggest Visualization. O PyCharm abrirá um chat de IA, no qual você receberá sugestões. Escolha a sugestão de que gostar mais e o AI Assistant gerará uma nova célula no notebook com o trecho apropriado de código. Execute o código e voilà! O gráfico aparecerá no seu notebook.

Integração com o Databricks

PRO

Agora o PyCharm oferece integração direta com o Databricks. Você pode se conectar a um cluster do Databricks, executar scripts e notebooks como fluxos de trabalho, executar arquivos diretamente em um shell Spark em um cluster e monitorar a execução — tudo dentro do conforto do seu IDE.

O PyCharm detecta os arquivos de configuração do Databricks no seu disco e os usa para conectar-se a clusters do Databricks.Você pode executar código no Databricks em dois modos: Run on Cluster ("Executar no Cluster") ou Run as a Workflow ("Executar como Fluxo de Trabalho").

Para usar a integração com o Databricks, você precisa instalar este plug-in dedicado.

Integração com o Hugging Face

PRO

Sugestões de modelos

Agora o PyCharm pode sugerir uma lista dos modelos do Hugging Face mais relevantes e adequados às suas necessidades. Isso permite a você decidir qual modelo usar e depois instalá-lo sem nunca precisar sair do IDE. Clique com o botão direito na aba do editor para abrir o menu de contexto, selecione Insert HF Model e identifique o que você gostaria que o modelo fizesse. O PyCharm mostrará uma lista de sugestões! Depois que você selecionar um modelo, o PyCharm sugerirá inserir um trecho de código que permitirá usar esse modelo diretamente no arquivo aberto e baixará e instalará todos os pacotes dos quais esse modelo dependa e que estejam faltando.

Dataframes interativos para a biblioteca Datasets do Hugging Face

Agora você pode inspecionar os dados da sua biblioteca Datasets do Hugging Face na forma de um dataframe interativo. Isso permite tirar proveito de recursos que você já usa em dataframes do pandas, Polars, PyTorch e TensorFlow, incluindo a visualização em gráfico, a paginação e a capacidade de ordenar e exportar tabelas.

Opção de identificar e excluir modelos sem uso

Uma nova janela de ferramentas dedicada Hugging Face permite monitorar e gerenciar modelos do Hugging Face armazenados na sua máquina. Isso ajudará você a identificar modelos sem uso, que possam ser excluídos para liberar espaço em disco, além de tornar fácil copiar os caminhos para modelos ou abrir as pastas onde eles estão armazenados.

Notebooks do Jupyter

PRO

Pré-visualização in-line de variáveis

Você não precisa mais iniciar o depurador ou usar um comando de impressão se quiser apenas verificar os valores das variáveis. Agora você pode ter uma pré-visualização instantânea dos valores de uma determinada variável apenas posicionando o cursor na linha da variável.

Experiência do usuário com notebooks do Jupyter

Execução otimizada de células

Agora o botão Run fica localizado junto a cada célula e você não precisa mais navegar até o menu superior. Um novo botão Go To também permite que você navegue até a última célula executada.

Além disso, agora cada célula mostra seu status, especificando se já foi executada com sucesso, se foi executada com erro ou se a execução foi cancelada. Você pode conferir o status de execução passando o cursor do mouse sobre o botão Go To, na barra de ferramentas principal do notebook. Quando a célula terminar de ser executada, o PyCharm mostrará uma notificação, mesmo se o notebook já tiver sido fechado.

Tags

Agora as tags atribuídas a cada célula ficam visíveis no editor. Você pode adicionar novas tags pelo menu de contexto.

Capacidade de expandir e comprimir código e células do Markdown

Para aproveitar ao máximo o seu espaço de trabalho no notebook, agora você pode expandir e comprimir tanto o código quanto as células do Markdown. A célula com o foco é realçada com uma linha azul. Clicar nessa linha comprime ou expande o conteúdo e a saída da célula. As células que não estiverem com o foco também podem ser comprimidas. Passar o cursor do mouse sobre uma célula mostra uma linha cinza, na qual você pode então clicar.

Janela de ferramentas Endpoints: suporte a @action para viewsets do framework Django REST

PRO

A janela de ferramentas Endpoints reconhece rotas especificadas para viewsets através do decorador @action. Você pode ver as rotas e os métodos de HTTP especificados no parâmetro methods. E agora o PyCharm também gera rotas com base nos parâmetros detail e url_path, além da rota inicial atribuída ao viewset. O cliente de HTTP sugerirá uma solicitação com os métodos relevantes para cada rota.

Experiência do usuário

Opção de prévia no Search Everywhere

A caixa de diálogo Search Everywhere agora inclui uma opção para visualizar os elementos da base de código que você está procurando. Habilitar esse recurso por meio do ícone Preview na barra de ferramentas da caixa de diálogo fará com que um painel de prévia apareça abaixo dos resultados da pesquisa, oferecendo contexto adicional e facilitando a navegação pelo seu projeto.

Complementação de código de linha inteira aprimorada

PRO

Na versão 2024.2, tornamos o processo de aceitação de sugestões de preenchimento de código de linha inteira mais intuitivo e preciso. As sugestões de complementação de código in-line agora incluem realce de código, e novos atalhos permitem que você aceite palavras individuais ou linhas inteiras de sugestões mais longas. Também refinamos a forma como as alterações aceitas são integradas ao seu código, eliminando a formatação e os problemas relacionados.

Outras melhorias

  • A nova interface de usuário agora é padrão para todos os usuários. Com o PyCharm 2024.2, a nova interface de usuário agora é a padrão para todos os usuários, deixando a clássica disponível como plug-in. Saiba mais sobre a nova interface de usuário
  • Agora o PyCharm detecta automaticamente as configurações de proxy do sistema da sua máquina e as usa como padrão.

Editor de código

Suporte para sintaxe matemática em arquivos Markdown

O PyCharm agora pode renderizar nativamente expressões matemáticas em arquivos Markdown. Ao trabalhar com Markdown, você pode usar $ para inserir expressões matemáticas inline e $$ para blocos de código com conteúdo matemático.

Linhas fixas com reconhecimento de linguagem

Agora, você pode escolher as linguagens para as quais deseja que as linhas fixas apareçam. É possível personalizar o recurso de acordo com suas preferências em Settings/Preferences | Editor | General | Sticky Lines ou chamando o menu de contexto com um clique com o botão direito do mouse em uma linha fixa no editor.

Execução e depuração

Visualizadores de variáveis de string para JSON, XML e outros formatos

Agora é muito mais fácil depurar e navegar por variáveis de strings longas com formatos de dados complexos. O novo depurador oferece visualizações formatadas corretamente para variáveis de string codificadas em JSON, XML, HTML, JWT e URL. Basta clicar no link View junto a uma variável para identificar rapidamente a causa primária do seu bug. O visualizador apropriado é escolhido automaticamente com base no conteúdo da sua variável.

Cobertura de teste para alterações no branch de recursos atual

O PyCharm 2024.2 melhora ainda mais sua capacidade de verificar e melhorar rapidamente a cobertura de testes localmente, sem precisar passar pelo lento processo de uso do pipeline de CI/CD. A janela de ferramentas Coverage agora mostra apenas as classes que foram alteradas no seu branch de recursos atual, permitindo que você verifique a cobertura de testes para suas alterações recentes sem navegar por todo o status do projeto. Para revisar toda a cobertura de testes do projeto e ver todas as classes, desabilite a opção Show Only Modified Classes.

Sistemas de controle de versão

Tags no widget Version Control

Demos às tags um nó dedicado no widget Version Control, facilitando sua verificação. O nó é exibido por padrão, mas, se preferir ocultá-lo, basta clicar no ícone de engrenagem e desmarcar a opção Show Tags.

Outras melhorias

  • Há duas novas opções sob o ícone Graph Options na janela de ferramentas Git: --first-parent e --no-merges. Use a opção First Parent para focar nas alterações da linha principal, ocultando commits individuais dos merges. Como alternativa, você pode filtrar totalmente os commits de merges com a opção No Merges.
  • Para simplificar a revisão de alterações em projetos complexos, disponibilizamos a ação Local History para vários arquivos ou diretórios simultaneamente. Na janela de ferramentas Project, selecione vários arquivos ou pastas e escolha Local History | Show History para ver um pop-up com o histórico de alterações das suas seleções.
  • Agora você pode abrir o log do Git como uma aba no editor, proporcionando mais espaço de trabalho e uma navegação mais fácil pela lista de commits e detalhes relacionados. Essa ação também está disponível através do menu suspenso na barra de ferramentas da janela de ferramentas Log.
  • Refinamos a codificação de cores e o layout das linhas de branch para o gráfico de commits na aba Log da janela de ferramentas Git. Linhas de branch importantes agora permanecem consistentemente no lado esquerdo do gráfico e mantêm suas cores designadas, facilitando sua identificação e acompanhamento.

Frameworks e tecnologias

PRO

GraalJS como mecanismo de execução para o cliente HTTP

Atualizamos o mecanismo de execução JavaScript usado no cliente HTTP para GraalJS. Isso permite que você use todos os recursos do GraalJS, incluindo suporte completo para a especificação ECMAScript 2023, ao testar endpoints com o cliente HTTP do IntelliJ IDEA e usar JavaScript em arquivos .http para lidar com os resultados.

Melhorias no cliente HTTP

Introduzimos atualizações valiosas no cliente HTTP. A nova função XPath permite consultar elementos diretamente de documentos XML e HTML. Além disso, adicionamos vários métodos para manipular documentos XML e HTML, eliminando a necessidade de analisar XML manualmente.

O cliente HTTP agora também oferece suporte à iteração por meio de coleções de variáveis, permitindo que você componha uma única solicitação HTTP com uma coleção JSONPath e envie solicitações automaticamente para cada elemento da coleção. Além disso, você pode acessar itens de coleção específicos em scripts de pós-processamento usando a sintaxe JSONPath.

Também implementamos a capacidade de criar métodos personalizados para trabalhar com APIs que forneçam métodos específicos. Agora você pode adicionar métodos personalizados em tempo real com uma correção rápida ou digitá-los como uma lista separada por vírgulas em Settings | Tools | HTTP Client.

Suporte aprimorado para o Terraform

Ampliamos significativamente a assistência para codificação do PyCharm para Terraform, disponibilizando a complementação de código de linha inteira para ele. Além disso, recursos essenciais de percepção de código, como complementação de código sensível ao contexto, realce refinado de sintaxe e o sistema de detecção de erros com sugestões de correção rápida, foram aprimorados para o Terraform. Também adicionamos um recurso de documentação rápida que exibe dicas de ferramentas quando você passa o mouse sobre os elementos, fornecendo informações instantâneas para ajudar você a usar os recursos do Terraform com mais eficiência sem interromper seu workflow.

Ferramentas de banco de dados

PRO

Novos recursos do AI Assistant

Nesta versão, apresentamos novos recursos do AI Assistant para bancos de dados. Com o recurso Text-to-SQL, você pode gerar código SQL diretamente no editor clicando em Generate Code with AI e inserindo seu prompt. Se você tiver mais perguntas, poderá aceitar, regerar ou refinar o código e levá-lo ao chat de IA.

Além disso, o AI Assistant pode ajudar na modificação de tabelas, permitindo que você solicite alterações, como transformar todos os tipos de dados VARCHAR em CHAR. Ele também pode ajudar você a entender e corrigir problemas de SQL, sugerindo explicações e correções. Além disso, você pode anexar o esquema do seu banco de dados ao chat de IA simplesmente mencionando-o no seu prompt.

Importação de dados personalizável por meio de carregadores com script

Agora, você pode importar dados de arquivos tabulares usando carregadores com script personalizáveis para os formatos Excel, JSON, Parquet e shapefile. Arraste seu arquivo da janela de ferramentas Project até o esquema no explorador de banco de dados e defina as configurações na caixa de diálogo Import.

Além disso, você pode visualizar esses arquivos no editor de dados com um único clique na janela de ferramentas Project. Para desabilitar esse comportamento, acesse Settings/Preferences | Advanced Settings | Open file as table if detected by scripted loader.

Você também pode criar carregadores personalizados colocando-os em Scratches and Consoles | Extensions | Database Tools and SQL | data | loaders.

Outras melhorias

  • Acesse as linhas relacionadas a uma determinada célula selecionando essa célula e clicando no ícone Related Rows. A opção Navigate and select first mostra todas as linhas, realçando as primeiras referenciadas, enquanto a opção Navigate and filter all mostra apenas as linhas referenciadas.
  • Tornamos automático o preenchimento de valores. Lembre-se de que esse recurso opera totalmente no local e, portanto, as variantes de complementação são baseadas nos outros valores já carregados na coluna atual.

Front-end

PRO

Capacidade de executar e depurar arquivos de TypeScript diretamente

Agora, você pode executar e depurar arquivos TypeScript sem nenhuma configuração adicional. Você pode executá-los a partir de diferentes pontos de entrada, incluindo o menu de contexto do arquivo, o widget Run, e a configuração Current File.

Suporte aprimorado nas principais frameworks da Web

O PyCharm é capaz de resolver caminhos para frameworks que usam roteamento baseado em sistema de arquivos. Ele pode resolver caminhos de links com base no sistema de arquivos do seu projeto, fornecendo complementação automática e navegação para Next.js, Nuxt, SvelteKit e Astro. Também há suporte para novos snippets e tags de renderização do Svelte 5. Além disso, implementamos o suporte ao protocolo de servidor de linguagem (LSP) para o Astro e o Vue Language Service v2, melhorando a complementação de código e a experiência geral do desenvolvedor.

Outras melhorias

Redirecionamento reverso de portas para desenvolvimento remoto

PRO

Adicionamos o redirecionamento reverso de porta para fluxos de trabalho de desenvolvimento remoto. Esse novo recurso permite que o IDE remoto se conecte às portas disponíveis na máquina cliente. É particularmente útil para desenvolvimento móvel e conexão com bancos de dados locais.

JetBrains Runtime: Mudança para o JBR 21

Estamos fazendo a transição do JetBrains Runtime 17 (JBR17) para o JetBrains Runtime 21 (JBR21). A partir do PyCharm 2024.2, todas as atualizações do IDE virão com o JBR21, oferecendo segurança e desempenho aprimorados, bem como suporte de renderização do Wayland para Linux.

Baixar