Eles adicionaram suporte ao Swift 4.2, fizeram o Generate e a navegação para determinar o tipo do Swift, melhoraram a formatação, suportaram extensões iOS no depurador, começaram a funcionar melhor em projetos com vários destinos e também criaram vários recursos interessantes e úteis.

Swift
Suporte a todos os recursos da versão 4.2 que podem afetar o IDE:
- SE-0192 (Tratamento de casos futuros do Enum)
- SE-0193 (inlining e especialização entre módulos)
- SE-0194 (Coleção Derivada de Casos Enum)
- SE-0195 (Tipos de "Pesquisa dinâmica de membro" definidos pelo usuário)
- SE-0196 (Diretivas de diagnóstico do compilador)
- SE-0212 (Diretiva de Versão do Compilador)
Se você ainda perdeu alguma coisa, não deixe de escrever nos comentários. E sobre o Swift 5, você pode ler aqui .
Geração
Realizamos todas as ações de geração padrão que o Objective-C possui - inicializadores, description
/ debugDescription
, hashValue
e o operador de comparação:

Para todas as ações, exceto o inicializador, você também pode selecionar o modelo usado para geração.
Navegação de definição de tipo
Tudo é simples aqui - ⇧⌘B
e ⇧⌘B
imediatamente à definição do tipo:

Iluminação do ponto de saída
Aprendemos como destacar pontos de saída configurando o cursor para break
, continue
, try
, throw
ou return
:

Formatação
Em quase todas as versões, estamos aprimorando algo no mecanismo de formatação, eis o que fizemos nisso:
- corrigiu o recuo para literais de cadeia de linhas múltiplas:

- adicionadas configurações de formatação de código nas diretrizes do pré-processador:

- tornou possível alterar o alinhamento de expressões com o operador ternário em
Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation
Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation
Suporte ao Swift Package Manager no CLion
Com o CLion, temos não apenas suporte geral a C / C ++, mas também suporte geral a Swift. Por um longo tempo, o plug-in, que adiciona suporte a projetos SPM no CLion, usou o CMake como modelo de projeto. Este ano, eles decidiram que não era mais possível viver assim - era inconveniente de usar e apoiavam diretamente o SPM. Agora você pode trabalhar assim:
Ficou muito bom, resta apenas finalizar a integração com os testes. E, considerando que o CLion possui a funcionalidade WebStorm para editar HTML / JavaScript, você pode trabalhar com bancos de dados da mesma maneira que no DataGrip , existe um plug - in Docker e muito mais, entendemos que agora você ainda pode escrever backends no Swift nele :
Não, ainda não estamos planejando trabalhar com o SourceKit-LSP. O motivo é simples: quase tudo é o que ele carrega (e o que ainda não carrega).
Objective-C / C / C ++
Projetos-alvo múltiplos
Por fim, corrigimos problemas com o destaque e a conclusão automática de classes com o mesmo nome conectadas a diferentes destinos no projeto. Também planejamos corrigir a navegação .
Alterar assinatura
Anteriormente, ao alterar a assinatura em C / C ++, o AppCode perdia os valores padrão dos argumentos - e agora os processa corretamente:

A documentação
Começamos a formatar substituições de macro na Documentação Rápida ( F1
):

TODO multilinha
No AppCode, todos os comentários no formato //FIXME
/ //TODO
podem ser visualizados rapidamente através do ⌘6
. Aqui você pode definir modelos para suas mensagens, o que é conveniente:

Agora adicionamos suporte a TODO de várias linhas para Objective-C / C / C ++ - é suficiente para cada linha, exceto a primeira, para adicionar um recuo:

Código misto
Corrigidos problemas ao renomear construções de swift_name
para Objective-C e enumerações em Swift / Objective-C.
Desempenho
Eles corrigiram os frisos ao chamar caixas de diálogo relacionadas à execução de testes, por exemplo, Executar configurações com configurações de teste.
Iniciar e depuração
Extensões IOS
O AppCode aprendeu como depurar extensões do iOS - assim como o Xcode:

Console LLDB para Swift
Corrigimos a conclusão automática no console do depurador para Swift (para Objective-C / C / C ++ tudo funcionava assim). Todos os apoiadores de p
/ po
e de expression
alegram, o restante, como antes, usa a expressão de avaliação ( ⌥F8
):

Plugin do instrutor de recursos do IDE

Frequentemente, ouvimos nas conferências uma solicitação para fornecer materiais sobre a migração do Xcode para o AppCode, sobre quais recursos do IDE você precisa conhecer primeiro. Durante o processo de lançamento, demos o primeiro grande passo nessa direção - adicionamos uma peça para Swift ao IDE Features Trainer. A linha inferior é simples - instalamos o plug-in, abrimos as lições, seguimos as instruções e, com exemplos simples, vemos quais oportunidades existem, como usá-las e onde encontrá-las. Recomendamos que todos os usuários partam - mesmo se você estiver usando o IDE por um longo tempo. Com alta probabilidade, algo novo e útil ainda será encontrado :).
IDE
Pesquise em todos os lugares
Pesquisa combinada em todos os lugares, vá para Classe / Arquivo / Símbolo / Ação:

Execute qualquer coisa
Agora qualquer configuração pode ser iniciada pressionando duas vezes ⌃:

Ou abra um projeto digitando open
.
Plugins
Redesenhada completamente a aparência da seção com plugins no IDE:

Controle de versão
Agora, podemos trabalhar com os submódulos Git e mostrar convenientemente solicitações pull do Github:

Tema de alto contraste
Agora é - tanto para o editor quanto para o IDE (você pode selecionar em Preferences | Appearance & Behavior | Appearance
):

O que vem a seguir?
Planejamos dedicar a próxima versão inteiramente à correção de problemas. Uma exceção é o suporte para novas versões do Swift. Em geral, mais estabilidade, melhor preenchimento automático com navegação e luz de fundo, menos interferência no trabalho.
Isso é tudo! Como sempre, faça o download - aqui , bugs - para o rastreador , faça perguntas gerais aqui.