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

Successful build of AgoraUIKit_macOS, reference 4.0.6 (c76400), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 22:16:58 UTC.

Swift 6 data race errors: 114

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

    |                   `- note: 'rtcEngine(_:streamInjectedStatusOfUrl:uid:status:)' declared here
114 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingStateChanged state: AgoraAudioMixingStateType, reasonCode: AgoraAudioMixingReasonCode)
115 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingPositionChanged position: Int)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+RtcEngineDelegateOverflow.swift:123:15: warning: main actor-isolated instance method 'rtcEngine(_:audioMixingStateChanged:reasonCode:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
121 |         self.agoraSettings.rtcDelegate?.rtcEngine?(engine, didRemoteSubscribeFallbackToAudioOnly: isFallbackOrRecover, byUid: uid)
122 |     }
123 |     open func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingStateChanged state: AgoraAudioMixingStateType, reasonCode: AgoraAudioMixingReasonCode) {
    |               |- warning: main actor-isolated instance method 'rtcEngine(_:audioMixingStateChanged:reasonCode:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |               `- note: add 'nonisolated' to 'rtcEngine(_:audioMixingStateChanged:reasonCode:)' to make this instance method not isolated to the actor
124 |         self.agoraSettings.rtcDelegate?.rtcEngine?(engine, audioMixingStateChanged: state, reasonCode: reasonCode)
125 |     }
AgoraRtcKit.AgoraRtcEngineDelegate:114:19: note: 'rtcEngine(_:audioMixingStateChanged:reasonCode:)' declared here
112 |     optional func rtcEngineTranscodingUpdated(_ engine: AgoraRtcEngineKit)
113 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, streamInjectedStatusOfUrl url: String, uid: UInt, status: AgoraInjectStreamStatus)
114 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingStateChanged state: AgoraAudioMixingStateType, reasonCode: AgoraAudioMixingReasonCode)
    |                   `- note: 'rtcEngine(_:audioMixingStateChanged:reasonCode:)' declared here
115 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingPositionChanged position: Int)
116 |     @available(macOS, unavailable, deprecated: 10.9, message: "Use rtcEngine:localVideoStateChangedOfState:error:sourceType instead.")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+RtcEngineDelegateOverflow.swift:147:15: warning: main actor-isolated instance method 'rtcEngine(_:audioMixingPositionChanged:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
145 |         self.agoraSettings.rtcDelegate?.rtcEngine?(engine, licenseValidationFailure: error)
146 |     }
147 |     open func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingPositionChanged position: Int) {
    |               |- warning: main actor-isolated instance method 'rtcEngine(_:audioMixingPositionChanged:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |               `- note: add 'nonisolated' to 'rtcEngine(_:audioMixingPositionChanged:)' to make this instance method not isolated to the actor
148 |         self.agoraSettings.rtcDelegate?.rtcEngine?(engine, audioMixingPositionChanged: position)
149 |     }
AgoraRtcKit.AgoraRtcEngineDelegate:115:19: note: 'rtcEngine(_:audioMixingPositionChanged:)' declared here
113 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, streamInjectedStatusOfUrl url: String, uid: UInt, status: AgoraInjectStreamStatus)
114 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingStateChanged state: AgoraAudioMixingStateType, reasonCode: AgoraAudioMixingReasonCode)
115 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, audioMixingPositionChanged position: Int)
    |                   `- note: 'rtcEngine(_:audioMixingPositionChanged:)' declared here
116 |     @available(macOS, unavailable, deprecated: 10.9, message: "Use rtcEngine:localVideoStateChangedOfState:error:sourceType instead.")
117 |     optional func rtcEngine(_ engine: AgoraRtcEngineKit, localVideoStateChangedOf state: AgoraVideoLocalState, error: AgoraLocalVideoStreamError)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:40:27: warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
    |                           |- warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'cameraButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:42:27: warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
    |                           |- warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'micButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:50:27: warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
    |                           |- warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'screenShareButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:44:27: warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
    |                           |- warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'flipButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:47:27: warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
 47 |         public static let beautifyButton = BuiltinButtons(rawValue: 1 << 3)
    |                           |- warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'beautifyButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
[28/48] Compiling AgoraUIKit AgoraVideoViewer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:135:27: warning: static property 'floating' is not concurrency-safe because non-'Sendable' type 'AgoraVideoViewer.Style' may have shared mutable state; this is an error in the Swift 6 language mode
127 |     }
128 |     /// Style and organisation to be applied to all the videos in this view.
129 |     public enum Style: Equatable {
    |                 `- note: consider making enum 'Style' conform to the 'Sendable' protocol
130 |         /// grid lays out all the videos in an NxN grid, regardless of how many there are.
131 |         case grid
    :
133 |         case pinned
134 |         /// Legacy, will remove in future versions
135 |         public static let floating = Style.pinned
    |                           |- warning: static property 'floating' is not concurrency-safe because non-'Sendable' type 'AgoraVideoViewer.Style' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'floating' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
