Swift 및 Objective-C
적용 가능성 및 통합
Swift는 Snyk Code 및 Snyk 오픈소스(Open Source)에서 지원됩니다.
사용 가능한 통합:
SCM 가져오기
CLI 및 IDE: 앱 테스트 또는 모니터링
사용 가능한 기능:
pkg:swift,pkg:cocoapods를 사용하여 앱의 SBOM 테스트pkg:swift,pkg:cocoapods를 사용하여 앱의 패키지 테스트
기술 사양
지원되는 프레임워크 및 라이브러리
Swift 및 Objective-C의 경우, 다음 프레임워크 및 라이브러리가 지원됩니다:
Swift standard library
Foundation
AppKit
Swift UI
UI Kit
Asynchttpclient
Commoncrypt
Commoncrypto
Cryptokit
Cryptoswift
Cryptor
AlamoFire
Filekit
google-gemini/generative-ai-swift
MacPaw/OpenAI
dylanshine/openai-kit
Pathos
SQLite3
Webkit
SwiftCLI
ShellOut
SwiftShell
Subprocess
Shout
Swiftline
RNCryptor
지원되는 패키지 관리자 및 레지스트리
Swift 및 Objective-C의 경우, Snyk은 다음 패키지 관리자를 지원합니다: CocoaPods, Swift Package Manager v3.0 이상.
패키지 레지스트리로 Swift 및 Objective-C용 Snyk은 cocoapods.org 및 swiftpackageregistry.com을 포함한 여러 소스를 사용합니다.
Snyk Code용 Swift
Snyk Code와 함께 사용하는 Swift의 경우, Snyk은 5.7.x 버전까지의 Swift를 지원합니다. 더 높은 버전을 사용할 수 있지만 Snyk은 이에 대한 지원을 제공하지 않습니다.
Snyk Code와 함께 사용하는 Swift의 경우, 다음 파일 형식이 지원됩니다: .swift
사용 가능한 기능:
보고(Reports)
파일 간 분석(Interfile analysis)
Snyk 오픈소스용 Swift
Snyk 오픈소스와 함께 사용하는 Swift의 경우, Swift 3.0 이상을 사용할 수 있습니다.
지원되는 파일 형식
Snyk 오픈소스와 함께 사용하는 Swift 및 Objective-C의 경우, 다음 파일 형식이 지원됩니다:
CocoaPods의 경우:
podfile및podfile.lockSwift의 경우:
package.swift
Snyk 오픈소스와 함께 사용하는 Swift 및 Objective-C의 경우, Snyk은 다음과 같이 패키지 관리자를 지원합니다:
CocoaPods의 경우: CLI 지원, Git 지원, 라이선스 스캐닝
Swift Package Manager의 경우: CLI 지원
Swift Package Manager 요구 사항
Snyk은 Swift 3.0 이상을 사용하는 프로젝트만 지원합니다.
Snyk이 프로젝트를 검색하려면 Package.swift 파일이 있어야 합니다. 또한, Snyk은 종속성 그래프를 빌드하기 위해 swift package show-dependencies 명령을 사용합니다.
파이프라인 등에서 프로젝트의 .build 폴더가 없는 경우, Snyk이 Swift 프로젝트를 스캔하는 데 시간이 더 오래 걸릴 수 있습니다. CLI가 swift package show-dependencies 명령을 실행할 때 Swift는 이 프로세스의 일부로 종속성을 확인해야 하며, 이는 Snyk이 스캔을 완료하는 데 걸리는 전체 시간을 늘릴 수 있습니다. 따라서 프로젝트를 먼저 빌드하고 .build 폴더가 있는지 확인하면 CLI 처리 속도를 높일 수 있습니다.
Swift Package Manager는 전처리(pre-processing) 및 후처리(post-processing)를 지원합니다. 후처리의 경우 사용자 정의 명령이 추가 종속성을 추가할 수 있습니다. 이러한 종속성을 감지하는 것은 지원되지 않습니다.
Git 가져오기를 사용하여 Swift Package Manager 프로젝트를 스캔하는 것은 불가능합니다.
Cocoapods 및 CLI
종속성 그래프를 빌드하기 위해 Snyk은 Podfile 및 Podfile.lock 파일을 검사합니다.
Snyk CLI에서 Swift 및 Objective-C 프로젝트로 작업할 때, --strict-out-of-sync=true 옵션을 사용하여 동기화되지 않은 락 파일 테스트를 방지할 수 있습니다.
Cocoapods 및 Git의 경우, 프로젝트를 테스트하기 위해 Snyk은 Podfile 및 Podfile.lock 파일을 분석합니다.
다음은 Git 가져오기 및 테스트 지원에 대한 요약입니다.
기능
사용 가능한 기능:
라이선스 스캐닝 (CocoaPods)
보고(Reports)
Snyk Fix PR 기능은 Swift 및 Objective-C에서 사용할 수 없습니다. 즉, 다음 조건이 충족될 때 PR 검사가 실패하더라도 알림을 받지 못합니다:
PR 검사(PR checks) 기능이 활성화되어 있고, 발견된 문제에 수정 사항이 있는 경우에만 실패하도록 구성된 경우.
"Fixed in" 사용 가능이 **예(Yes)**로 설정된 경우.
Last updated