The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build Aespa, reference 0.5.3 (66a9fa), with Swift 6.1 for tvOS using Xcode 16.3 on 28 Apr 2025 21:29:50 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Aespa -destination generic/platform=tvOS

Build Log

         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:51:10: note: consider making enum 'DeviceErrorReason' conform to the 'Sendable' protocol
    enum DeviceErrorReason: String {
         ^
                                  , Sendable
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:13:10: warning: associated value 'permission(reason:)' of 'Sendable'-conforming enum 'AespaError' has non-sendable type 'AespaError.PermissionErrorReason'; this is an error in the Swift 6 language mode
    case permission(reason: PermissionErrorReason)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:66:10: note: consider making enum 'PermissionErrorReason' conform to the 'Sendable' protocol
    enum PermissionErrorReason: String {
         ^
                                      , Sendable
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:14:10: warning: associated value 'album(reason:)' of 'Sendable'-conforming enum 'AespaError' has non-sendable type 'AespaError.AlbumErrorReason'; this is an error in the Swift 6 language mode
    case album(reason: AlbumErrorReason)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:71:10: note: consider making enum 'AlbumErrorReason' conform to the 'Sendable' protocol
    enum AlbumErrorReason: String {
         ^
                                 , Sendable
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:15:10: warning: associated value 'file(reason:)' of 'Sendable'-conforming enum 'AespaError' has non-sendable type 'AespaError.FileErrorReason'; this is an error in the Swift 6 language mode
    case file(reason: FileErrorReason)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:80:10: note: consider making enum 'FileErrorReason' conform to the 'Sendable' protocol
    enum FileErrorReason: String {
         ^
                                , Sendable
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:16:10: warning: associated value 'connection(reason:)' of 'Sendable'-conforming enum 'AespaError' has non-sendable type 'AespaError.ConnectionErrorReason'; this is an error in the Swift 6 language mode
    case connection(reason: ConnectionErrorReason)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift:89:10: note: consider making enum 'ConnectionErrorReason' conform to the 'Sendable' protocol
    enum ConnectionErrorReason: String {
         ^
                                      , Sendable
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:105:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        public var cameraDevicePreference: AVCaptureDevice.DeviceType?
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:102:12: note: add @available attribute to enclosing struct
    struct Session {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:107:45: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        public init(cameraDevicePreference: AVCaptureDevice.DeviceType? = nil) {
                                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:107:16: note: add @available attribute to enclosing initializer
        public init(cameraDevicePreference: AVCaptureDevice.DeviceType? = nil) {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:102:12: note: add @available attribute to enclosing struct
    struct Session {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:31:58: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    private let previewLayerSubject: CurrentValueSubject<AVCaptureVideoPreviewLayer?, Never>
                                                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:33:31: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    private var photoSetting: AVCapturePhotoSettings
                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:41:30: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    public let previewLayer: AVCaptureVideoPreviewLayer
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:103:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    public var avCaptureSession: AVCaptureSession {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:103:16: note: add @available attribute to enclosing property
    public var avCaptureSession: AVCaptureSession {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:125:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public var currentFocusMode: AVCaptureDevice.FocusMode? {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:125:16: note: add @available attribute to enclosing property
    public var currentFocusMode: AVCaptureDevice.FocusMode? {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:131:36: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    public var currentOrientation: AVCaptureVideoOrientation? {
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:137:39: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public var currentCameraPosition: AVCaptureDevice.Position? {
                                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:137:16: note: add @available attribute to enclosing property
    public var currentCameraPosition: AVCaptureDevice.Position? {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:168:52: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    public var previewLayerPublisher: AnyPublisher<AVCaptureVideoPreviewLayer, Never> {
                                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:168:16: note: add @available attribute to enclosing property
    public var previewLayerPublisher: AnyPublisher<AVCaptureVideoPreviewLayer, Never> {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:322:32: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public var currentSetting: AVCapturePhotoSettings {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:322:16: note: add @available attribute to enclosing property
    public var currentSetting: AVCapturePhotoSettings {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:313:1: note: add @available attribute to enclosing extension
extension AespaSession: PhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:369:20: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
        to preset: AVCaptureSession.Preset,
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:380:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:392:25: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
        to orientation: AVCaptureVideoOrientation,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:403:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.FocusMode, point: CGPoint? = nil,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:452:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:461:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:470:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public func flashMode(to mode: AVCaptureDevice.FlashMode) -> AespaPhotoContext {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:482:35: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public func custom(_ setting: AVCapturePhotoSettings) -> AespaPhotoContext {
                                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:16:65: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
    private let fileIOResultSubject = PassthroughSubject<Result<AVCapturePhoto, Error>, Never>()
                                                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:13:7: note: add @available attribute to enclosing class
class AespaCoreCamera: NSObject {
      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:34:18: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
        setting: AVCapturePhotoSettings,
                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:33:10: note: add @available attribute to enclosing instance method
    func capture(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:32:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:36:23: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
    ) async throws -> AVCapturePhoto {
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:33:10: note: add @available attribute to enclosing instance method
    func capture(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:32:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:57:19: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
        _ output: AVCapturePhotoOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:56:10: note: add @available attribute to enclosing instance method
    func photoOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:55:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera: AVCapturePhotoCaptureDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:58:41: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
        didFinishProcessingPhoto photo: AVCapturePhoto,
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:56:10: note: add @available attribute to enclosing instance method
    func photoOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:55:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera: AVCapturePhotoCaptureDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:72:19: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
        _ output: AVCaptureFileOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:71:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:74:28: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
        from connections: [AVCaptureConnection]
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:71:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:80:19: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
        _ output: AVCaptureFileOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:79:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:82:28: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
        from connections: [AVCaptureConnection],
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:79:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift:13:25: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
class AespaCoreSession: AVCaptureSession {
                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift:13:7: note: add @available attribute to enclosing class
class AespaCoreSession: AVCaptureSession {
      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:21:31: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    private var photoSetting: AVCapturePhotoSettings
                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:14:12: note: add @available attribute to enclosing class
open class AespaPhotoContext {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:66:32: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public var currentSetting: AVCapturePhotoSettings {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:66:16: note: add @available attribute to enclosing property
    public var currentSetting: AVCapturePhotoSettings {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:51:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext: PhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:148:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public func flashMode(to mode: AVCaptureDevice.FlashMode) -> AespaPhotoContext {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:145:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:161:35: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public func custom(_ setting: AVCapturePhotoSettings) -> AespaPhotoContext {
                                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:145:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:185:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:163:1: note: add @available attribute to enclosing extension
extension AespaVideoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:197:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:163:1: note: add @available attribute to enclosing extension
extension AespaVideoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:54:20: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
        to preset: AVCaptureSession.Preset,
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:53:29: note: add @available attribute to enclosing instance method
    @discardableResult func quality(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:68:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:67:29: note: add @available attribute to enclosing instance method
    @discardableResult func position(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:83:25: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
        to orientation: AVCaptureVideoOrientation,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:96:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.FocusMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:95:29: note: add @available attribute to enclosing instance method
    @discardableResult func focus(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:230:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:229:10: note: add @available attribute to enclosing instance method
    func stabilization(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:141:17: note: add @available attribute to enclosing protocol
public protocol VideoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:246:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:245:10: note: add @available attribute to enclosing instance method
    func torch(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:141:17: note: add @available attribute to enclosing protocol
public protocol VideoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:278:25: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    var currentSetting: AVCapturePhotoSettings { get }
                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:278:9: note: add @available attribute to enclosing property
    var currentSetting: AVCapturePhotoSettings { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:324:48: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    @discardableResult func flashMode(to mode: AVCaptureDevice.FlashMode) -> PhotoContextType
                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:324:29: note: add @available attribute to enclosing instance method
    @discardableResult func flashMode(to mode: AVCaptureDevice.FlashMode) -> PhotoContextType
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:340:28: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    func custom(_ setting: AVCapturePhotoSettings) -> PhotoContextType
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:340:10: note: add @available attribute to enclosing instance method
    func custom(_ setting: AVCapturePhotoSettings) -> PhotoContextType
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:366:26: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    case quality(preset: AVCaptureSession.Preset)
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:374:29: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case position(position: AVCaptureDevice.Position)
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:383:35: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    case orientation(orientation: AVCaptureVideoOrientation)
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:390:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case focus(mode: AVCaptureDevice.FocusMode, point: CGPoint? = nil)
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:429:30: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    case stabilization(mode: AVCaptureVideoStabilizationMode)
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:418:13: note: add @available attribute to enclosing enum
public enum VideoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:439:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case torch(mode: AVCaptureDevice.TorchMode, level: Float)
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:418:13: note: add @available attribute to enclosing enum
public enum VideoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:460:26: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case flashMode(mode: AVCaptureDevice.FlashMode)
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:455:13: note: add @available attribute to enclosing enum
public enum PhotoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:475:41: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    case custom(avCapturePhotoSettings: AVCapturePhotoSettings)
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:455:13: note: add @available attribute to enclosing enum
public enum PhotoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:12:27: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var videoOrientation: AVCaptureVideoOrientation { get set }
                          ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:42: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
                                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:9: note: add @available attribute to enclosing property
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureConnectionRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:16:38: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    func orientation(to orientation: AVCaptureVideoOrientation)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:17:37: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode)
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:17:10: note: add @available attribute to enclosing instance method
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureConnectionRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:21:38: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    func orientation(to orientation: AVCaptureVideoOrientation) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:25:37: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode) {
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:25:10: note: add @available attribute to enclosing instance method
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: note: add @available attribute to enclosing extension
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: type 'AVCaptureConnection' does not conform to protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: unavailable property 'videoOrientation' was used to satisfy a requirement of protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1056:48: note: 'videoOrientation' declared here
@property(nonatomic) AVCaptureVideoOrientation videoOrientation API_DEPRECATED("Use -videoRotationAngle instead", macos(10.7, 14.0), ios(4.0, 17.0), macCatalyst(14.0, 17.0)) API_UNAVAILABLE(tvos, visionos);
                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:12:9: note: requirement 'videoOrientation' declared here
    var videoOrientation: AVCaptureVideoOrientation { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: protocol 'AespaCaptureConnectionRepresentable' requires 'preferredVideoStabilizationMode' to be available in tvOS 14.0 and newer
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1156:54: note: 'preferredVideoStabilizationMode' declared here
@property(nonatomic) AVCaptureVideoStabilizationMode preferredVideoStabilizationMode API_AVAILABLE(ios(8.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                                                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:9: note: protocol requirement here
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: unavailable property 'isVideoOrientationSupported' was used to satisfy a requirement of protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1046:73: note: 'isVideoOrientationSupported' declared here
@property(nonatomic, readonly, getter=isVideoOrientationSupported) BOOL supportsVideoOrientation API_DEPRECATED("Use -isVideoRotationAngleSupported: instead", macos(10.7, 14.0), ios(4.0, 17.0), macCatalyst(14.0, 17.0)) API_UNAVAILABLE(tvos, visionos);
                                                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:14:9: note: requirement 'isVideoOrientationSupported' declared here
    var isVideoOrientationSupported: Bool { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:11: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: note: add @available attribute to enclosing extension
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var focusMode: AVCaptureDevice.FocusMode { get set }
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:9: note: add @available attribute to enclosing property
    var focusMode: AVCaptureDevice.FocusMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var flashMode: AVCaptureDevice.FlashMode { get set }
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:9: note: add @available attribute to enclosing property
    var flashMode: AVCaptureDevice.FlashMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:10: note: add @available attribute to enclosing instance method
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:23:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:23:10: note: add @available attribute to enclosing instance method
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:24:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func torchMode(_ torchMode: AVCaptureDevice.TorchMode)
                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:24:10: note: add @available attribute to enclosing instance method
    func torchMode(_ torchMode: AVCaptureDevice.TorchMode)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:30:33: error: 'TorchMode' is only available in tvOS 17.0 or newer
    func torchMode(_ torchMode: TorchMode) {
                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:30:10: note: add @available attribute to enclosing instance method
    func torchMode(_ torchMode: TorchMode) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:47:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:47:10: note: add @available attribute to enclosing instance method
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'hasTorch' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:976:37: note: 'hasTorch' declared here
@property(nonatomic, readonly) BOOL hasTorch;
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:12:9: note: protocol requirement here
    var hasTorch: Bool { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'focusMode' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1120:41: note: 'focusMode' declared here
@property(nonatomic) AVCaptureFocusMode focusMode;
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:9: note: protocol requirement here
    var focusMode: AVCaptureDevice.FocusMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'isSubjectAreaChangeMonitoringEnabled' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1748:72: note: 'isSubjectAreaChangeMonitoringEnabled' declared here
@property(nonatomic, getter=isSubjectAreaChangeMonitoringEnabled) BOOL subjectAreaChangeMonitoringEnabled API_AVAILABLE(ios(5.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                                                                       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:14:9: note: protocol requirement here
    var isSubjectAreaChangeMonitoringEnabled: Bool { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'flashMode' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:934:41: note: 'flashMode' declared here
@property(nonatomic) AVCaptureFlashMode flashMode API_DEPRECATED("Use AVCapturePhotoSettings.flashMode instead.", ios(4.0, 10.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos);
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:9: note: protocol requirement here
    var flashMode: AVCaptureDevice.FlashMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'videoZoomFactor' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1804:30: note: 'videoZoomFactor' declared here
@property(nonatomic) CGFloat videoZoomFactor API_AVAILABLE(ios(7.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:16:9: note: protocol requirement here
    var videoZoomFactor: CGFloat { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'isFocusModeSupported' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
AVFoundation.AVCaptureDevice.isFocusModeSupported:2:11: note: 'isFocusModeSupported' declared here
open func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool}
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:10: note: protocol requirement here
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'setTorchModeOn(level:)' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
AVFoundation.AVCaptureDevice.setTorchModeOn:3:13: note: 'setTorchModeOn(level:)' declared here
  open func setTorchModeOn(level torchLevel: Float) throws}
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:26:10: note: protocol requirement here
    func setTorchModeOn(level torchLevel: Float) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:11: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:15:37: error: 'AVCaptureFileOutputRecordingDelegate' is only available in tvOS 17.0 or newer
        recordingDelegate delegate: AVCaptureFileOutputRecordingDelegate)
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:13:10: note: add @available attribute to enclosing instance method
    func startRecording(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaFileOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:19:11: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
extension AVCaptureFileOutput: AespaFileOutputRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:19:1: note: add @available attribute to enclosing extension
extension AVCaptureFileOutput: AespaFileOutputRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:29: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:10: note: add @available attribute to enclosing instance method
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaPhotoOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:63: error: 'AVCapturePhotoCaptureDelegate' is only available in tvOS 17.0 or newer
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
                                                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:10: note: add @available attribute to enclosing instance method
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaPhotoOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:16:11: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
extension AVCapturePhotoOutput: AespaPhotoOutputRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:16:1: note: add @available attribute to enclosing extension
extension AVCapturePhotoOutput: AespaPhotoOutputRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:16:27: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var avCaptureSession: AVCaptureSession { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:16:9: note: add @available attribute to enclosing property
    var avCaptureSession: AVCaptureSession { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:22:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var audioDeviceInput: AVCaptureDeviceInput? { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:22:9: note: add @available attribute to enclosing property
    var audioDeviceInput: AVCaptureDeviceInput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:25:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var videoDeviceInput: AVCaptureDeviceInput? { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:25:9: note: add @available attribute to enclosing property
    var videoDeviceInput: AVCaptureDeviceInput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:28:26: error: 'AVCaptureMovieFileOutput' is only available in tvOS 17.0 or newer
    var movieFileOutput: AVCaptureMovieFileOutput? { get }
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:28:9: note: add @available attribute to enclosing property
    var movieFileOutput: AVCaptureMovieFileOutput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:31:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var previewLayer: AVCaptureVideoPreviewLayer { get }
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:31:9: note: add @available attribute to enclosing property
    var previewLayer: AVCaptureVideoPreviewLayer { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:64:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:63:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:65:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        device deviceType: AVCaptureDevice.DeviceType?
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:63:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:69:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    func videoQuality(to preset: AVCaptureSession.Preset) throws
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:69:10: note: add @available attribute to enclosing instance method
    func videoQuality(to preset: AVCaptureSession.Preset) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:74:27: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var avCaptureSession: AVCaptureSession { self }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:74:9: note: add @available attribute to enclosing property
    var avCaptureSession: AVCaptureSession { self }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:76:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var audioDeviceInput: AVCaptureDeviceInput? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:76:9: note: add @available attribute to enclosing property
    var audioDeviceInput: AVCaptureDeviceInput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:83:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var videoDeviceInput: AVCaptureDeviceInput? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:83:9: note: add @available attribute to enclosing property
    var videoDeviceInput: AVCaptureDeviceInput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:90:26: error: 'AVCaptureMovieFileOutput' is only available in tvOS 17.0 or newer
    var movieFileOutput: AVCaptureMovieFileOutput? {
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:90:9: note: add @available attribute to enclosing property
    var movieFileOutput: AVCaptureMovieFileOutput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:98:22: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
    var photoOutput: AVCapturePhotoOutput? {
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:98:9: note: add @available attribute to enclosing property
    var photoOutput: AVCapturePhotoOutput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:106:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var previewLayer: AVCaptureVideoPreviewLayer {
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:106:9: note: add @available attribute to enclosing property
    var previewLayer: AVCaptureVideoPreviewLayer {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:191:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:190:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:192:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        device deviceType: AVCaptureDevice.DeviceType?
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:190:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:220:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    func videoQuality(to preset: AVCaptureSession.Preset) {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:220:10: note: add @available attribute to enclosing instance method
    func videoQuality(to preset: AVCaptureSession.Preset) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:12:18: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    let setting: AVCapturePhotoSettings
                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct CapturePhotoProcessor: AespaCapturePhotoOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:13:19: error: 'AVCapturePhotoCaptureDelegate' is only available in tvOS 17.0 or newer
    let delegate: AVCapturePhotoCaptureDelegate
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct CapturePhotoProcessor: AespaCapturePhotoOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift:13:19: error: 'AVCaptureFileOutputRecordingDelegate' is only available in tvOS 17.0 or newer
    let delegate: AVCaptureFileOutputRecordingDelegate
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct StartRecordProcessor: AespaMovieFileOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoOrientationTuner.swift:11:22: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var orientation: AVCaptureVideoOrientation
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift:11:27: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    var stabilzationMode: AVCaptureVideoStabilizationMode
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift:10:8: note: add @available attribute to enclosing struct
struct VideoStabilizationTuner: AespaConnectionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift:15:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    let mode: AVCaptureDevice.FocusMode
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift:12:8: note: add @available attribute to enclosing struct
struct FocusTuner: AespaDeviceTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift:13:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    let torchMode: AVCaptureDevice.TorchMode
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift:11:8: note: add @available attribute to enclosing struct
struct TorchTuner: AespaDeviceTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:12:19: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var position: AVCaptureDevice.Position
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:13:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var devicePreference: AVCaptureDevice.DeviceType?
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:5: note: add @available attribute to enclosing initializer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:64: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
                                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:5: note: add @available attribute to enclosing initializer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift:12:23: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var videoQuality: AVCaptureSession.Preset
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift:10:8: note: add @available attribute to enclosing struct
struct QualityTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:11:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var chooseBestCamera: AVCaptureDevice? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:11:9: note: add @available attribute to enclosing property
    var chooseBestCamera: AVCaptureDevice? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice.Position {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:11: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
extension AVCaptureDevice.Position {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice.Position {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:34:11: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
extension AVCapturePhoto {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:34:1: note: add @available attribute to enclosing extension
extension AVCapturePhoto {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift:12:29: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var toVideoOrientation: AVCaptureVideoOrientation {
                            ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift:11:11: error: 'UIDeviceOrientation' is unavailable in tvOS
extension UIDeviceOrientation {
          ^~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIOrientation.h:13:28: note: 'UIDeviceOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, UIDeviceOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift:11:16: warning: static property 'enableLogging' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    static var enableLogging = true
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift:11:16: note: convert 'enableLogging' to a 'let' constant to make 'Sendable' shared state immutable
    static var enableLogging = true
           ~~~ ^
           let
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift:11:16: note: add '@MainActor' to make static property 'enableLogging' part of global actor 'MainActor'
    static var enableLogging = true
               ^
    @MainActor
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift:11:16: note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
    static var enableLogging = true
               ^
    nonisolated(unsafe)
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:57:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    @State private var preferredFocusMode: AVCaptureDevice.FocusMode = .continuousAutoFocus
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:86:16: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var layer: AVCaptureVideoPreviewLayer {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:86:9: note: add @available attribute to enclosing property
    var layer: AVCaptureVideoPreviewLayer {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:90:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var currentFocusMode: AVCaptureDevice.FocusMode? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:90:9: note: add @available attribute to enclosing property
    var currentFocusMode: AVCaptureDevice.FocusMode? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:94:32: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var currentCameraPosition: AVCaptureDevice.Position? {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:94:9: note: add @available attribute to enclosing property
    var currentCameraPosition: AVCaptureDevice.Position? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift:15:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    let previewLayer: AVCaptureVideoPreviewLayer
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift:12:8: note: add @available attribute to enclosing struct
struct Preview: UIViewControllerRepresentable {
       ^
SwiftCompile normal arm64 Compiling\ PhotoFileGenerator.swift,\ VideoFileGenerator.swift,\ Logger.swift,\ InteractivePreview.swift,\ Preview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/PhotoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/VideoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift (in target 'Aespa' from project 'Aespa')
Command SwiftCompile failed with a nonzero exit code
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Aespa (in target 'Aespa' from project 'Aespa')
	EmitSwiftModule normal arm64 (in target 'Aespa' from project 'Aespa')
	SwiftCompile normal arm64 Compiling\ PhotoFileGenerator.swift,\ VideoFileGenerator.swift,\ Logger.swift,\ InteractivePreview.swift,\ Preview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/PhotoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/VideoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift (in target 'Aespa' from project 'Aespa')
	Building workspace spi-builder-workspace with scheme Aespa
(4 failures)
Command line invocation:
    /Applications/Xcode-16.3.0.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
  Aespa: /Users/admin/builder/spi-builder-workspace
resolved source packages: Aespa
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Aespa",
  "name" : "Aespa",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    }
  ],
  "products" : [
    {
      "name" : "Aespa",
      "targets" : [
        "Aespa"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Aespa",
      "module_type" : "SwiftTarget",
      "name" : "Aespa",
      "path" : "Sources/Aespa",
      "product_memberships" : [
        "Aespa"
      ],
      "sources" : [
        "Aespa.swift",
        "AespaError.swift",
        "AespaOption.swift",
        "AespaSession.swift",
        "Core/AespaCoreAlbumManager.swift",
        "Core/AespaCoreCamera.swift",
        "Core/AespaCoreRecorder.swift",
        "Core/AespaCoreSession.swift",
        "Core/AespaEventManager.swift",
        "Core/Context/AespaPhotoContext.swift",
        "Core/Context/AespaVideoContext.swift",
        "Core/Context/Context.swift",
        "Core/Representable/AVCaptureConnection+AespaRepresentable.swift",
        "Core/Representable/AVCaptureDevice+AespaRepresentable.swift",
        "Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift",
        "Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift",
        "Core/Representable/AespaCoreSession+AespaRepresentable.swift",
        "Core/Representable/Photos+AespaRepresentable.swift",
        "Data/Asset/PhotoAsset.swift",
        "Data/Asset/Video\u0010Asset.swift",
        "Data/Event/VideoAssetEvent.swift",
        "Data/File/PhotoFile.swift",
        "Data/File/VideoFile.swift",
        "Data/Proxy/AssetCachingProxy.swift",
        "Loader/AespaLoading.swift",
        "Loader/Asset/AssetLoader.swift",
        "Processor/AespaProcessing.swift",
        "Processor/Asset/PhotoAssetAdditionProcessor.swift",
        "Processor/Asset/VideoAssetAdditionProcessor.swift",
        "Processor/Capture/CapturePhotoProcessor.swift",
        "Processor/File/FileWritingProcessor.swift",
        "Processor/Record/FinishRecordProcessor.swift",
        "Processor/Record/StartRecordProcessor.swift",
        "Tuner/AespaTuning.swift",
        "Tuner/Connection/VideoOrientationTuner.swift",
        "Tuner/Connection/VideoStabilizationTuner.swift",
        "Tuner/Device/ChangeMonitoringTuner.swift",
        "Tuner/Device/FocusTuner.swift",
        "Tuner/Device/TorchTuner.swift",
        "Tuner/Device/ZoomTuner.swift",
        "Tuner/Session/AudioTuner.swift",
        "Tuner/Session/CameraPositionTuner.swift",
        "Tuner/Session/QualityTuner.swift",
        "Tuner/Session/SessionTerminationTuner.swift",
        "Util/Album/AlbumImporter.swift",
        "Util/Authorization/AuthorizationChecker.swift",
        "Util/Extension/AVFoundation+Extension.swift",
        "Util/Extension/SwiftUI+Extension.swift",
        "Util/Extension/UIKit+Extension.swift",
        "Util/File/FilePathProvider.swift",
        "Util/File/PhotoFileGenerator.swift",
        "Util/File/VideoFileGenerator.swift",
        "Util/Log/Logger.swift",
        "View/InteractivePreview.swift",
        "View/Preview.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
{
  "workspace" : {
    "name" : "spi-builder-workspace",
    "schemes" : [
      "Aespa"
    ]
  }
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Aespa -destination generic/platform=tvOS
Command line invocation:
    /Applications/Xcode-16.3.0.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme Aespa -destination generic/platform=tvOS
Resolve Package Graph
Resolved source packages:
  Aespa: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
    Target 'Aespa' in project 'Aespa'
        ➜ Explicit dependency on target 'Aespa' in project 'Aespa'
    Target 'Aespa' in project 'Aespa' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ExecuteExternalTool /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -v -E -dM -isysroot /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk -x c -c /dev/null
ExecuteExternalTool /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc --version
ExecuteExternalTool /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld -version_details
ReadFileContents /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/docc/features.json
Build description signature: 43f2bcd1378dc2591be35ebd56e0c282
Build description path: /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/XCBuildData/43f2bcd1378dc2591be35ebd56e0c282.xcbuilddata
ClangStatCache /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos18.4-22L251-271d326055c85f9856fa135c41255102.sdkstatcache
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos18.4-22L251-271d326055c85f9856fa135c41255102.sdkstatcache
SwiftDriver Aespa normal arm64 com.apple.xcode.tools.swift.compiler (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -module-name Aespa -Onone -enforce-exclusivity\=checked @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DXcode -plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk -target arm64-apple-tvos14.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -swift-version 5 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -I /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos18.4-22L251-271d326055c85f9856fa135c41255102.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa-OutputFileMap.json -use-frontend-parseable-output -save-temps -no-color-diagnostics -serialize-diagnostics -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.swiftmodule -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/swift-overrides.hmap -emit-const-values -Xfrontend -const-gather-protocols-file -Xfrontend /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ Aespa.swift,\ AespaError.swift,\ AespaOption.swift,\ AespaSession.swift,\ AespaCoreAlbumManager.swift,\ AespaCoreCamera.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Aespa.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreAlbumManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Aespa.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreAlbumManager.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ AespaCoreRecorder.swift,\ AespaCoreSession.swift,\ AespaEventManager.swift,\ AespaPhotoContext.swift,\ AespaVideoContext.swift,\ Context.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaEventManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaEventManager.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftEmitModule normal arm64 Emitting\ module\ for\ Aespa (in target 'Aespa' from project 'Aespa')
Failed frontend command:
/Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Aespa.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaError.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreAlbumManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaEventManager.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/Photos+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/PhotoAsset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/Video\Asset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Event/VideoAssetEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/PhotoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/VideoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Proxy/AssetCachingProxy.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/AespaLoading.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/Asset/AssetLoader.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/AespaProcessing.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/PhotoAssetAdditionProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/VideoAssetAdditionProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/File/FileWritingProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/FinishRecordProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/AespaTuning.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoOrientationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ChangeMonitoringTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ZoomTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/AudioTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/SessionTerminationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Album/AlbumImporter.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Authorization/AuthorizationChecker.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/SwiftUI+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/FilePathProvider.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/PhotoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/VideoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift -target arm64-apple-tvos14.0 -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -I /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/Developer/Library/Frameworks -no-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -swift-version 5 -enforce-exclusivity\=checked -Onone -D SWIFT_PACKAGE -D DEBUG -D Xcode -serialize-debugging-options -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa_const_extract_protocols.json -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -resource-dir /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos18.4-22L251-271d326055c85f9856fa135c41255102.sdkstatcache -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/swift-overrides.hmap -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -module-name Aespa -frontend-parseable-output -disable-clang-spi -target-sdk-version 18.4 -target-sdk-name appletvos18.4 -external-plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins\#/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/local/lib/swift/host/plugins\#/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -in-process-plugin-server-path /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode-16.3.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa-master-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa-master-emit-module.d -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Aespa.build/Debug-appletvos/Aespa.build/Objects-normal/arm64/Aespa.abi.json
EmitSwiftModule normal arm64 (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:105:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        public var cameraDevicePreference: AVCaptureDevice.DeviceType?
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:102:12: note: add @available attribute to enclosing struct
    struct Session {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:107:45: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        public init(cameraDevicePreference: AVCaptureDevice.DeviceType? = nil) {
                                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:107:16: note: add @available attribute to enclosing initializer
        public init(cameraDevicePreference: AVCaptureDevice.DeviceType? = nil) {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaOption.swift:102:12: note: add @available attribute to enclosing struct
    struct Session {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:31:58: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    private let previewLayerSubject: CurrentValueSubject<AVCaptureVideoPreviewLayer?, Never>
                                                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:33:31: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    private var photoSetting: AVCapturePhotoSettings
                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:41:30: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    public let previewLayer: AVCaptureVideoPreviewLayer
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:103:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    public var avCaptureSession: AVCaptureSession {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:103:16: note: add @available attribute to enclosing property
    public var avCaptureSession: AVCaptureSession {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:125:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public var currentFocusMode: AVCaptureDevice.FocusMode? {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:125:16: note: add @available attribute to enclosing property
    public var currentFocusMode: AVCaptureDevice.FocusMode? {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:131:36: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    public var currentOrientation: AVCaptureVideoOrientation? {
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:137:39: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public var currentCameraPosition: AVCaptureDevice.Position? {
                                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:137:16: note: add @available attribute to enclosing property
    public var currentCameraPosition: AVCaptureDevice.Position? {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:168:52: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    public var previewLayerPublisher: AnyPublisher<AVCaptureVideoPreviewLayer, Never> {
                                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:168:16: note: add @available attribute to enclosing property
    public var previewLayerPublisher: AnyPublisher<AVCaptureVideoPreviewLayer, Never> {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:22:12: note: add @available attribute to enclosing class
open class AespaSession {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:322:32: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public var currentSetting: AVCapturePhotoSettings {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:322:16: note: add @available attribute to enclosing property
    public var currentSetting: AVCapturePhotoSettings {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:313:1: note: add @available attribute to enclosing extension
extension AespaSession: PhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:369:20: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
        to preset: AVCaptureSession.Preset,
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:380:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:392:25: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
        to orientation: AVCaptureVideoOrientation,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:403:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.FocusMode, point: CGPoint? = nil,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:452:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:461:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:470:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public func flashMode(to mode: AVCaptureDevice.FlashMode) -> AespaPhotoContext {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:482:35: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public func custom(_ setting: AVCapturePhotoSettings) -> AespaPhotoContext {
                                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/AespaSession.swift:365:1: note: add @available attribute to enclosing extension
extension AespaSession {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:16:65: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
    private let fileIOResultSubject = PassthroughSubject<Result<AVCapturePhoto, Error>, Never>()
                                                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:13:7: note: add @available attribute to enclosing class
class AespaCoreCamera: NSObject {
      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:34:18: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
        setting: AVCapturePhotoSettings,
                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:33:10: note: add @available attribute to enclosing instance method
    func capture(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:32:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:36:23: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
    ) async throws -> AVCapturePhoto {
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:33:10: note: add @available attribute to enclosing instance method
    func capture(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:32:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:57:19: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
        _ output: AVCapturePhotoOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:56:10: note: add @available attribute to enclosing instance method
    func photoOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:55:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera: AVCapturePhotoCaptureDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:58:41: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
        didFinishProcessingPhoto photo: AVCapturePhoto,
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:56:10: note: add @available attribute to enclosing instance method
    func photoOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreCamera.swift:55:1: note: add @available attribute to enclosing extension
extension AespaCoreCamera: AVCapturePhotoCaptureDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:72:19: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
        _ output: AVCaptureFileOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:71:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:74:28: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
        from connections: [AVCaptureConnection]
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:71:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:80:19: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
        _ output: AVCaptureFileOutput,
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:79:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:82:28: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
        from connections: [AVCaptureConnection],
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:79:10: note: add @available attribute to enclosing instance method
    func fileOutput(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreRecorder.swift:70:1: note: add @available attribute to enclosing extension
extension AespaCoreRecorder: AVCaptureFileOutputRecordingDelegate {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift:13:25: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
class AespaCoreSession: AVCaptureSession {
                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/AespaCoreSession.swift:13:7: note: add @available attribute to enclosing class
class AespaCoreSession: AVCaptureSession {
      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:21:31: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    private var photoSetting: AVCapturePhotoSettings
                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:14:12: note: add @available attribute to enclosing class
open class AespaPhotoContext {
           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:66:32: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public var currentSetting: AVCapturePhotoSettings {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:66:16: note: add @available attribute to enclosing property
    public var currentSetting: AVCapturePhotoSettings {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:51:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext: PhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:148:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    public func flashMode(to mode: AVCaptureDevice.FlashMode) -> AespaPhotoContext {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:145:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:161:35: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    public func custom(_ setting: AVCapturePhotoSettings) -> AespaPhotoContext {
                                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaPhotoContext.swift:145:1: note: add @available attribute to enclosing extension
extension AespaPhotoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:185:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:163:1: note: add @available attribute to enclosing extension
extension AespaVideoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:197:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/AespaVideoContext.swift:163:1: note: add @available attribute to enclosing extension
extension AespaVideoContext {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:54:20: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
        to preset: AVCaptureSession.Preset,
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:53:29: note: add @available attribute to enclosing instance method
    @discardableResult func quality(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:68:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:67:29: note: add @available attribute to enclosing instance method
    @discardableResult func position(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:83:25: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
        to orientation: AVCaptureVideoOrientation,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:96:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.FocusMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:95:29: note: add @available attribute to enclosing instance method
    @discardableResult func focus(
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:25:17: note: add @available attribute to enclosing protocol
public protocol CommonContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:230:15: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
        mode: AVCaptureVideoStabilizationMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:229:10: note: add @available attribute to enclosing instance method
    func stabilization(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:141:17: note: add @available attribute to enclosing protocol
public protocol VideoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:246:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        mode: AVCaptureDevice.TorchMode,
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:245:10: note: add @available attribute to enclosing instance method
    func torch(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:141:17: note: add @available attribute to enclosing protocol
public protocol VideoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:278:25: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    var currentSetting: AVCapturePhotoSettings { get }
                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:278:9: note: add @available attribute to enclosing property
    var currentSetting: AVCapturePhotoSettings { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:324:48: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    @discardableResult func flashMode(to mode: AVCaptureDevice.FlashMode) -> PhotoContextType
                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:324:29: note: add @available attribute to enclosing instance method
    @discardableResult func flashMode(to mode: AVCaptureDevice.FlashMode) -> PhotoContextType
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:340:28: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    func custom(_ setting: AVCapturePhotoSettings) -> PhotoContextType
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:340:10: note: add @available attribute to enclosing instance method
    func custom(_ setting: AVCapturePhotoSettings) -> PhotoContextType
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:265:17: note: add @available attribute to enclosing protocol
public protocol PhotoContext {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:366:26: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    case quality(preset: AVCaptureSession.Preset)
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:374:29: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case position(position: AVCaptureDevice.Position)
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:383:35: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    case orientation(orientation: AVCaptureVideoOrientation)
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:390:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case focus(mode: AVCaptureDevice.FocusMode, point: CGPoint? = nil)
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:361:13: note: add @available attribute to enclosing enum
public enum CommonContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:429:30: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    case stabilization(mode: AVCaptureVideoStabilizationMode)
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:418:13: note: add @available attribute to enclosing enum
public enum VideoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:439:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case torch(mode: AVCaptureDevice.TorchMode, level: Float)
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:418:13: note: add @available attribute to enclosing enum
public enum VideoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:460:26: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    case flashMode(mode: AVCaptureDevice.FlashMode)
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:455:13: note: add @available attribute to enclosing enum
public enum PhotoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:475:41: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    case custom(avCapturePhotoSettings: AVCapturePhotoSettings)
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Context/Context.swift:455:13: note: add @available attribute to enclosing enum
public enum PhotoContextOption {
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:12:27: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var videoOrientation: AVCaptureVideoOrientation { get set }
                          ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:42: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
                                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:9: note: add @available attribute to enclosing property
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureConnectionRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:16:38: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    func orientation(to orientation: AVCaptureVideoOrientation)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:17:37: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode)
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:17:10: note: add @available attribute to enclosing instance method
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureConnectionRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:21:38: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    func orientation(to orientation: AVCaptureVideoOrientation) {
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:25:37: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode) {
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:25:10: note: add @available attribute to enclosing instance method
    func stabilizationMode(to mode: AVCaptureVideoStabilizationMode) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: note: add @available attribute to enclosing extension
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: type 'AVCaptureConnection' does not conform to protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: unavailable property 'videoOrientation' was used to satisfy a requirement of protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1056:48: note: 'videoOrientation' declared here
@property(nonatomic) AVCaptureVideoOrientation videoOrientation API_DEPRECATED("Use -videoRotationAngle instead", macos(10.7, 14.0), ios(4.0, 17.0), macCatalyst(14.0, 17.0)) API_UNAVAILABLE(tvos, visionos);
                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:12:9: note: requirement 'videoOrientation' declared here
    var videoOrientation: AVCaptureVideoOrientation { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: protocol 'AespaCaptureConnectionRepresentable' requires 'preferredVideoStabilizationMode' to be available in tvOS 14.0 and newer
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1156:54: note: 'preferredVideoStabilizationMode' declared here
@property(nonatomic) AVCaptureVideoStabilizationMode preferredVideoStabilizationMode API_AVAILABLE(ios(8.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                                                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:13:9: note: protocol requirement here
    var preferredVideoStabilizationMode: AVCaptureVideoStabilizationMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: error: unavailable property 'isVideoOrientationSupported' was used to satisfy a requirement of protocol 'AespaCaptureConnectionRepresentable'
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:1046:73: note: 'isVideoOrientationSupported' declared here
@property(nonatomic, readonly, getter=isVideoOrientationSupported) BOOL supportsVideoOrientation API_DEPRECATED("Use -isVideoRotationAngleSupported: instead", macos(10.7, 14.0), ios(4.0, 17.0), macCatalyst(14.0, 17.0)) API_UNAVAILABLE(tvos, visionos);
                                                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:14:9: note: requirement 'isVideoOrientationSupported' declared here
    var isVideoOrientationSupported: Bool { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:11: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift:20:1: note: add @available attribute to enclosing extension
extension AVCaptureConnection: AespaCaptureConnectionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var focusMode: AVCaptureDevice.FocusMode { get set }
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:9: note: add @available attribute to enclosing property
    var focusMode: AVCaptureDevice.FocusMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var flashMode: AVCaptureDevice.FlashMode { get set }
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:9: note: add @available attribute to enclosing property
    var flashMode: AVCaptureDevice.FlashMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:10: note: add @available attribute to enclosing instance method
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:23:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:23:10: note: add @available attribute to enclosing instance method
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:24:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func torchMode(_ torchMode: AVCaptureDevice.TorchMode)
                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:24:10: note: add @available attribute to enclosing instance method
    func torchMode(_ torchMode: AVCaptureDevice.TorchMode)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaCaptureDeviceRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:30:33: error: 'TorchMode' is only available in tvOS 17.0 or newer
    func torchMode(_ torchMode: TorchMode) {
                                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:30:10: note: add @available attribute to enclosing instance method
    func torchMode(_ torchMode: TorchMode) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:47:36: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws {
                                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:47:10: note: add @available attribute to enclosing instance method
    func setFocusMode(_ focusMode: AVCaptureDevice.FocusMode, point: CGPoint?) throws {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'hasTorch' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:976:37: note: 'hasTorch' declared here
@property(nonatomic, readonly) BOOL hasTorch;
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:12:9: note: protocol requirement here
    var hasTorch: Bool { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'focusMode' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1120:41: note: 'focusMode' declared here
@property(nonatomic) AVCaptureFocusMode focusMode;
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:13:9: note: protocol requirement here
    var focusMode: AVCaptureDevice.FocusMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'isSubjectAreaChangeMonitoringEnabled' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1748:72: note: 'isSubjectAreaChangeMonitoringEnabled' declared here
@property(nonatomic, getter=isSubjectAreaChangeMonitoringEnabled) BOOL subjectAreaChangeMonitoringEnabled API_AVAILABLE(ios(5.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                                                                       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:14:9: note: protocol requirement here
    var isSubjectAreaChangeMonitoringEnabled: Bool { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'flashMode' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:934:41: note: 'flashMode' declared here
@property(nonatomic) AVCaptureFlashMode flashMode API_DEPRECATED("Use AVCapturePhotoSettings.flashMode instead.", ios(4.0, 10.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos);
                                        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:15:9: note: protocol requirement here
    var flashMode: AVCaptureDevice.FlashMode { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'videoZoomFactor' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1804:30: note: 'videoZoomFactor' declared here
@property(nonatomic) CGFloat videoZoomFactor API_AVAILABLE(ios(7.0), macCatalyst(14.0), tvos(17.0)) API_UNAVAILABLE(macos, visionos);
                             ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:16:9: note: protocol requirement here
    var videoZoomFactor: CGFloat { get set }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'isFocusModeSupported' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
AVFoundation.AVCaptureDevice.isFocusModeSupported:2:11: note: 'isFocusModeSupported' declared here
open func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool}
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:20:10: note: protocol requirement here
    func isFocusModeSupported(_ focusMode: AVCaptureDevice.FocusMode) -> Bool
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: error: protocol 'AespaCaptureDeviceRepresentable' requires 'setTorchModeOn(level:)' to be available in tvOS 14.0 and newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
AVFoundation.AVCaptureDevice.setTorchModeOn:3:13: note: 'setTorchModeOn(level:)' declared here
  open func setTorchModeOn(level torchLevel: Float) throws}
            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:26:10: note: protocol requirement here
    func setTorchModeOn(level torchLevel: Float) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:11: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift:29:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice: AespaCaptureDeviceRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:15:37: error: 'AVCaptureFileOutputRecordingDelegate' is only available in tvOS 17.0 or newer
        recordingDelegate delegate: AVCaptureFileOutputRecordingDelegate)
                                    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:13:10: note: add @available attribute to enclosing instance method
    func startRecording(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaFileOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:19:11: error: 'AVCaptureFileOutput' is only available in tvOS 17.0 or newer
extension AVCaptureFileOutput: AespaFileOutputRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift:19:1: note: add @available attribute to enclosing extension
extension AVCaptureFileOutput: AespaFileOutputRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:29: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
                            ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:10: note: add @available attribute to enclosing instance method
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaPhotoOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:63: error: 'AVCapturePhotoCaptureDelegate' is only available in tvOS 17.0 or newer
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
                                                              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:12:10: note: add @available attribute to enclosing instance method
    func capturePhoto(with: AVCapturePhotoSettings, delegate: AVCapturePhotoCaptureDelegate)
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:11:10: note: add @available attribute to enclosing protocol
protocol AespaPhotoOutputRepresentable {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:16:11: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
extension AVCapturePhotoOutput: AespaPhotoOutputRepresentable {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift:16:1: note: add @available attribute to enclosing extension
extension AVCapturePhotoOutput: AespaPhotoOutputRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:16:27: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var avCaptureSession: AVCaptureSession { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:16:9: note: add @available attribute to enclosing property
    var avCaptureSession: AVCaptureSession { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:22:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var audioDeviceInput: AVCaptureDeviceInput? { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:22:9: note: add @available attribute to enclosing property
    var audioDeviceInput: AVCaptureDeviceInput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:25:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var videoDeviceInput: AVCaptureDeviceInput? { get }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:25:9: note: add @available attribute to enclosing property
    var videoDeviceInput: AVCaptureDeviceInput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:28:26: error: 'AVCaptureMovieFileOutput' is only available in tvOS 17.0 or newer
    var movieFileOutput: AVCaptureMovieFileOutput? { get }
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:28:9: note: add @available attribute to enclosing property
    var movieFileOutput: AVCaptureMovieFileOutput? { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:31:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var previewLayer: AVCaptureVideoPreviewLayer { get }
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:31:9: note: add @available attribute to enclosing property
    var previewLayer: AVCaptureVideoPreviewLayer { get }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:64:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:63:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:65:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        device deviceType: AVCaptureDevice.DeviceType?
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:63:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:69:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    func videoQuality(to preset: AVCaptureSession.Preset) throws
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:69:10: note: add @available attribute to enclosing instance method
    func videoQuality(to preset: AVCaptureSession.Preset) throws
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:14:17: note: add @available attribute to enclosing protocol
public protocol AespaCoreSessionRepresentable {
                ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:74:27: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var avCaptureSession: AVCaptureSession { self }
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:74:9: note: add @available attribute to enclosing property
    var avCaptureSession: AVCaptureSession { self }
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:76:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var audioDeviceInput: AVCaptureDeviceInput? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:76:9: note: add @available attribute to enclosing property
    var audioDeviceInput: AVCaptureDeviceInput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:83:27: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    var videoDeviceInput: AVCaptureDeviceInput? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:83:9: note: add @available attribute to enclosing property
    var videoDeviceInput: AVCaptureDeviceInput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:90:26: error: 'AVCaptureMovieFileOutput' is only available in tvOS 17.0 or newer
    var movieFileOutput: AVCaptureMovieFileOutput? {
                         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:90:9: note: add @available attribute to enclosing property
    var movieFileOutput: AVCaptureMovieFileOutput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:98:22: error: 'AVCapturePhotoOutput' is only available in tvOS 17.0 or newer
    var photoOutput: AVCapturePhotoOutput? {
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:98:9: note: add @available attribute to enclosing property
    var photoOutput: AVCapturePhotoOutput? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:106:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var previewLayer: AVCaptureVideoPreviewLayer {
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:106:9: note: add @available attribute to enclosing property
    var previewLayer: AVCaptureVideoPreviewLayer {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:191:22: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        to position: AVCaptureDevice.Position,
                     ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:190:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:192:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
        device deviceType: AVCaptureDevice.DeviceType?
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:190:10: note: add @available attribute to enclosing instance method
    func cameraPosition(
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:220:34: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    func videoQuality(to preset: AVCaptureSession.Preset) {
                                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:220:10: note: add @available attribute to enclosing instance method
    func videoQuality(to preset: AVCaptureSession.Preset) {
         ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift:72:1: note: add @available attribute to enclosing extension
extension AespaCoreSession: AespaCoreSessionRepresentable {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:12:18: error: 'AVCapturePhotoSettings' is only available in tvOS 17.0 or newer
    let setting: AVCapturePhotoSettings
                 ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct CapturePhotoProcessor: AespaCapturePhotoOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:13:19: error: 'AVCapturePhotoCaptureDelegate' is only available in tvOS 17.0 or newer
    let delegate: AVCapturePhotoCaptureDelegate
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct CapturePhotoProcessor: AespaCapturePhotoOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift:13:19: error: 'AVCaptureFileOutputRecordingDelegate' is only available in tvOS 17.0 or newer
    let delegate: AVCaptureFileOutputRecordingDelegate
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift:11:8: note: add @available attribute to enclosing struct
struct StartRecordProcessor: AespaMovieFileOutputProcessing {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoOrientationTuner.swift:11:22: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var orientation: AVCaptureVideoOrientation
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift:11:27: error: 'AVCaptureVideoStabilizationMode' is only available in tvOS 17.0 or newer
    var stabilzationMode: AVCaptureVideoStabilizationMode
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift:10:8: note: add @available attribute to enclosing struct
struct VideoStabilizationTuner: AespaConnectionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift:15:15: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    let mode: AVCaptureDevice.FocusMode
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift:12:8: note: add @available attribute to enclosing struct
struct FocusTuner: AespaDeviceTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift:13:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    let torchMode: AVCaptureDevice.TorchMode
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift:11:8: note: add @available attribute to enclosing struct
struct TorchTuner: AespaDeviceTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:12:19: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var position: AVCaptureDevice.Position
                  ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:13:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var devicePreference: AVCaptureDevice.DeviceType?
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:20: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
                   ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:5: note: add @available attribute to enclosing initializer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:64: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
                                                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:15:5: note: add @available attribute to enclosing initializer
    init(position: AVCaptureDevice.Position, devicePreference: AVCaptureDevice.DeviceType? = nil) {
    ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift:10:8: note: add @available attribute to enclosing struct
struct CameraPositionTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift:12:23: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    var videoQuality: AVCaptureSession.Preset
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift:10:8: note: add @available attribute to enclosing struct
struct QualityTuner: AespaSessionTuning {
       ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:11:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var chooseBestCamera: AVCaptureDevice? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:11:9: note: add @available attribute to enclosing property
    var chooseBestCamera: AVCaptureDevice? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice.Position {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:11: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
extension AVCaptureDevice.Position {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:10:1: note: add @available attribute to enclosing extension
extension AVCaptureDevice.Position {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:34:11: error: 'AVCapturePhoto' is only available in tvOS 17.0 or newer
extension AVCapturePhoto {
          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift:34:1: note: add @available attribute to enclosing extension
extension AVCapturePhoto {
^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift:12:29: error: 'AVCaptureVideoOrientation' is unavailable in tvOS
    var toVideoOrientation: AVCaptureVideoOrientation {
                            ^~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureSession.h:140:28: note: 'AVCaptureVideoOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, AVCaptureVideoOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift:11:11: error: 'UIDeviceOrientation' is unavailable in tvOS
extension UIDeviceOrientation {
          ^~~~~~~~~~~~~~~~~~~
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS18.4.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIOrientation.h:13:28: note: 'UIDeviceOrientation' has been explicitly marked unavailable here
typedef NS_ENUM(NSInteger, UIDeviceOrientation) {
                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:57:44: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    @State private var preferredFocusMode: AVCaptureDevice.FocusMode = .continuousAutoFocus
                                           ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:86:16: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    var layer: AVCaptureVideoPreviewLayer {
               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:86:9: note: add @available attribute to enclosing property
    var layer: AVCaptureVideoPreviewLayer {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:90:27: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var currentFocusMode: AVCaptureDevice.FocusMode? {
                          ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:90:9: note: add @available attribute to enclosing property
    var currentFocusMode: AVCaptureDevice.FocusMode? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:94:32: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    var currentCameraPosition: AVCaptureDevice.Position? {
                               ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:94:9: note: add @available attribute to enclosing property
    var currentCameraPosition: AVCaptureDevice.Position? {
        ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift:48:15: note: add @available attribute to enclosing struct
public struct InteractivePreview: View {
              ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift:15:23: error: 'AVCaptureVideoPreviewLayer' is only available in tvOS 17.0 or newer
    let previewLayer: AVCaptureVideoPreviewLayer
                      ^
/Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift:12:8: note: add @available attribute to enclosing struct
struct Preview: UIViewControllerRepresentable {
       ^
SwiftCompile normal arm64 Compiling\ PhotoFileGenerator.swift,\ VideoFileGenerator.swift,\ Logger.swift,\ InteractivePreview.swift,\ Preview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/PhotoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/VideoFileGenerator.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/PhotoFileGenerator.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/VideoFileGenerator.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Log/Logger.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/InteractivePreview.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/View/Preview.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ AVCaptureConnection+AespaRepresentable.swift,\ AVCaptureDevice+AespaRepresentable.swift,\ AVCaptureFileOutput+AespaRepresentable.swift,\ AVCapturePhotoOutput+AespaRepresentable.swift,\ AespaCoreSession+AespaRepresentable.swift,\ Photos+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/Photos+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureConnection+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureDevice+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCaptureFileOutput+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AVCapturePhotoOutput+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/AespaCoreSession+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Core/Representable/Photos+AespaRepresentable.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ VideoStabilizationTuner.swift,\ ChangeMonitoringTuner.swift,\ FocusTuner.swift,\ TorchTuner.swift,\ ZoomTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ChangeMonitoringTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ZoomTuner.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoStabilizationTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ChangeMonitoringTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/FocusTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/TorchTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Device/ZoomTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ AespaLoading.swift,\ AssetLoader.swift,\ AespaProcessing.swift,\ PhotoAssetAdditionProcessor.swift,\ VideoAssetAdditionProcessor.swift,\ CapturePhotoProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/AespaLoading.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/Asset/AssetLoader.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/AespaProcessing.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/PhotoAssetAdditionProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/VideoAssetAdditionProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/AespaLoading.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Loader/Asset/AssetLoader.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/AespaProcessing.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/PhotoAssetAdditionProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Asset/VideoAssetAdditionProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Capture/CapturePhotoProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ AudioTuner.swift,\ CameraPositionTuner.swift,\ QualityTuner.swift,\ SessionTerminationTuner.swift,\ AlbumImporter.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/AudioTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/SessionTerminationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Album/AlbumImporter.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/AudioTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/CameraPositionTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/QualityTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Session/SessionTerminationTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Album/AlbumImporter.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ AuthorizationChecker.swift,\ AVFoundation+Extension.swift,\ SwiftUI+Extension.swift,\ UIKit+Extension.swift,\ FilePathProvider.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Authorization/AuthorizationChecker.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/SwiftUI+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/FilePathProvider.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Authorization/AuthorizationChecker.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/AVFoundation+Extension.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/SwiftUI+Extension.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/Extension/UIKit+Extension.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Util/File/FilePathProvider.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ FileWritingProcessor.swift,\ FinishRecordProcessor.swift,\ StartRecordProcessor.swift,\ AespaTuning.swift,\ VideoOrientationTuner.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/File/FileWritingProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/FinishRecordProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/AespaTuning.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoOrientationTuner.swift (in target 'Aespa' from project 'Aespa')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/File/FileWritingProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/FinishRecordProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Processor/Record/StartRecordProcessor.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/AespaTuning.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Tuner/Connection/VideoOrientationTuner.swift (in target 'Aespa' from project 'Aespa')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ PhotoAsset.swift,\ VideoAsset.swift,\ VideoAssetEvent.swift,\ PhotoFile.swift,\ VideoFile.swift,\ AssetCachingProxy.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/PhotoAsset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/VideoAsset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Event/VideoAssetEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/PhotoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/VideoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Proxy/AssetCachingProxy.swift (in target 'Aespa' from project 'Aespa')
Command SwiftCompile failed with a nonzero exit code
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Aespa (in target 'Aespa' from project 'Aespa')
	EmitSwiftModule normal arm64 (in target 'Aespa' from project 'Aespa')
	SwiftCompile normal arm64 Compiling\ PhotoAsset.swift,\ VideoAsset.swift,\ VideoAssetEvent.swift,\ PhotoFile.swift,\ VideoFile.swift,\ AssetCachingProxy.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/PhotoAsset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Asset/VideoAsset.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Event/VideoAssetEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/PhotoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/File/VideoFile.swift /Users/admin/builder/spi-builder-workspace/Sources/Aespa/Data/Proxy/AssetCachingProxy.swift (in target 'Aespa' from project 'Aespa')
	Building workspace spi-builder-workspace with scheme Aespa
(4 failures)
BUILD FAILURE 6.1 tvOS