136 |         /// collection only shows the collectionview, no other UI is visible, except video controls
137 |         case collection
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: warning: main actor-isolated property 'rtmController' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
100 |
101 | /// View to contain all the video session objects, including camera feeds and buttons for settings
102 | open class AgoraVideoViewer: MPView, SingleVideoViewDelegate {
    |                                      `- note: add '@preconcurrency' to the 'SingleVideoViewDelegate' conformance to defer isolation checking to run time
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
    :
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- warning: main actor-isolated property 'rtmController' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSingleVideoView+RtmDelegate.swift:21:9: note: 'rtmController' declared here
19 |     #if canImport(AgoraRtmControl)
20 |     /// RTM Controller class for managing RTM messages
21 |     var rtmController: AgoraRtmController? { get set }
   |         `- note: 'rtmController' declared here
22 |     /// Create and send request to user to mute/unmute a device
23 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+MuteRequests.swift:92:21: warning: main actor-isolated instance method 'sendMuteRequest(to:mute:device:isForceful:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 90 |     ///   - device: Type of device (camera/microphone)
 91 |     ///   - isForceful: Whether the request should force its way through, otherwise a request is made. Cannot forcefully unmute.
 92 |     @objc open func sendMuteRequest(to rtcId: UInt, mute: Bool, device: MutingDevices, isForceful: Bool = false) {
    |                     |- warning: main actor-isolated instance method 'sendMuteRequest(to:mute:device:isForceful:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                     `- note: add 'nonisolated' to 'sendMuteRequest(to:mute:device:isForceful:)' to make this instance method not isolated to the actor
 93 |         if isForceful == true, mute == false {
 94 |             AgoraVideoViewer.agoraPrint(.error, message: "Invalid mute request")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSingleVideoView+RtmDelegate.swift:37:10: note: mark the protocol requirement 'sendMuteRequest(to:mute:device:isForceful:)' 'async' to allow actor-isolated conformances
35 |     ///   - device: Type of device (camera/microphone)
36 |     ///   - isForceful: Whether the request should force its way through, otherwise a request is made. Cannot forcefully unmute.
37 |     func sendMuteRequest(to rtcId: UInt, mute: Bool, device: AgoraVideoViewer.MutingDevices, isForceful: Bool)
   |          `- note: mark the protocol requirement 'sendMuteRequest(to:mute:device:isForceful:)' 'async' to allow actor-isolated conformances
38 |
39 |     #endif
[29/48] Compiling AgoraUIKit AgoraViewer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:135:27: warning: static property 'floating' is not concurrency-safe because non-'Sendable' type 'AgoraVideoViewer.Style' may have shared mutable state; this is an error in the Swift 6 language mode
127 |     }
128 |     /// Style and organisation to be applied to all the videos in this view.
129 |     public enum Style: Equatable {
    |                 `- note: consider making enum 'Style' conform to the 'Sendable' protocol
130 |         /// grid lays out all the videos in an NxN grid, regardless of how many there are.
131 |         case grid
    :
133 |         case pinned
134 |         /// Legacy, will remove in future versions
135 |         public static let floating = Style.pinned
    |                           |- warning: static property 'floating' is not concurrency-safe because non-'Sendable' type 'AgoraVideoViewer.Style' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'floating' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
136 |         /// collection only shows the collectionview, no other UI is visible, except video controls
137 |         case collection
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: warning: main actor-isolated property 'rtmController' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
100 |
101 | /// View to contain all the video session objects, including camera feeds and buttons for settings
102 | open class AgoraVideoViewer: MPView, SingleVideoViewDelegate {
    |                                      `- note: add '@preconcurrency' to the 'SingleVideoViewDelegate' conformance to defer isolation checking to run time
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
    :
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- warning: main actor-isolated property 'rtmController' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSingleVideoView+RtmDelegate.swift:21:9: note: 'rtmController' declared here
19 |     #if canImport(AgoraRtmControl)
20 |     /// RTM Controller class for managing RTM messages
21 |     var rtmController: AgoraRtmController? { get set }
   |         `- note: 'rtmController' declared here
22 |     /// Create and send request to user to mute/unmute a device
23 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+MuteRequests.swift:92:21: warning: main actor-isolated instance method 'sendMuteRequest(to:mute:device:isForceful:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 90 |     ///   - device: Type of device (camera/microphone)
 91 |     ///   - isForceful: Whether the request should force its way through, otherwise a request is made. Cannot forcefully unmute.
 92 |     @objc open func sendMuteRequest(to rtcId: UInt, mute: Bool, device: MutingDevices, isForceful: Bool = false) {
    |                     |- warning: main actor-isolated instance method 'sendMuteRequest(to:mute:device:isForceful:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                     `- note: add 'nonisolated' to 'sendMuteRequest(to:mute:device:isForceful:)' to make this instance method not isolated to the actor
 93 |         if isForceful == true, mute == false {
 94 |             AgoraVideoViewer.agoraPrint(.error, message: "Invalid mute request")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSingleVideoView+RtmDelegate.swift:37:10: note: mark the protocol requirement 'sendMuteRequest(to:mute:device:isForceful:)' 'async' to allow actor-isolated conformances
35 |     ///   - device: Type of device (camera/microphone)
36 |     ///   - isForceful: Whether the request should force its way through, otherwise a request is made. Cannot forcefully unmute.
37 |     func sendMuteRequest(to rtcId: UInt, mute: Bool, device: AgoraVideoViewer.MutingDevices, isForceful: Bool)
   |          `- note: mark the protocol requirement 'sendMuteRequest(to:mute:device:isForceful:)' 'async' to allow actor-isolated conformances
38 |
39 |     #endif
[30/48] Compiling AgoraUIKit AgoraVideoViewer+Utilities.swift
[31/48] Compiling AgoraUIKit AgoraVideoViewer+VideoControl.swift
[32/48] Compiling AgoraUIKit AgoraVideoViewer+JoinChannel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:17: warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                 |- warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:136:22: warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
134 |         if self.rtmController == nil {
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
    |                      `- warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: mutation of this property is only permitted within the actor
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: mutation of this property is only permitted within the actor
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:137:25: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
    |                         `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:138:38: warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
    |                                      `- warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |                 }
140 |                 callback?(self.rtmController)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Utilities.swift:32:26: note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
30 |         }
31 |     }
32 |     internal static func agoraPrint(_ tag: PrintType, message: Any) {
   |                          `- note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
33 |         if tag.rawValue <= AgoraVideoViewer.printLevel.rawValue {
34 |             print("[AgoraVideoViewer \(tag.printString)]: \(message)")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:32: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                                `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+LocalVideo.swift:62:17: warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 | import AVFoundation
13 |
14 | extension AgoraVideoViewer: AgoraCameraSourcePushDelegate {
   |                             `- note: add '@preconcurrency' to the 'AgoraCameraSourcePushDelegate' conformance to defer isolation checking to run time
15 |
16 |     @discardableResult
   :
60 |     ///   - rotation: Orientation of the incoming pixel buffer
61 |     ///   - timeStamp: Timestamp when the pixel buffer was captured.
62 |     public func myVideoCapture(
   |                 |- warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
   |                 `- note: add 'nonisolated' to 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' to make this instance method not isolated to the actor
63 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
64 |         rotation: Int, timeStamp: CMTime
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:101:10: note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
 99 | /// Delegate for capturing the frames from the camera source.
100 | public protocol AgoraCameraSourcePushDelegate: AnyObject {
101 |     func myVideoCapture(
    |          `- note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
102 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
103 |         rotation: Int, timeStamp: CMTime
[33/48] Compiling AgoraUIKit AgoraVideoViewer+LocalVideo.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:17: warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                 |- warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:136:22: warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
134 |         if self.rtmController == nil {
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
    |                      `- warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: mutation of this property is only permitted within the actor
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: mutation of this property is only permitted within the actor
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:137:25: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
    |                         `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:138:38: warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
    |                                      `- warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |                 }
140 |                 callback?(self.rtmController)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Utilities.swift:32:26: note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
30 |         }
31 |     }
32 |     internal static func agoraPrint(_ tag: PrintType, message: Any) {
   |                          `- note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
33 |         if tag.rawValue <= AgoraVideoViewer.printLevel.rawValue {
34 |             print("[AgoraVideoViewer \(tag.printString)]: \(message)")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:32: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                                `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+LocalVideo.swift:62:17: warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 | import AVFoundation
13 |
14 | extension AgoraVideoViewer: AgoraCameraSourcePushDelegate {
   |                             `- note: add '@preconcurrency' to the 'AgoraCameraSourcePushDelegate' conformance to defer isolation checking to run time
15 |
16 |     @discardableResult
   :
60 |     ///   - rotation: Orientation of the incoming pixel buffer
61 |     ///   - timeStamp: Timestamp when the pixel buffer was captured.
62 |     public func myVideoCapture(
   |                 |- warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
   |                 `- note: add 'nonisolated' to 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' to make this instance method not isolated to the actor
63 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
64 |         rotation: Int, timeStamp: CMTime
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:101:10: note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
 99 | /// Delegate for capturing the frames from the camera source.
100 | public protocol AgoraCameraSourcePushDelegate: AnyObject {
101 |     func myVideoCapture(
    |          `- note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
102 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
103 |         rotation: Int, timeStamp: CMTime
[34/48] Compiling AgoraUIKit AgoraVideoViewer+Ordering.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:17: warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                 |- warning: capture of 'callback' with non-sendable type '((AgoraRtmController?) -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:136:22: warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
134 |         if self.rtmController == nil {
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
    |                      `- warning: main actor-isolated property 'rtmController' can not be mutated from a Sendable closure; this is an error in the Swift 6 language mode
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: mutation of this property is only permitted within the actor
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: mutation of this property is only permitted within the actor
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:137:25: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
135 |             DispatchQueue.global(qos: .utility).async {
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
    |                         `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:138:38: warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
136 |                 self.rtmController = AgoraRtmController(delegate: self)
137 |                 if self.rtmController == nil {
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
    |                                      `- warning: call to main actor-isolated static method 'agoraPrint(_:message:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |                 }
140 |                 callback?(self.rtmController)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Utilities.swift:32:26: note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
30 |         }
31 |     }
32 |     internal static func agoraPrint(_ tag: PrintType, message: Any) {
   |                          `- note: calls to static method 'agoraPrint(_:message:)' from outside of its actor context are implicitly asynchronous
33 |         if tag.rawValue <= AgoraVideoViewer.printLevel.rawValue {
34 |             print("[AgoraVideoViewer \(tag.printString)]: \(message)")
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+JoinChannel.swift:140:32: warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
138 |                     AgoraVideoViewer.agoraPrint(.error, message: "Error initialising RTM")
139 |                 }
140 |                 callback?(self.rtmController)
    |                                `- warning: main actor-isolated property 'rtmController' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
141 |             }
142 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:117:16: note: property declared here
115 |     #if canImport(AgoraRtmControl)
116 |     /// Controller class for managing RTM messages
117 |     public var rtmController: AgoraRtmController?
    |                `- note: property declared here
118 |     #endif
119 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+LocalVideo.swift:62:17: warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
12 | import AVFoundation
13 |
14 | extension AgoraVideoViewer: AgoraCameraSourcePushDelegate {
   |                             `- note: add '@preconcurrency' to the 'AgoraCameraSourcePushDelegate' conformance to defer isolation checking to run time
15 |
16 |     @discardableResult
   :
60 |     ///   - rotation: Orientation of the incoming pixel buffer
61 |     ///   - timeStamp: Timestamp when the pixel buffer was captured.
62 |     public func myVideoCapture(
   |                 |- warning: main actor-isolated instance method 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
   |                 `- note: add 'nonisolated' to 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' to make this instance method not isolated to the actor
63 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
64 |         rotation: Int, timeStamp: CMTime
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:101:10: note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
 99 | /// Delegate for capturing the frames from the camera source.
100 | public protocol AgoraCameraSourcePushDelegate: AnyObject {
101 |     func myVideoCapture(
    |          `- note: mark the protocol requirement 'myVideoCapture(_:didOutputSampleBuffer:rotation:timeStamp:)' 'async' to allow actor-isolated conformances
102 |         _ capture: AgoraCameraSourcePush, didOutputSampleBuffer pixelBuffer: CVPixelBuffer,
103 |         rotation: Int, timeStamp: CMTime
[35/48] Compiling AgoraUIKit AgoraCameraSourcePush.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:157:33: warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 40 | open class CustomVideoSourcePreview: MPView {
 41 |     /// Layer that displays video from a camera device.
 42 |     open private(set) var previewLayer: AVCaptureVideoPreviewLayer?
    |                           `- note: property declared here
 43 |
 44 |     /// Add new frame to the preview layer
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
    |                                 `- warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:182:36: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
180 |
181 |         captureQueue.async { [weak self] in
182 |             guard let strongSelf = self else {
    |                                    `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:185:41: warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
185 |             strongSelf.setCaptureDevice(device, ofSession: strongSelf.captureSession)
    |                                         `- warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 |             strongSelf.captureSession.beginConfiguration()
187 |             if strongSelf.captureSession.canSetSessionPreset(.vga640x480) {
AVFoundation.AVCaptureDevice:2:12: note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class AVCaptureDevice : NSObject {
   |            `- note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 3 |     @available(*, unavailable)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 11 | import AppKit
 12 | #endif
 13 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 14 | import AgoraRtcKit
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:198:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
196 |         self.currentOutput?.setSampleBufferDelegate(self, queue: self.captureQueue)
197 |         self.captureQueue.async { [weak self] in
198 |             self?.captureSession.startRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
199 |         }
200 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:205:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
203 |         self.currentOutput?.setSampleBufferDelegate(nil, queue: nil)
204 |         self.captureQueue.async { [weak self] in
205 |             self?.captureSession.stopRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 |         }
207 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  `- warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
253 |                 rotation: imgRot, timeStamp: time
254 |             )
CoreVideo.CVBuffer:1:14: note: class 'CVBuffer' does not conform to the 'Sendable' protocol
1 | public class CVBuffer : _CFObject {
  |              `- note: class 'CVBuffer' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  |- warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'pixelBuffer' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
253 |                 rotation: imgRot, timeStamp: time
254 |             )
[36/48] Compiling AgoraUIKit AgoraCollectionViewer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:157:33: warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 40 | open class CustomVideoSourcePreview: MPView {
 41 |     /// Layer that displays video from a camera device.
 42 |     open private(set) var previewLayer: AVCaptureVideoPreviewLayer?
    |                           `- note: property declared here
 43 |
 44 |     /// Add new frame to the preview layer
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
    |                                 `- warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:182:36: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
180 |
181 |         captureQueue.async { [weak self] in
182 |             guard let strongSelf = self else {
    |                                    `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:185:41: warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
185 |             strongSelf.setCaptureDevice(device, ofSession: strongSelf.captureSession)
    |                                         `- warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 |             strongSelf.captureSession.beginConfiguration()
187 |             if strongSelf.captureSession.canSetSessionPreset(.vga640x480) {
AVFoundation.AVCaptureDevice:2:12: note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class AVCaptureDevice : NSObject {
   |            `- note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 3 |     @available(*, unavailable)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 11 | import AppKit
 12 | #endif
 13 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 14 | import AgoraRtcKit
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:198:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
196 |         self.currentOutput?.setSampleBufferDelegate(self, queue: self.captureQueue)
197 |         self.captureQueue.async { [weak self] in
198 |             self?.captureSession.startRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
199 |         }
200 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:205:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
203 |         self.currentOutput?.setSampleBufferDelegate(nil, queue: nil)
204 |         self.captureQueue.async { [weak self] in
205 |             self?.captureSession.stopRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 |         }
207 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  `- warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
253 |                 rotation: imgRot, timeStamp: time
254 |             )
CoreVideo.CVBuffer:1:14: note: class 'CVBuffer' does not conform to the 'Sendable' protocol
1 | public class CVBuffer : _CFObject {
  |              `- note: class 'CVBuffer' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  |- warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'pixelBuffer' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
253 |                 rotation: imgRot, timeStamp: time
254 |             )
[37/48] Compiling AgoraUIKit AgoraConnectionData.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:157:33: warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 40 | open class CustomVideoSourcePreview: MPView {
 41 |     /// Layer that displays video from a camera device.
 42 |     open private(set) var previewLayer: AVCaptureVideoPreviewLayer?
    |                           `- note: property declared here
 43 |
 44 |     /// Add new frame to the preview layer
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
    |                                 `- warning: main actor-isolated property 'previewLayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |     /// Add new frame to the preview layer
 45 |     /// - Parameter previewLayer: New `previewLayer` to be displayed on the preview.
 46 |     open func insertCaptureVideoPreviewLayer(previewLayer: AVCaptureVideoPreviewLayer) {
    |               `- note: calls to instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' from outside of its actor context are implicitly asynchronous
 47 |         self.previewLayer?.removeFromSuperlayer()
 48 |         #if os(macOS)
    :
154 |     /// Update the local preview layer to a new one.
155 |     /// - Parameter videoPreview: New custom preview layer.
156 |     open func updateVideoPreview(to videoPreview: CustomVideoSourcePreview) {
    |               `- note: add '@MainActor' to make instance method 'updateVideoPreview(to:)' part of global actor 'MainActor'
157 |         self.localVideoPreview?.previewLayer?.removeFromSuperlayer()
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      `- warning: call to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:182:36: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
180 |
181 |         captureQueue.async { [weak self] in
182 |             guard let strongSelf = self else {
    |                                    `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:185:41: warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
183 |                 return
184 |             }
185 |             strongSelf.setCaptureDevice(device, ofSession: strongSelf.captureSession)
    |                                         `- warning: capture of 'device' with non-sendable type 'AVCaptureDevice' in a `@Sendable` closure; this is an error in the Swift 6 language mode
186 |             strongSelf.captureSession.beginConfiguration()
187 |             if strongSelf.captureSession.canSetSessionPreset(.vga640x480) {
AVFoundation.AVCaptureDevice:2:12: note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 1 | @available(macOS 10.7, *)
 2 | open class AVCaptureDevice : NSObject {
   |            `- note: class 'AVCaptureDevice' does not conform to the 'Sendable' protocol
 3 |     @available(*, unavailable)
 4 |     public init()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:13:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 11 | import AppKit
 12 | #endif
 13 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
 14 | import AgoraRtcKit
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:198:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
196 |         self.currentOutput?.setSampleBufferDelegate(self, queue: self.captureQueue)
197 |         self.captureQueue.async { [weak self] in
198 |             self?.captureSession.startRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
199 |         }
200 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:205:13: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
203 |         self.currentOutput?.setSampleBufferDelegate(nil, queue: nil)
204 |         self.captureQueue.async { [weak self] in
205 |             self?.captureSession.stopRunning()
    |             `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
206 |         }
207 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
105 | }
106 |
107 | open class AgoraCameraSourcePush: NSObject {
    |            `- note: class 'AgoraCameraSourcePush' does not conform to the 'Sendable' protocol
108 |     fileprivate var delegate: AgoraCameraSourcePushDelegate?
109 |     private var localVideoPreview: CustomVideoSourcePreview?
    :
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  `- warning: capture of 'self' with non-sendable type 'AgoraCameraSourcePush?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  `- warning: capture of 'pixelBuffer' with non-sendable type 'CVImageBuffer' (aka 'CVBuffer') in a `@Sendable` closure; this is an error in the Swift 6 language mode
253 |                 rotation: imgRot, timeStamp: time
254 |             )
CoreVideo.CVBuffer:1:14: note: class 'CVBuffer' does not conform to the 'Sendable' protocol
1 | public class CVBuffer : _CFObject {
  |              `- note: class 'CVBuffer' does not conform to the 'Sendable' protocol
2 | }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:151:28: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
149 |
150 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
151 |         localVideoPreview?.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                            |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
152 |     }
153 |
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:160:22: warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
158 |
159 |         let previewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)
160 |         videoPreview.insertCaptureVideoPreviewLayer(previewLayer: previewLayer)
    |                      |- warning: sending 'previewLayer' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: sending task-isolated 'previewLayer' to main actor-isolated instance method 'insertCaptureVideoPreviewLayer(previewLayer:)' risks causing data races between main actor-isolated and task-isolated uses
161 |         self.localVideoPreview = videoPreview
162 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:244:34: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
242 |         let time = CMSampleBufferGetPresentationTimeStamp(sampleBuffer)
243 |         DispatchQueue.main.async {[weak self] in
244 |             guard let weakSelf = self else { return }
    |                                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
245 |
246 |             #if os(iOS)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraCameraSourcePush.swift:252:50: warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
250 |             #endif
251 |             weakSelf.delegate?.myVideoCapture(
252 |                 weakSelf, didOutputSampleBuffer: pixelBuffer,
    |                                                  |- warning: sending 'pixelBuffer' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'pixelBuffer' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
253 |                 rotation: imgRot, timeStamp: time
254 |             )
[38/48] Compiling AgoraUIKit AgoraSingleVideoView.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:157:17: warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 83 | import AgoraRtmControl
 84 |
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
    |                             `- note: add '@preconcurrency' to the 'RtmControllerDelegate' conformance to defer isolation checking to run time
 86 |
 87 |     public func rtmStateChanged(
    :
155 |         self.delegate?.incomingPongRequest(from: peerId)
156 |     }
157 |     public func rtmChannelJoined(
    |                 |- warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmChannelJoined(name:channel:code:)' to make this instance method not isolated to the actor
158 |         name: String, channel: AgoraRtmChannel, code: AgoraRtmJoinChannelErrorCode
159 |     ) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:17:10: note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 15 |     ///   - channel: instance of joined `AgoraRtmChannel`
 16 |     ///   - code: Error codes related to joining a channel.
 17 |     func rtmChannelJoined(
    |          `- note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 18 |         name: String, channel: AgoraRtmChannel,
 19 |         code: AgoraRtmJoinChannelErrorCode
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:104:16: warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
102 | open class AgoraVideoViewer: MPView, SingleVideoViewDelegate {
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
    |                `- warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
105 |     public var rtmLookup: [String: Codable] = [:]
106 |
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:23:9: note: 'rtcLookup' declared here
 21 |
 22 |     /// Lookup remote user RTM ID based on their RTC ID
 23 |     var rtcLookup: [UInt: String] { get set }
    |         `- note: 'rtcLookup' declared here
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:105:16: warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
105 |     public var rtmLookup: [String: Codable] = [:]
    |                `- warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
106 |
107 |     public internal(set) var customCamera: AgoraCameraSourcePush?
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:25:9: note: 'rtmLookup' declared here
 23 |     var rtcLookup: [UInt: String] { get set }
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
    |         `- note: 'rtmLookup' declared here
 26 |
 27 |     /// Delegate used for RTM
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:165:16: warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
163 |         self.delegate?.rtmChannelJoined(name: name, channel: channel, code: code)
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
    |                `- warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:28:9: note: 'rtmDelegate' declared here
 26 |
 27 |     /// Delegate used for RTM
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
    |         `- note: 'rtmDelegate' declared here
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:166:16: warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
    |                `- warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
168 |         self.sendPersonalData(to: member.userId)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:30:9: note: 'rtmChannelDelegate' declared here
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
    |         `- note: 'rtmChannelDelegate' declared here
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:143:16: warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
141 |
142 |     /// Agora Real-time Messaging Identifier (Agora RTM SDK).
143 |     public var rtmId: String { self.connectionData.rtmId }
    |                `- warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:32:9: note: 'rtmId' declared here
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
    |         `- note: 'rtmId' declared here
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:145:16: warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
143 |     public var rtmId: String { self.connectionData.rtmId }
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
    |                `- warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:34:9: note: 'rtcId' declared here
 32 |     var rtmId: String { get }
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
    |         `- note: 'rtcId' declared here
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:147:16: warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
    |                `- warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:36:9: note: 'appId' declared here
 34 |     var rtcId: UInt? { get }
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
    |         `- note: 'appId' declared here
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:149:16: warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
147 |     public var appId: String { self.connectionData.appId }
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
    |                `- warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
150 |         get { self.connectionData.rtmToken }
151 |         set { self.connectionData.rtmToken = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:38:9: note: 'rtmToken' declared here
 36 |     var appId: String { get }
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
    |         `- note: 'rtmToken' declared here
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:345:31: warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
343 |
344 |     /// Used by storyboard to set the AgoraSettings tokenURL
345 |     @IBInspectable public var tokenURL: String? {
    |                               `- warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
346 |         get { self.agoraSettings.tokenURL }
347 |         set {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:40:9: note: 'tokenURL' declared here
 38 |     var rtmToken: String? { get set }
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
    |         `- note: 'tokenURL' declared here
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:167:17: warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
    |                 |- warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'channel(_:memberJoined:)' to make this instance method not isolated to the actor
168 |         self.sendPersonalData(to: member.userId)
169 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:41:10: note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
    |          `- note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
 43 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:95:17: warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 93 |     ///   - message: Incoming RTM message.
 94 |     ///   - peerId: Id of the peer this message is coming from
 95 |     public func decodeMessage(message: AgoraRtmMessage, from peerId: String) {
    |                 |- warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'decodeMessage(message:from:)' to make this instance method not isolated to the actor
 96 |         var messageData: Data!
 97 |         if let message = message as? AgoraRtmRawMessage {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:46:10: note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 44 |     ///   - message: Message received from RTM
 45 |     ///   - peerId: ID of the user who sent the message
 46 |     func decodeMessage(message: AgoraRtmMessage, from peerId: String)
    |          `- note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 47 |     /// State of the RTM Controller has changed
 48 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:87:17: warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
 86 |
 87 |     public func rtmStateChanged(
    |                 |- warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmStateChanged(from:to:)' to make this instance method not isolated to the actor
 88 |         from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus
 89 |     ) { self.delegate?.rtmStateChanged(from: oldState, to: newState) }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:51:10: note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 49 |     ///   - oldState: Previous state of AgoraRtmController
 50 |     ///   - newState: New state of AgoraRtmController
 51 |     func rtmStateChanged(from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus)
    |          `- note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 52 | }
 53 |
[39/48] Compiling AgoraUIKit AgoraUIKit+AgoraRtmController+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:157:17: warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 83 | import AgoraRtmControl
 84 |
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
    |                             `- note: add '@preconcurrency' to the 'RtmControllerDelegate' conformance to defer isolation checking to run time
 86 |
 87 |     public func rtmStateChanged(
    :
155 |         self.delegate?.incomingPongRequest(from: peerId)
156 |     }
157 |     public func rtmChannelJoined(
    |                 |- warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmChannelJoined(name:channel:code:)' to make this instance method not isolated to the actor
158 |         name: String, channel: AgoraRtmChannel, code: AgoraRtmJoinChannelErrorCode
159 |     ) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:17:10: note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 15 |     ///   - channel: instance of joined `AgoraRtmChannel`
 16 |     ///   - code: Error codes related to joining a channel.
 17 |     func rtmChannelJoined(
    |          `- note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 18 |         name: String, channel: AgoraRtmChannel,
 19 |         code: AgoraRtmJoinChannelErrorCode
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:104:16: warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
102 | open class AgoraVideoViewer: MPView, SingleVideoViewDelegate {
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
    |                `- warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
105 |     public var rtmLookup: [String: Codable] = [:]
106 |
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:23:9: note: 'rtcLookup' declared here
 21 |
 22 |     /// Lookup remote user RTM ID based on their RTC ID
 23 |     var rtcLookup: [UInt: String] { get set }
    |         `- note: 'rtcLookup' declared here
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:105:16: warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
105 |     public var rtmLookup: [String: Codable] = [:]
    |                `- warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
106 |
107 |     public internal(set) var customCamera: AgoraCameraSourcePush?
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:25:9: note: 'rtmLookup' declared here
 23 |     var rtcLookup: [UInt: String] { get set }
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
    |         `- note: 'rtmLookup' declared here
 26 |
 27 |     /// Delegate used for RTM
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:165:16: warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
163 |         self.delegate?.rtmChannelJoined(name: name, channel: channel, code: code)
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
    |                `- warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:28:9: note: 'rtmDelegate' declared here
 26 |
 27 |     /// Delegate used for RTM
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
    |         `- note: 'rtmDelegate' declared here
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:166:16: warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
    |                `- warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
168 |         self.sendPersonalData(to: member.userId)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:30:9: note: 'rtmChannelDelegate' declared here
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
    |         `- note: 'rtmChannelDelegate' declared here
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:143:16: warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
141 |
142 |     /// Agora Real-time Messaging Identifier (Agora RTM SDK).
143 |     public var rtmId: String { self.connectionData.rtmId }
    |                `- warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:32:9: note: 'rtmId' declared here
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
    |         `- note: 'rtmId' declared here
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:145:16: warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
143 |     public var rtmId: String { self.connectionData.rtmId }
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
    |                `- warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:34:9: note: 'rtcId' declared here
 32 |     var rtmId: String { get }
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
    |         `- note: 'rtcId' declared here
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:147:16: warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
    |                `- warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:36:9: note: 'appId' declared here
 34 |     var rtcId: UInt? { get }
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
    |         `- note: 'appId' declared here
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:149:16: warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
147 |     public var appId: String { self.connectionData.appId }
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
    |                `- warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
150 |         get { self.connectionData.rtmToken }
151 |         set { self.connectionData.rtmToken = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:38:9: note: 'rtmToken' declared here
 36 |     var appId: String { get }
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
    |         `- note: 'rtmToken' declared here
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:345:31: warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
343 |
344 |     /// Used by storyboard to set the AgoraSettings tokenURL
345 |     @IBInspectable public var tokenURL: String? {
    |                               `- warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
346 |         get { self.agoraSettings.tokenURL }
347 |         set {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:40:9: note: 'tokenURL' declared here
 38 |     var rtmToken: String? { get set }
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
    |         `- note: 'tokenURL' declared here
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:167:17: warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
    |                 |- warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'channel(_:memberJoined:)' to make this instance method not isolated to the actor
168 |         self.sendPersonalData(to: member.userId)
169 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:41:10: note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
    |          `- note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
 43 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:95:17: warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 93 |     ///   - message: Incoming RTM message.
 94 |     ///   - peerId: Id of the peer this message is coming from
 95 |     public func decodeMessage(message: AgoraRtmMessage, from peerId: String) {
    |                 |- warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'decodeMessage(message:from:)' to make this instance method not isolated to the actor
 96 |         var messageData: Data!
 97 |         if let message = message as? AgoraRtmRawMessage {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:46:10: note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 44 |     ///   - message: Message received from RTM
 45 |     ///   - peerId: ID of the user who sent the message
 46 |     func decodeMessage(message: AgoraRtmMessage, from peerId: String)
    |          `- note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 47 |     /// State of the RTM Controller has changed
 48 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:87:17: warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
 86 |
 87 |     public func rtmStateChanged(
    |                 |- warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmStateChanged(from:to:)' to make this instance method not isolated to the actor
 88 |         from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus
 89 |     ) { self.delegate?.rtmStateChanged(from: oldState, to: newState) }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:51:10: note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 49 |     ///   - oldState: Previous state of AgoraRtmController
 50 |     ///   - newState: New state of AgoraRtmController
 51 |     func rtmStateChanged(from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus)
    |          `- note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 52 | }
 53 |
[40/48] Compiling AgoraUIKit AgoraUIKit+AgoraRtmController+MuteRequests.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:157:17: warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 83 | import AgoraRtmControl
 84 |
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
    |                             `- note: add '@preconcurrency' to the 'RtmControllerDelegate' conformance to defer isolation checking to run time
 86 |
 87 |     public func rtmStateChanged(
    :
155 |         self.delegate?.incomingPongRequest(from: peerId)
156 |     }
157 |     public func rtmChannelJoined(
    |                 |- warning: main actor-isolated instance method 'rtmChannelJoined(name:channel:code:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmChannelJoined(name:channel:code:)' to make this instance method not isolated to the actor
158 |         name: String, channel: AgoraRtmChannel, code: AgoraRtmJoinChannelErrorCode
159 |     ) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:17:10: note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 15 |     ///   - channel: instance of joined `AgoraRtmChannel`
 16 |     ///   - code: Error codes related to joining a channel.
 17 |     func rtmChannelJoined(
    |          `- note: mark the protocol requirement 'rtmChannelJoined(name:channel:code:)' 'async' to allow actor-isolated conformances
 18 |         name: String, channel: AgoraRtmChannel,
 19 |         code: AgoraRtmJoinChannelErrorCode
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:104:16: warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
102 | open class AgoraVideoViewer: MPView, SingleVideoViewDelegate {
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
    |                `- warning: main actor-isolated property 'rtcLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
105 |     public var rtmLookup: [String: Codable] = [:]
106 |
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:23:9: note: 'rtcLookup' declared here
 21 |
 22 |     /// Lookup remote user RTM ID based on their RTC ID
 23 |     var rtcLookup: [UInt: String] { get set }
    |         `- note: 'rtcLookup' declared here
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:105:16: warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
103 |
104 |     public var rtcLookup: [UInt: String] = [:]
105 |     public var rtmLookup: [String: Codable] = [:]
    |                `- warning: main actor-isolated property 'rtmLookup' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
106 |
107 |     public internal(set) var customCamera: AgoraCameraSourcePush?
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:25:9: note: 'rtmLookup' declared here
 23 |     var rtcLookup: [UInt: String] { get set }
 24 |     /// Get remote user data from their RTM ID
 25 |     var rtmLookup: [String: Codable] { get set }
    |         `- note: 'rtmLookup' declared here
 26 |
 27 |     /// Delegate used for RTM
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:165:16: warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
163 |         self.delegate?.rtmChannelJoined(name: name, channel: channel, code: code)
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
    |                `- warning: main actor-isolated property 'rtmDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:28:9: note: 'rtmDelegate' declared here
 26 |
 27 |     /// Delegate used for RTM
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
    |         `- note: 'rtmDelegate' declared here
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:166:16: warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
164 |     }
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
    |                `- warning: main actor-isolated property 'rtmChannelDelegate' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
168 |         self.sendPersonalData(to: member.userId)
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:30:9: note: 'rtmChannelDelegate' declared here
 28 |     var rtmDelegate: AgoraRtmDelegate? { get }
 29 |     /// Delegate used for RTM channel messages
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
    |         `- note: 'rtmChannelDelegate' declared here
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:143:16: warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
141 |
142 |     /// Agora Real-time Messaging Identifier (Agora RTM SDK).
143 |     public var rtmId: String { self.connectionData.rtmId }
    |                `- warning: main actor-isolated property 'rtmId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:32:9: note: 'rtmId' declared here
 30 |     var rtmChannelDelegate: AgoraRtmChannelDelegate? { get }
 31 |     /// ID used by RTM
 32 |     var rtmId: String { get }
    |         `- note: 'rtmId' declared here
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:145:16: warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
143 |     public var rtmId: String { self.connectionData.rtmId }
144 |     /// Agora Real-time Communication Identifier (Agora Video/Audio SDK).
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
    |                `- warning: main actor-isolated property 'rtcId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:34:9: note: 'rtcId' declared here
 32 |     var rtmId: String { get }
 33 |     /// ID used by RTC
 34 |     var rtcId: UInt? { get }
    |         `- note: 'rtcId' declared here
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:147:16: warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
145 |     public var rtcId: UInt? { self.connectionData.rtcId }
146 |     /// Agora App ID from https://agora.io
147 |     public var appId: String { self.connectionData.appId }
    |                `- warning: main actor-isolated property 'appId' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:36:9: note: 'appId' declared here
 34 |     var rtcId: UInt? { get }
 35 |     /// App ID used, found on console.agora.io
 36 |     var appId: String { get }
    |         `- note: 'appId' declared here
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:149:16: warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
147 |     public var appId: String { self.connectionData.appId }
148 |     /// Token to be used to connect to a RTM channel, can be nil.
149 |     public var rtmToken: String? {
    |                `- warning: main actor-isolated property 'rtmToken' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
150 |         get { self.connectionData.rtmToken }
151 |         set { self.connectionData.rtmToken = newValue }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:38:9: note: 'rtmToken' declared here
 36 |     var appId: String { get }
 37 |     /// Token to connect to Agora RTM
 38 |     var rtmToken: String? { get set }
    |         `- note: 'rtmToken' declared here
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer.swift:345:31: warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
343 |
344 |     /// Used by storyboard to set the AgoraSettings tokenURL
345 |     @IBInspectable public var tokenURL: String? {
    |                               `- warning: main actor-isolated property 'tokenURL' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
346 |         get { self.agoraSettings.tokenURL }
347 |         set {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:40:9: note: 'tokenURL' declared here
 38 |     var rtmToken: String? { get set }
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
    |         `- note: 'tokenURL' declared here
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:167:17: warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
165 |     public var rtmDelegate: AgoraRtmDelegate? { self.agoraSettings.rtmDelegate }
166 |     public var rtmChannelDelegate: AgoraRtmChannelDelegate? { self.agoraSettings.rtmChannelDelegate }
167 |     public func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember) {
    |                 |- warning: main actor-isolated instance method 'channel(_:memberJoined:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'channel(_:memberJoined:)' to make this instance method not isolated to the actor
168 |         self.sendPersonalData(to: member.userId)
169 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:41:10: note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 39 |     /// URL for fetching Agora RTM tokens
 40 |     var tokenURL: String? { get set }
 41 |     func channel(_ channel: AgoraRtmChannel, memberJoined member: AgoraRtmMember)
    |          `- note: mark the protocol requirement 'channel(_:memberJoined:)' 'async' to allow actor-isolated conformances
 42 |     /// Method to catch messages incoming from RTM, used to decode them and run any relevant actions
 43 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:95:17: warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 93 |     ///   - message: Incoming RTM message.
 94 |     ///   - peerId: Id of the peer this message is coming from
 95 |     public func decodeMessage(message: AgoraRtmMessage, from peerId: String) {
    |                 |- warning: main actor-isolated instance method 'decodeMessage(message:from:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'decodeMessage(message:from:)' to make this instance method not isolated to the actor
 96 |         var messageData: Data!
 97 |         if let message = message as? AgoraRtmRawMessage {
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:46:10: note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 44 |     ///   - message: Message received from RTM
 45 |     ///   - peerId: ID of the user who sent the message
 46 |     func decodeMessage(message: AgoraRtmMessage, from peerId: String)
    |          `- note: mark the protocol requirement 'decodeMessage(message:from:)' 'async' to allow actor-isolated conformances
 47 |     /// State of the RTM Controller has changed
 48 |     /// - Parameters:
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraUIKit+AgoraRtmController+Extensions.swift:87:17: warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
 85 | extension AgoraVideoViewer: RtmControllerDelegate {
 86 |
 87 |     public func rtmStateChanged(
    |                 |- warning: main actor-isolated instance method 'rtmStateChanged(from:to:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
    |                 `- note: add 'nonisolated' to 'rtmStateChanged(from:to:)' to make this instance method not isolated to the actor
 88 |         from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus
 89 |     ) { self.delegate?.rtmStateChanged(from: oldState, to: newState) }
/Users/admin/builder/spi-builder-workspace/Sources/AgoraRtmControl/AgoraRtmController.swift:51:10: note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 49 |     ///   - oldState: Previous state of AgoraRtmController
 50 |     ///   - newState: New state of AgoraRtmController
 51 |     func rtmStateChanged(from oldState: AgoraRtmController.RTMStatus, to newState: AgoraRtmController.RTMStatus)
    |          `- note: mark the protocol requirement 'rtmStateChanged(from:to:)' 'async' to allow actor-isolated conformances
 52 | }
 53 |
[41/48] Compiling AgoraUIKit AgoraSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:40:27: warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
    |                           |- warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'cameraButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:42:27: warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
    |                           |- warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'micButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:44:27: warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
    |                           |- warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'flipButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:47:27: warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
 47 |         public static let beautifyButton = BuiltinButtons(rawValue: 1 << 3)
    |                           |- warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'beautifyButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:50:27: warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
    |                           |- warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'screenShareButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:52:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
    |                           |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |         /// Initialiser for creating an option set
 54 |         /// - Parameter rawValue: Raw value to be applied, used for choosing the button options
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:85:27: warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    |                           |- warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allTrue' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 86 |             ExternalVideoSettings(enabled: true, texture: true, encoded: true)
 87 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:89:27: warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    :
 87 |         }()
 88 |         /// Create instance with all properties set to `false`
 89 |         public static let allFalse: ExternalVideoSettings = {
    |                           |- warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allFalse' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 90 |             ExternalVideoSettings(enabled: false, texture: false, encoded: false)
 91 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:213:16: warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
211 |     #elseif os(macOS)
212 |     /// Font size of the builtin buttons SF Symbol text
213 |     static var buttonIconSize: CGFloat = 20
    |                |- warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'buttonIconSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'buttonIconSize' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
214 |     #endif
215 |
[42/48] Compiling AgoraUIKit AgoraSingleVideoView+RtmDelegate.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:40:27: warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
    |                           |- warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'cameraButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:42:27: warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
    |                           |- warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'micButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:44:27: warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
    |                           |- warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'flipButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:47:27: warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
 47 |         public static let beautifyButton = BuiltinButtons(rawValue: 1 << 3)
    |                           |- warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'beautifyButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:50:27: warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
    |                           |- warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'screenShareButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:52:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
    |                           |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |         /// Initialiser for creating an option set
 54 |         /// - Parameter rawValue: Raw value to be applied, used for choosing the button options
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:85:27: warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    |                           |- warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allTrue' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 86 |             ExternalVideoSettings(enabled: true, texture: true, encoded: true)
 87 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:89:27: warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    :
 87 |         }()
 88 |         /// Create instance with all properties set to `false`
 89 |         public static let allFalse: ExternalVideoSettings = {
    |                           |- warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allFalse' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 90 |             ExternalVideoSettings(enabled: false, texture: false, encoded: false)
 91 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:213:16: warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
211 |     #elseif os(macOS)
212 |     /// Font size of the builtin buttons SF Symbol text
213 |     static var buttonIconSize: CGFloat = 20
    |                |- warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'buttonIconSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'buttonIconSize' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
214 |     #endif
215 |
[43/48] Compiling AgoraUIKit AgoraSingleVideoView+RtmOptions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:40:27: warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
    |                           |- warning: static property 'cameraButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'cameraButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:42:27: warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
 40 |         public static let cameraButton = BuiltinButtons(rawValue: 1 << 0)
 41 |         /// Option for displaying a button to toggle the microphone on or off.
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
    |                           |- warning: static property 'micButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'micButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:44:27: warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 42 |         public static let micButton = BuiltinButtons(rawValue: 1 << 1)
 43 |         /// Option for displaying a button to flip the camera between front and rear facing.
 44 |         public static let flipButton = BuiltinButtons(rawValue: 1 << 2)
    |                           |- warning: static property 'flipButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'flipButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:47:27: warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 45 |         /// Option for displaying a button to toggle beautify feature on or off.
 46 |         /// This button will be hidden by default, as extra libraries are required.
 47 |         public static let beautifyButton = BuiltinButtons(rawValue: 1 << 3)
    |                           |- warning: static property 'beautifyButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'beautifyButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:50:27: warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 48 |         /// Option for displaying screenshare button. This button is available for macOS only.
 49 |         /// iOS screen sharing must be implemented using `RPSystemBroadcastPickerView`.
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
    |                           |- warning: static property 'screenShareButton' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'screenShareButton' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:52:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
 35 |     public var tokenURL: String?
 36 |     /// OptionSet for selecting which buttons are visible in the AgoraVideoViewer
 37 |     public struct BuiltinButtons: OptionSet {
    |                   `- note: consider making struct 'BuiltinButtons' conform to the 'Sendable' protocol
 38 |         public var rawValue: Int
 39 |         /// Option for displaying a button to toggle the camera on or off.
    :
 50 |         public static let screenShareButton = BuiltinButtons(rawValue: 1 << 4)
 51 |         /// Option to display all default buttons
 52 |         public static let all: BuiltinButtons = [cameraButton, micButton, flipButton, screenShareButton]
    |                           |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.BuiltinButtons' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'all' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 53 |         /// Initialiser for creating an option set
 54 |         /// - Parameter rawValue: Raw value to be applied, used for choosing the button options
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:85:27: warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    |                           |- warning: static property 'allTrue' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allTrue' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 86 |             ExternalVideoSettings(enabled: true, texture: true, encoded: true)
 87 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:89:27: warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
 81 |
 82 |     /// Settings for applying external videos
 83 |     public struct ExternalVideoSettings {
    |                   `- note: consider making struct 'ExternalVideoSettings' conform to the 'Sendable' protocol
 84 |         /// Create instance with all properties set to `true`
 85 |         public static let allTrue: ExternalVideoSettings = {
    :
 87 |         }()
 88 |         /// Create instance with all properties set to `false`
 89 |         public static let allFalse: ExternalVideoSettings = {
    |                           |- warning: static property 'allFalse' is not concurrency-safe because non-'Sendable' type 'AgoraSettings.ExternalVideoSettings' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'allFalse' with '@MainActor' if property should only be accessed from the main actor
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 90 |             ExternalVideoSettings(enabled: false, texture: false, encoded: false)
 91 |         }()
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:213:16: warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
211 |     #elseif os(macOS)
212 |     /// Font size of the builtin buttons SF Symbol text
213 |     static var buttonIconSize: CGFloat = 20
    |                |- warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'buttonIconSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'buttonIconSize' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
214 |     #endif
215 |
[44/48] Compiling AgoraUIKit AgoraVideoViewer+Permissions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Token.swift:51:21: warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
49 |             guard let data = data else {
50 |                 if let err = err {
51 |                     callback(.failure(err))
   |                     |- warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 |                 } else {
53 |                     callback(.failure(TokenError.noData))
[45/48] Compiling AgoraUIKit AgoraVideoViewer+RtcEngineDelegateOverflow.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Token.swift:51:21: warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
49 |             guard let data = data else {
50 |                 if let err = err {
51 |                     callback(.failure(err))
   |                     |- warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 |                 } else {
53 |                     callback(.failure(TokenError.noData))
[46/48] Compiling AgoraUIKit AgoraVideoViewer+Token.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraVideoViewer+Token.swift:51:21: warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
49 |             guard let data = data else {
50 |                 if let err = err {
51 |                     callback(.failure(err))
   |                     |- warning: capture of 'callback' with non-sendable type '(Result<String, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
52 |                 } else {
53 |                     callback(.failure(TokenError.noData))
[47/48] Compiling AgoraUIKit UIButton+Extensions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:213:16: warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
211 |     #elseif os(macOS)
212 |     /// Font size of the builtin buttons SF Symbol text
213 |     static var buttonIconSize: CGFloat = 20
    |                |- warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'buttonIconSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'buttonIconSize' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
214 |     #endif
215 |
[48/48] Compiling AgoraUIKit iOS+macOS+typealiases.swift
/Users/admin/builder/spi-builder-workspace/Sources/Agora-Video-UIKit/AgoraSettings.swift:213:16: warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
211 |     #elseif os(macOS)
212 |     /// Font size of the builtin buttons SF Symbol text
213 |     static var buttonIconSize: CGFloat = 20
    |                |- warning: static property 'buttonIconSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'buttonIconSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'buttonIconSize' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
214 |     #endif
215 |
Build complete! (14.82s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "agorartcengine_macos",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.1.0",
            "upper_bound" : "4.2.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/AgoraIO/AgoraRtcEngine_macOS"
    },
    {
      "identity" : "agorartm_macos",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.5.1",
            "upper_bound" : "1.6.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/AgoraIO/AgoraRtm_macOS"
    }
  ],
  "manifest_display_name" : "AgoraUIKit_macOS",
  "name" : "AgoraUIKit_macOS",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "AgoraUIKit",
      "targets" : [
        "AgoraUIKit",
        "AgoraRtmControl"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AgoraAppGroupDataHelper",
      "targets" : [
        "AgoraAppGroupDataHelper"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AgoraUIKit_Tests",
      "module_type" : "SwiftTarget",
      "name" : "AgoraUIKit-Tests",
      "path" : "Tests/Agora-UIKit-Tests",
      "sources" : [
        "RtcEncodingTests.swift",
        "RtmMessagingTests.swift",
        "RtmUserIdHandlingTests.swift"
      ],
      "target_dependencies" : [
        "AgoraUIKit",
        "AgoraRtmControl"
      ],
      "type" : "test"
    },
    {
      "c99name" : "AgoraUIKit",
      "module_type" : "SwiftTarget",
      "name" : "AgoraUIKit",
      "path" : "Sources/Agora-Video-UIKit",
      "product_dependencies" : [
        "RtcBasic"
      ],
      "product_memberships" : [
        "AgoraUIKit"
      ],
      "sources" : [
        "AgoraCameraSourcePush.swift",
        "AgoraCollectionViewer.swift",
        "AgoraConnectionData.swift",
        "AgoraSettings.swift",
        "AgoraSingleVideoView+RtmDelegate.swift",
        "AgoraSingleVideoView+RtmOptions.swift",
        "AgoraSingleVideoView.swift",
        "AgoraUIKit+AgoraRtmController+Extensions.swift",
        "AgoraUIKit+AgoraRtmController+MuteRequests.swift",
        "AgoraUIKit+AgoraRtmController+SendHelpers.swift",
        "AgoraUIKit+MD5.swift",
        "AgoraUIKit.swift",
        "AgoraVideoViewer+AgoraExtensions.swift",
        "AgoraVideoViewer+AgoraRtcEngineDelegate.swift",
        "AgoraVideoViewer+Buttons.swift",
        "AgoraVideoViewer+JoinChannel.swift",
        "AgoraVideoViewer+LocalVideo.swift",
        "AgoraVideoViewer+Ordering.swift",
        "AgoraVideoViewer+Permissions.swift",
        "AgoraVideoViewer+RtcEngineDelegateOverflow.swift",
        "AgoraVideoViewer+Token.swift",
        "AgoraVideoViewer+Utilities.swift",
        "AgoraVideoViewer+VideoControl.swift",
        "AgoraVideoViewer.swift",
        "AgoraViewer.swift",
        "UIButton+Extensions.swift",
        "iOS+macOS+typealiases.swift"
      ],
      "target_dependencies" : [
        "AgoraRtmControl"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AgoraRtmControl",
      "module_type" : "SwiftTarget",
      "name" : "AgoraRtmControl",
      "path" : "Sources/AgoraRtmControl",
      "product_dependencies" : [
        "AgoraRtmKit"
      ],
      "product_memberships" : [
        "AgoraUIKit"
      ],
      "sources" : [
        "AgoraRtmController+AgoraRtmDelegate.swift",
        "AgoraRtmController+MuteRequests.swift",
        "AgoraRtmController+RtmDelegateOverflows.swift",
        "AgoraRtmController+SendHelpers.swift",
        "AgoraRtmController+Tokens.swift",
        "AgoraRtmController.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AgoraAppGroupDataHelper",
      "module_type" : "SwiftTarget",
      "name" : "AgoraAppGroupDataHelper",
      "path" : "Sources/AgoraAppGroupDataHelper",
      "product_memberships" : [
        "AgoraAppGroupDataHelper"
      ],
      "sources" : [
        "AgoraAppGroupDataHelper.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/agoraio-community/videouikit-macos/4.0.6
Repository:               AgoraIO-Community/VideoUIKit-macOS
Swift version used:       6.0
Target:                   AgoraUIKit
Extracting symbol information for 'AgoraUIKit'...
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/AgoraIO/AgoraRtcEngine_macOS
Updated https://github.com/AgoraIO/AgoraRtcEngine_macOS (0.46s)
[1/2038] Fetching swift-docc-plugin
Updating https://github.com/AgoraIO/AgoraRtm_macOS
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.30s)
Updated https://github.com/AgoraIO/AgoraRtm_macOS (0.46s)
Computing version for https://github.com/AgoraIO/AgoraRtm_macOS
Computed https://github.com/AgoraIO/AgoraRtm_macOS at 1.5.1 (0.64s)
Computing version for https://github.com/AgoraIO/AgoraRtcEngine_macOS
Computed https://github.com/AgoraIO/AgoraRtcEngine_macOS at 4.1.1 (0.03s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.66s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3153] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.28s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.70s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[2/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling Snippets SnippetParser.swift
[8/57] Emitting module Snippets
[9/57] Compiling Snippets Snippet.swift
[10/57] Compiling SymbolKit DeclarationFragments.swift
[11/57] Compiling SymbolKit Fragment.swift
[12/57] Compiling SymbolKit FragmentKind.swift
[13/57] Compiling SymbolKit FunctionParameter.swift
[14/57] Compiling SymbolKit FunctionSignature.swift
[15/57] Compiling SymbolKit SemanticVersion.swift
[16/57] Compiling SymbolKit AccessControl.swift
[17/57] Compiling SymbolKit Availability.swift
[18/57] Compiling SymbolKit AvailabilityItem.swift
[19/57] Compiling SymbolKit Domain.swift
[20/57] Compiling SymbolKit Identifier.swift
[21/57] Compiling SymbolKit KindIdentifier.swift
[22/57] Compiling SymbolKit Location.swift
[23/57] Compiling SymbolKit Mutability.swift
[24/57] Compiling SymbolKit SourceRange.swift
[25/57] Compiling SymbolKit Metadata.swift
[26/57] Compiling SymbolKit Module.swift
[27/57] Compiling SymbolKit OperatingSystem.swift
[28/57] Compiling SymbolKit Platform.swift
[29/57] Compiling SymbolKit Names.swift
[30/57] Compiling SymbolKit SPI.swift
[31/57] Compiling SymbolKit Snippet.swift
[32/57] Compiling SymbolKit Extension.swift
[33/57] Compiling SymbolKit GenericConstraint.swift
[34/57] Compiling SymbolKit GenericParameter.swift
[35/57] Compiling SymbolKit Generics.swift
[36/57] Compiling SymbolKit Namespace.swift
[37/57] Compiling SymbolKit Symbol.swift
[38/57] Compiling SymbolKit SymbolKind.swift
[39/57] Compiling SymbolKit SymbolGraph.swift
[40/57] Compiling SymbolKit GraphCollector.swift
[41/57] Compiling SymbolKit Relationship.swift
[42/57] Compiling SymbolKit RelationshipKind.swift
[43/57] Compiling SymbolKit SourceOrigin.swift
[44/57] Compiling SymbolKit GenericConstraints.swift
[45/57] Compiling SymbolKit Swift.swift
[46/57] Compiling SymbolKit Mixin+Equals.swift
[47/57] Compiling SymbolKit Mixin+Hash.swift
[48/57] Compiling SymbolKit Mixin.swift
[49/57] Compiling SymbolKit LineList.swift
[50/57] Compiling SymbolKit Position.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SnippetBuildCommand.swift
[57/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[58/61] Emitting module snippet_extract
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.40s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/8] Compiling AgoraRtmControl AgoraRtmController+SendHelpers.swift
[3/8] Compiling AgoraRtmControl AgoraRtmController+RtmDelegateOverflows.swift
[4/8] Compiling AgoraRtmControl AgoraRtmController+MuteRequests.swift
[5/8] Emitting module AgoraRtmControl
[6/8] Compiling AgoraRtmControl AgoraRtmController+AgoraRtmDelegate.swift
[7/8] Compiling AgoraRtmControl AgoraRtmController+Tokens.swift
[8/8] Compiling AgoraRtmControl AgoraRtmController.swift
[9/34] Compiling AgoraUIKit AgoraVideoViewer+Utilities.swift
[10/34] Compiling AgoraUIKit AgoraVideoViewer+VideoControl.swift
[11/36] Compiling AgoraUIKit AgoraVideoViewer.swift
[12/36] Compiling AgoraUIKit AgoraViewer.swift
[13/36] Compiling AgoraUIKit AgoraUIKit+AgoraRtmController+SendHelpers.swift
[14/36] Compiling AgoraUIKit AgoraUIKit+MD5.swift
[15/36] Compiling AgoraUIKit AgoraUIKit.swift
[16/36] Compiling AgoraUIKit AgoraVideoViewer+Permissions.swift
[17/36] Compiling AgoraUIKit AgoraVideoViewer+RtcEngineDelegateOverflow.swift
[18/36] Compiling AgoraUIKit AgoraVideoViewer+Token.swift
[19/36] Compiling AgoraUIKit AgoraCameraSourcePush.swift
[20/36] Compiling AgoraUIKit AgoraCollectionViewer.swift
[21/36] Compiling AgoraUIKit AgoraConnectionData.swift
[22/36] Compiling AgoraUIKit AgoraVideoViewer+JoinChannel.swift
[23/36] Compiling AgoraUIKit AgoraVideoViewer+LocalVideo.swift
[24/36] Compiling AgoraUIKit AgoraVideoViewer+Ordering.swift
[25/36] Compiling AgoraUIKit AgoraSettings.swift
[26/36] Compiling AgoraUIKit AgoraSingleVideoView+RtmDelegate.swift
[27/36] Compiling AgoraUIKit AgoraSingleVideoView+RtmOptions.swift
[28/36] Emitting module AgoraUIKit
[29/36] Compiling AgoraUIKit AgoraVideoViewer+AgoraExtensions.swift
[30/36] Compiling AgoraUIKit AgoraVideoViewer+AgoraRtcEngineDelegate.swift
[31/36] Compiling AgoraUIKit AgoraVideoViewer+Buttons.swift
[32/36] Compiling AgoraUIKit AgoraSingleVideoView.swift
[33/36] Compiling AgoraUIKit AgoraUIKit+AgoraRtmController+Extensions.swift
[34/36] Compiling AgoraUIKit AgoraUIKit+AgoraRtmController+MuteRequests.swift
[35/36] Compiling AgoraUIKit UIButton+Extensions.swift
[36/36] Compiling AgoraUIKit iOS+macOS+typealiases.swift
Build of target: 'AgoraUIKit' complete! (2.28s)
error: unspecified("terminated(1): /Applications/Xcode-16.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-symbolgraph-extract -sdk /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.1.sdk -F /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -I /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/av1/av1.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/av1/av1.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraSoundTouch/AgoraSoundTouch.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraSoundTouch/AgoraSoundTouch.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agoraffmpeg/Agoraffmpeg.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agoraffmpeg/Agoraffmpeg.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agorafdkaac/Agorafdkaac.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agorafdkaac/Agorafdkaac.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraDav1d/AgoraDav1d.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraDav1d/AgoraDav1d.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraRtcKit/AgoraRtcKit.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraRtcKit/AgoraRtcKit.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartm_macos/AgoraRtmKit/AgoraRtmKit.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartm_macos/AgoraRtmKit/AgoraRtmKit.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Modules -module-name AgoraUIKit -target arm64-apple-macosx10.15 -module-cache-path /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/ModuleCache -minimum-access-level public -skip-inherited-docs -emit-extension-block-symbols -output-dir /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/extracted-symbols/spi-builder-workspace/AgoraUIKit output:\n    <unknown>:0: error: missing required module \'AgoraRtmKit\'\n    Error: Failed to load the module \'AgoraUIKit\'. Are you missing build dependencies or include/framework directories?\n    See the previous error messages for details. Aborting.\n    ")
Extracting symbol information for 'AgoraUIKit'...
Building for debugging...
[0/3] Write swift-version--7754E27361AE5C74.txt
Build of product 'snippet-extract' complete! (0.19s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
Build of target: 'AgoraUIKit' complete! (0.39s)
error: unspecified("terminated(1): /Applications/Xcode-16.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-symbolgraph-extract -sdk /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.1.sdk -F /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -I /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -L /Applications/Xcode-16.1.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/av1/av1.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/av1/av1.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraSoundTouch/AgoraSoundTouch.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraSoundTouch/AgoraSoundTouch.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agoraffmpeg/Agoraffmpeg.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agoraffmpeg/Agoraffmpeg.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agorafdkaac/Agorafdkaac.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/Agorafdkaac/Agorafdkaac.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraDav1d/AgoraDav1d.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraDav1d/AgoraDav1d.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraRtcKit/AgoraRtcKit.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartcengine_macos/AgoraRtcKit/AgoraRtcKit.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartm_macos/AgoraRtmKit/AgoraRtmKit.xcframework/macos-arm64_x86_64 -Xcc -I -Xcc /Users/admin/builder/spi-builder-workspace/.build/artifacts/agorartm_macos/AgoraRtmKit/AgoraRtmKit.xcframework/macos-arm64_x86_64 -I /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/Modules -module-name AgoraUIKit -target arm64-apple-macosx10.15 -module-cache-path /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/debug/ModuleCache -minimum-access-level public -skip-inherited-docs -emit-extension-block-symbols -output-dir /Users/admin/builder/spi-builder-workspace/.build/arm64-apple-macosx/extracted-symbols/spi-builder-workspace/AgoraUIKit output:\n    <unknown>:0: error: missing required module \'AgoraRtmKit\'\n    Error: Failed to load the module \'AgoraUIKit\'. Are you missing build dependencies or include/framework directories?\n    See the previous error messages for details. Aborting.\n    ")
Error while generating docs: retryLimitExceeded(lastError: Optional(Shell command failed:
    env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift package --allow-writing-to-directory .docs/agoraio-community/videouikit-macos/4.0.6 generate-documentation --emit-digest --disable-indexing --output-path .docs/agoraio-community/videouikit-macos/4.0.6 --hosting-base-path agoraio-community/videouikit-macos/4.0.6 --source-service github --source-service-base-url https://github.com/AgoraIO-Community/VideoUIKit-macOS/blob/4.0.6 --checkout-path $PWD --target AgoraUIKit))
✅  Doc result (failed) reported
Done.