WWDC 정리/WWDC 2025 정리
[iOS - Swift] WWDC2025 정리 - swift의 새로운 기능 1편 (Swiftly, Swift Lint 기능, 비동기 디버깅, 디버깅 성능 향상)
jake-kim
2025. 6. 18. 01:07
새로운 `swiftly 버전 관리자`
- Linux상 Swift 도구 체인 관리를 관소화하기 위해 오픈 소스 커뮤니티에서 개발한 것
- Swiftly는 macOS를 지원하며 swift.org에서 1.0 릴리즈 사용이 가능
- Swiftly 가이드 문서: https://www.swift.org/blog/introducing-swiftly_10/
// 툴체인 설치
swiftly install 6.1.3
// 스냅샷 제공
swiftly install main-snapshot
- Xcode에서도 Toolchains 메뉴에서도 툴체인 사용 가능

새로운 Swift lint설정 기능
- Swift Package Manager (SPM) 의 Package.swift 파일에서 아래처럼 swift lint 기능 사용이 가능
- treatAllWanings(as: .error): 원래는 deprecated되면 warning으로 뜨지만 모두 컴파일 에러로 표시하는 옵션
- treatWarning(_as:_): DeprecatedDeclaration으로 주석을 남긴 경우 컴파일 에러가 아닌 warning으로 뜨게하는 옵션

개선된 비동기 디버깅
- 아래처럼 비동기 코드를 디버깅할때 이제 LLDB의 새로운 명령어 사용이 가능

- lldb에 `language swift task info` 사용 시, 우선순위 정보 (enqueuePriority)를 보여주어, 현재 실행 중인 작업에 대한 정보를 더 얻을 수 있음

개선된 디버깅 성능
- 원래 디버깅을 사용할 땐 그림처럼 실제 모듈과 별도로 모듈을 따로 빌드해야했음

- 이제는 빌드의 모듈을 재사용 할 수 있으므로 디버깅이 이것을 그대로 사용하여 별도 빌드 시간이 들지 않음
- lldb에서 쓰던 po 명령어도 더욱 빠르게 개선됨
- 이 빌드 옵션은 Xcode 26에서 기본 활성화됨

* 참고