13P by xguru 15시간전 | ★ favorite | 댓글 1개
  • 크로스 플랫폼 Xcode 대체 도구로, SwiftPM 기반 프로젝트를 Linux, Windows(WSL), macOS 어디서든 빌드하고 디바이스에 .ipa로 배포 가능
  • Xcode가 필요한 작업을 단순화하고 자동화함으로써 CI/CD 환경에서 유용(iOS 배포 자동화를 위해 8년동안 작업한 결과물임)
  • iOS 앱 서명 및 설치, Apple Developer Services 연동 기능 제공
    • XKit이라는 Swift 라이브러리로, 사용자 앱에서 Apple Developer Services 또는 iOS 디바이스와 직접 상호작용 가능
  • macOS 외 환경에서의 한계 및 향후 계획
    • Interface Builder : 구현이 매우 복잡하고 SwiftUI가 대부분 대체하고 있음
    • Asset Catalogs : 역공학이 필요하지만 도입할 가치가 있음. 현재는 이미지 파일을 raw 파일로 추가하는 방식으로 대체 가능
    • Proprietary Macros
      • @Observable 같은 표준 매크로는 작동함
      • SwiftData 등 Apple 독점 매크로는 역설계 후 재구성 필요
      • WebAssembly 매크로 형태로 Apple이 배포하면 모든 플랫폼에서 활용 가능해짐 (Swift 포럼의 제안 참고)
    • App Extensions
      • 현재는 "Application" 타입 타겟만 빌드 가능
      • xtool.yml 명세에 확장하여 지원하는 방식으로 해결 가능
    • LLDB 디버깅
      • iOS 17 이전에는 간단했으나, Apple이 debugserver 호출 방식을 변경함
      • pymobiledevice3와 같은 도구를 이용해 연결 가능
      • 새 RemoteXPC 프로토콜 통합은 향후 과제
    • App Store Connect 배포
      • 현재는 자체 디바이스에서의 실행만 지원
      • iTMSTransporter는 크로스 플랫폼이며, ASC API 연동 인프라가 이미 준비되어 있어 구현 가능성 있음

애플, Swift Build 오픈 소스화 발표 이거랑은 상관없이 별도로 만든거네요.