- Herramienta multiplataforma que reemplaza Xcode, capaz de compilar proyectos basados en SwiftPM en Linux, Windows (WSL) y macOS y desplegarlos en dispositivos como
.ipa
- Resulta útil en entornos de CI/CD al simplificar y automatizar tareas que normalmente requieren Xcode (es el resultado de 8 años de trabajo para automatizar el despliegue de iOS)
- Ofrece funciones de firma e instalación de apps iOS, además de integración con Apple Developer Services
- Con una librería Swift llamada
XKit, las apps del usuario pueden interactuar directamente con Apple Developer Services o con dispositivos iOS
- Limitaciones fuera de entornos macOS y planes futuros
- Interface Builder: su implementación es muy compleja y SwiftUI ya lo sustituye en gran medida
- Asset Catalogs: requieren ingeniería inversa, pero vale la pena incorporarlos. Por ahora se puede reemplazar agregando archivos de imagen como archivos raw
- Macros propietarias
- Los macros estándar como
@Observable sí funcionan
- Los macros exclusivos de Apple, como SwiftData, requieren ingeniería inversa y reconstrucción
- Si Apple los distribuyera en formato de macros WebAssembly, podrían aprovecharse en todas las plataformas (ver propuesta en el foro de Swift)
- App Extensions
- Actualmente solo se pueden compilar targets de tipo "Application"
- Puede resolverse ampliando la especificación de
xtool.yml para darles soporte
- Depuración con LLDB
- Antes de iOS 17 era sencillo, pero Apple cambió la forma de invocar
debugserver
- Es posible conectarse usando herramientas como pymobiledevice3
- La integración del nuevo protocolo RemoteXPC queda como tarea futura
- Despliegue en App Store Connect
- Por ahora solo admite ejecución en dispositivos propios
iTMSTransporter es multiplataforma y la infraestructura para integrar la API de ASC ya está preparada, así que su implementación es viable
1 comentarios
Parece que esto se hizo aparte y no tiene relación con el anuncio de Apple sobre hacer Swift Build de código abierto.