21 puntos por xguru 2025-05-15 | 1 comentarios | Compartir por WhatsApp
  • 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

 
xguru 2025-05-15

Parece que esto se hizo aparte y no tiene relación con el anuncio de Apple sobre hacer Swift Build de código abierto.