Swift 및 Objective-C

적용 가능성 및 통합

circle-info

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.orgarrow-up-rightswiftpackageregistry.comarrow-up-right을 포함한 여러 소스를 사용합니다.

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의 경우: podfilepodfile.lock

  • Swift의 경우: package.swift

Snyk 오픈소스와 함께 사용하는 Swift 및 Objective-C의 경우, Snyk은 다음과 같이 패키지 관리자를 지원합니다:

  • CocoaPods의 경우: CLI 지원, Git 지원, 라이선스 스캐닝

  • Swift Package Manager의 경우: CLI 지원

Swift Package Manager 요구 사항

circle-info

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은 PodfilePodfile.lock 파일을 검사합니다.

Snyk CLI에서 Swift 및 Objective-C 프로젝트로 작업할 때, --strict-out-of-sync=true 옵션을 사용하여 동기화되지 않은 락 파일 테스트를 방지할 수 있습니다.

Cocoapods 및 Git의 경우, 프로젝트를 테스트하기 위해 Snyk은 PodfilePodfile.lock 파일을 분석합니다.

다음은 Git 가져오기 및 테스트 지원에 대한 요약입니다.

기능

사용 가능한 기능:

  • 라이선스 스캐닝 (CocoaPods)

  • 보고(Reports)

circle-info

Snyk Fix PR 기능은 Swift 및 Objective-C에서 사용할 수 없습니다. 즉, 다음 조건이 충족될 때 PR 검사가 실패하더라도 알림을 받지 못합니다:

  • PR 검사(PR checks) 기능이 활성화되어 있고, 발견된 문제에 수정 사항이 있는 경우에만 실패하도록 구성된 경우.

  • "Fixed in" 사용 가능이 **예(Yes)**로 설정된 경우.

Last updated