- Ferramenta multiplataforma que substitui o Xcode, permitindo compilar projetos baseados em SwiftPM em Linux, Windows (WSL) e macOS e distribuí-los para dispositivos como
.ipa
- Simplifica e automatiza tarefas que normalmente exigem o Xcode, sendo útil em ambientes de CI/CD (resultado de 8 anos de trabalho para automatizar a distribuição de iOS)
- Oferece recursos de assinatura e instalação de apps iOS, além de integração com Apple Developer Services
- Com a biblioteca Swift
XKit, é possível interagir diretamente com Apple Developer Services ou com dispositivos iOS a partir do app do usuário
- Limitações fora do macOS e planos futuros
- Interface Builder: a implementação é muito complexa e o SwiftUI já substitui a maior parte
- Asset Catalogs: exigem engenharia reversa, mas valem a pena. Por enquanto, é possível contornar adicionando arquivos de imagem como arquivos brutos
- Macros proprietárias
- Macros padrão como
@Observable funcionam
- Macros proprietárias da Apple, como SwiftData, precisam ser reprojetadas após engenharia reversa
- Se a Apple distribuí-las no formato de macros WebAssembly, elas poderão ser usadas em todas as plataformas (veja a proposta no fórum Swift)
- Extensões de app
- No momento, só é possível compilar alvos do tipo "Application"
- Isso pode ser resolvido com suporte estendido na especificação
xtool.yml
- Depuração com LLDB
- Antes do iOS 17 era simples, mas a Apple mudou a forma de chamar o
debugserver
- É possível se conectar usando ferramentas como pymobiledevice3
- A integração do novo protocolo RemoteXPC é uma tarefa futura
- Distribuição via App Store Connect
- Atualmente, há suporte apenas para execução no próprio dispositivo
- O
iTMSTransporter é multiplataforma, e a infraestrutura de integração com a API do ASC já está pronta, então há possibilidade de implementação
1 comentários
Isso parece ter sido criado separadamente, sem relação com o anúncio da Apple sobre tornar o Swift Build open source.