O GoLand 2022.3 oferece aprimoramentos de desempenho, bem como novos recursos para genéricos e espaços de trabalho Go.
Integramos o Go Playground, adicionamos suporte para melhorias em comentários de documentos Go, introduzimos novos recursos para HTTP Client e Docker e disponibilizamos a nova UI.
Como de costume, você encontrará novos recursos para desenvolvimento Web e bancos de dados, como o suporte para Redis.
Se você prefere uma abordagem de aprendizagem interativa, convidamos você a fazer o tutorial What's New in GoLand 2022.3 na tela Welcome.
Por último, mas não menos importante, o GoLand completa 5 anos hoje, e estamos convidando você para celebrar comemorar conosco. Digite "Happy B-day, GoLand!" no GoLand 2022.3 ou GoLand 2022.2.5 e veja o que acontece!
go list
para melhorar a indexação Quando você abre um projeto, o GoLand indexa os arquivos e executa o comando go list
, que relata informações sobre a estrutura do projeto. A indexação é pausada enquanto o go list
está em execução, e você não terá acesso aos recursos de insight de código até que a indexação seja concluída.
Anteriormente, o GoLand executava go list
duas vezes em alguns casos. Mudamos nossa API e reduzimos o número de inicializações de go list
. Esperamos que essa alteração melhore significativamente o desempenho de projetos grandes com muitos módulos.
Agora, quando você abre um projeto, as informações relatadas por go list
são salvas no disco na memória de cache. Ao abrir esse projeto novamente, os dados sobre a estrutura do projeto são carregados da memória e considerados quando a indexação é iniciada.
Graças a isso, a indexação continua sem pausas e termina mais rápido, e os recursos de insight de código ficam disponíveis muito mais cedo após a abertura do projeto.
O GoLand recebeu várias outras melhorias de desempenho projetadas para diminuir o tempo necessário para iniciar aplicativos e abrir projetos em IDEs da JetBrains.
Como resultado, o desempenho geral da inicialização, incluindo a restauração do editor, foi aprimorado em cerca de 30%.
Agora, você pode gerar testes para funções com parâmetros genéricos.
Agora, temos uma inspeção que detecta parâmetros de tipos em minúsculas, bem como uma correção rápida para colocá-los em letras maiúsculas.
No menu de contexto New, agora você encontrará a ação Go Workspace File. Ao selecioná-la, um arquivo go.work
aparecerá na sua pasta raiz. Módulos Go existentes serão adicionados automaticamente ao arquivo go.work
.
go.work
usando diretivas replace
Agora, você pode gerar go.work
a partir de go.mod
se tiver diretivas replace
lá. Coloque o cursor em uma diretiva replace
, pressione Alt+Enter para ver todas as ações de intenção disponíveis e selecione a correção rápida Add … module to workspace.
O Go 1.19 adicionou suporte para links, listas e novos cabeçalhos nos comentários de documentos. O GoLand 2022.3 também oferece suporte a esses novos recursos.
Adicionamos referências a links de documentos no GoLand. Clicar neles leva ao elemento referenciado, enquanto clicar em um link de texto leva a uma definição de link de texto.
Os links de texto e de documento são renderizados como links no pop-up Quick Documentation e na janela de ferramentas Documentation.
A partir do Go 1.19, um título é uma linha que começa com um sinal numérico (#
) seguido por um espaço e o texto do título.
Novos cabeçalhos são renderizados como cabeçalhos HTML no pop-up Quick Documentation do GoLand e na janela de ferramentas Documentation.
Listas são renderizadas como listas HTML no pop-up Quick Documentation do GoLand e na janela de ferramentas Documentation.
Integramos a funcionalidade Go Playground dentro do GoLand.
Você pode selecionar um trecho de código, escolher a opção Open In e clicar em Playground. Isso abrirá um arquivo de rascunho com uma barra de ferramentas que contém as mesmas opções que você tem ao usar o Go Playground.
Você pode formatar e compartilhar seu código, alterar a versão do Go, executar seu código usando o servidor Go Playground ou executá-lo localmente.
Se o seu tipo contiver a si mesmo, você receberá um erro de "Tipo recursivo inválido". To avoid this, you should include a pointer to a type, not a type itself. Agora temos uma correção rápida para isso.
Começamos a implementar o recurso Code Vision. Por enquanto, os autores do código são exibidos quando a integração de controle de versão está habilitada. Se você clicar no nome do autor do código, a barra lateral Annotate with Git blame será aberta, permitindo que você veja quem introduziu várias alterações.
Também introduzimos usos exibidos perto de todas as funções e tipos, mostrando quantas vezes essas funções ou tipos são referenciados no projeto atual.
O GoLand agora mostra dicas embutidas para blocos de definições de constantes. Isto é particularmente útil em blocos de constantes derivadas de iota
, em que as dicas mostram os valores de iota
associados a cada posição.
O IDE agora ignora campos de buffer de protocolo gerados automaticamente que começam com XXX_
quando você invoca a ação de intenção Fill all fields. Esses campos são mostrados somente depois que você chama a complementação pela segunda vez.
O GoLand agora seleciona automaticamente as variáveis do sistema relacionadas aos módulos Go e as exibe na janela de diálogo Environment variables. Para abrir essa janela, acesse Settings | Go | Go Modules e clique no ícone Edit environment variables.
O IDE agora sempre mostra os nomes dos pacotes no pop-up Quick documentation para declarações de nível superior. Anteriormente, os cabeçalhos dos pacotes eram mostrados apenas quando arquivos doc.go
ou <pkg_name>.go
eram encontrados.
Aumentamos o limite de tamanho de arquivo de 2,5 MB para 10 MB. Recursos de insight de código, como navegação e realce, não funcionam para arquivos que excedem o limite de tamanho.
Embora o limite de 2,5 MB seja suficiente para a maioria dos arquivos, existem projetos com arquivos maiores que isso, por exemplo, AWS SDK ou GCP.
Como a inspeção Receiver names are different não é relevante para o código gerado, nós a desabilitamos para arquivos que contêm um comentário correspondente à seguinte expressão regular: ^// Code generated .* DO NOT EDIT\.$
O Cliente HTTP agora oferece suporte à execução de blocos de scripts antes das solicitações. Você pode gerar dados antes de executar uma solicitação e colocá-los na solicitação final usando variáveis. Está disponível uma correção rápida que criará o código genérico para inicializar variáveis.
O cliente HTTP agora oferece suporte para a API Crypto. Você pode calcular os valores de hash md5 ou sha1 para solicitações HTTP.
Para casos simples, o IDE agora apresenta um novo conjunto de variáveis aleatórias.
O GoLand agora oferece suporte a conexões com o Docker que são executadas no Windows Subsystem for Linux (WSL). Você pode configurar essa conexão em Settings | Build, Execution, Deployment | Docker.
Agora existe uma maneira fácil de extrair uma imagem necessária sem executá-la de um Dockerfile
ou docker-compose.yml
. Para isso, chame as ações de contexto (Alt+Enter) no nome da imagem realçada e selecione Pull Docker image.
.dockerignore
Introduzimos suporte completo para arquivos .dockerignore
, incluindo realce e complementação de código. Esses arquivos agora são levados em consideração quando você cria uma imagem a partir do IDE.
Documentos Here permitem que você redirecione as linhas subsequentes do Dockerfile
para a entrada dos comandos RUN
ou COPY
. O GoLand agora oferece suporte para essa sintaxe e, portanto, você pode usá-la para gerar arquivos de configuração ou scripts multilinha diretamente em seus arquivos Dockerfile
.
Agora, você pode configurar conexões adicionais do Docker usando Docker Contexts se já tiver essas configurações na sua configuração do Docker. Você pode fazer isso chamando o menu de contexto Add Service na exibição Services e selecionando Docker Connections From Docker Contexts.
O backend do seu IDE agora pode ser iniciado diretamente no WSL 2, e você pode se conectar a ele da mesma forma que se conectaria a qualquer máquina remota ao usar o desenvolvimento remoto no GoLand.
Como você já deve saber, anunciamos em maio um programa de versão prévia fechada para a nova UI nos IDEs da JetBrains.
Convidamos você a mudar para a nova UI em Settings | Appearance & Behavior | New UI Preview, avaliá-la e compartilhar conosco sua opinião sobre essa mudança.
A funcionalidade de pré-visualização para ações de intenção agora está ativada por padrão, para que você possa ver instantaneamente como seu código será alterado depois de aplicar as sugestões do IDE.
Você pode habilitar ou desabilitar o recurso de pré-visualização pressionando Ctrl+Q enquanto a lista de ações de intenção estiver aberta.
Para facilitar a organização do seu espaço de trabalho e a interação com o GoLand em vários monitores, implementamos a opção de arrastar as janelas de ferramentas para fora da janela principal e encaixá-las nas abas flutuantes do editor.
Melhoramos o recurso Tips of the Day, uma ferramenta de aprendizado que ajuda você a explorar o GoLand.
Cada dica agora tem um título. Também ajustamos o algoritmo que determina quais dicas são exibidas, para que você veja as mais relevantes para sua experiência com o IDE e o projeto no qual está trabalhando.
Novamente, é possível marcar como favoritos arquivos nas abas do editor. Basta clicar com o botão direito do mouse em uma aba para abrir o menu de contexto e selecionar Bookmarks.
Você pode adicionar a Bookmarks todos os arquivos em todas as abas abertas no momento. Para fazer isso, invoque o mesmo menu de contexto e selecione Bookmark Open Tabs ou chame essa ação usando o ícone de três pontos localizado no lado direito do painel de abas do editor.
Apresentamos uma solução reformulada para sincronizar suas configurações de usuário personalizadas. Por muito tempo, havia dois plug-ins que existiam em paralelo e apresentavam a funcionalidade de interseção: IDE Settings Sync e Settings Repository. Para evitar a confusão de ter dois plug-ins agrupados semelhantes, mesclamos seus conjuntos de recursos em uma única solução: o novo plug-in Settings Sync.
You can find details about the new unified solution here.
Observação: para saber mais sobre todas as atualizações de bancos de dados na versão 2022.3, acesse a página de Novidades do DataGrip.
Foi implementada uma iteração preliminar do tão esperado suporte para o Redis.
Agora, ao usar a pesquisa rápida, você também pode filtrar objetos. Todos os objetos não correspondentes serão ocultados.
Observação: para saber mais sobre todas as melhorias de desenvolvimento Web na versão 2022.3, acesse a página de novidades do WebStorm.
Essa versão apresenta o novo recurso Code Vision para desenvolvimento Web. Ela reúne várias métricas para tipos e membros de tipo no seu código JavaScript e TypeScript e exibe essas informações perto das suas declarações.
Há uma nova correção rápida para suprimir inspeções com um comentário em arquivos YAML, incluindo arquivos Kubernetes, especificações OpenAPI e arquivos docker-compose.yml
.
Também introduzimos uma opção para desdobrar comentários de várias linhas que formam um bloco de três ou mais linhas e que começam com #
.
Começamos a distribuir instaladores para o Windows ARM64. Você já pode baixá-los em nosso site ou no Toolbox App.